From f6b7e08a51f5814b36b4cc255c6ebe343e1dd7cc Mon Sep 17 00:00:00 2001 From: David Beniamine <david.beniamine@imag.fr> Date: Wed, 22 Feb 2017 13:42:26 +0100 Subject: [PATCH] Add licences and french dictionnaries --- Licence.txt | 661 +++ Readme.md | 15 +- data/Prenoms.txt | 11627 ++++++++++++++++++++++++++++++++++++++++++++ src/console.py | 18 + src/css/style.css | 149 + src/img/tl.png | Bin 0 -> 47186 bytes src/index.py | 28 +- src/server.py | 18 + src/style.css | 149 + src/test_pass.py | 18 + 10 files changed, 12677 insertions(+), 6 deletions(-) create mode 100644 Licence.txt create mode 100644 data/Prenoms.txt create mode 100644 src/css/style.css create mode 100644 src/img/tl.png create mode 100644 src/style.css diff --git a/Licence.txt b/Licence.txt new file mode 100644 index 0000000..dba13ed --- /dev/null +++ b/Licence.txt @@ -0,0 +1,661 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + <one line to give the program's name and a brief idea of what it does.> + Copyright (C) <year> <name of author> + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + +Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +<http://www.gnu.org/licenses/>. diff --git a/Readme.md b/Readme.md index b911c31..752760f 100644 --- a/Readme.md +++ b/Readme.md @@ -2,10 +2,19 @@ + [ ] Nom + [ ] Readme -+ [ ] Licence AGPL ++ [X] Licence AGPL ++ [ ] CSS ++ [ ] Logo + [ ] Dictionnaires: + [X] Francais - + [ ] Noms - + [ ] Films et livres + + [X] Noms + [ ] Packages + [ ] Installeur + +## Licence + +AGPL + +Corpus: +Base lexical libre +http://www.lexique.org/listes/liste_mots.php diff --git a/data/Prenoms.txt b/data/Prenoms.txt new file mode 100644 index 0000000..44ad58a --- /dev/null +++ b/data/Prenoms.txt @@ -0,0 +1,11627 @@ +les +elle +sans +france +mort +sens +bras +paris +bas +rue +sera +pris +ville +ciel +beau +ah +pierre +travers +art +tel +juste +belle +demi +julien +olivier +marie +henri +aura +blanche +signe +ami +simon +louis +an +jacques +charles +chance +cher +lois +unique +paul +avis +mari +rose +porter +philippe +vin +jeunesse +victoire +joseph +robert +su +prince +roman +justice +nicolas +monte +page +aimé +roger +claire +don +thomas +david +maurice +salut +antoine +anne +io +louise +ben +lambert +marine +mai +claude +essence +victor +reine +georges +virginie +venus +fortune +pascal +christ +amie +trace +donna +fleur +michel +mars +andré +armand +vienne +françois +marcel +lalla +york +martin +solange +avril +laurent +jolie +marguerite +albert +johanna +suzanne +paule +pandora +lucien +adam +temple +adèle +miracle +gabriel +catherine +lien +gilbert +olga +césar +thérèse +modeste +lance +alger +lourdes +patience +sage +vincent +jérôme +duc +vanessa +major +nadine +marin +rosa +luc +auguste +alain +hélène +françoise +ludo +lili +agathe +tue +royal +bernard +marc +noble +lewis +berlin +ira +lucie +raymond +harmonie +clara +patricia +franc +prudence +hall +wolf +rené +jo +alexandre +constant +gabrielle +jure +arthur +cristal +washington +sylvie +rufus +monta +urbain +gosse +marge +loup +julie +germain +madeleine +juliette +charlotte +bertrand +lucile +leni +adélaïde +inès +romain +guillaume +carlos +léon +geneviève +jeanne +charlie +alby +anna +maria +aimée +laura +josette +marthe +san +francis +édouard +jarrett +christophe +royale +betty +max +mathias +lis +romaine +nancy +hugo +céleste +george +yvonne +nicole +émile +manuel +carmen +véronique +franck +robin +régis +om +daisy +aurore +malin +john +daniel +innocent +franco +lorraine +re +cadence +étienne +nathalie +werner +serge +hervé +henry +alice +pat +joyce +lola +irma +florence +vi +brian +gaston +fred +antoinette +samuel +arnaud +annie +roosevelt +sarah +sigrid +lasse +king +patrick +marco +liv +diane +jessica +bill +ravi +gilles +engin +violet +dora +mette +achille +séverin +juan +jenny +denis +benjamin +sophie +ali +marino +stéphane +anita +perle +lisa +violette +nathan +désiré +alphonse +rosette +javier +clarisse +béatrice +brin +gérard +isabelle +frédéric +jeannot +fernand +lise +ursula +dona +platon +dominique +eugène +pedro +marquis +bob +timothée +lucienne +karl +jérémie +richard +james +félix +caprice +al +constance +roland +michèle +christine +amaury +archibald +renard +clément +berthe +lucille +angel +winston +mary +ernest +sybil +hubert +sam +stepan +rachel +nana +gustave +aude +adrien +william +raphaël +eugenio +eden +rosita +wilson +milan +bride +alonso +atalanta +laure +djamila +augustus +maxwell +monique +carole +vitale +valéry +hector +bart +xavier +newton +augustin +natale +mimi +frédérique +alix +raoul +marquise +mat +varvara +martha +guy +roc +alexandrie +elsa +cécile +mo +gilberte +alfred +honoré +rudolf +francine +bile +brigitte +abel +thierry +germaine +sébastien +jack +iris +otto +eddie +anatole +carlo +anton +hilaire +ferdinand +dante +hermann +gloria +fabia +isaac +jeannette +aurélie +luis +camille +sabine +élodie +christian +baptiste +rita +jami +arn +orlando +mignon +mathilde +chantal +val +jacob +chanté +vida +paulo +werther +lin +ana +odette +julia +joséphine +aldo +jupiter +hamid +fabrizio +lulu +lazare +giselle +marceline +caroline +rio +renée +ida +hero +billy +olive +gage +léonard +tristan +nestor +atlas +claudine +da +apollinaire +joël +eugénie +tam +mariette +albertine +maris +bruno +sandra +damien +beaumont +perce +pauline +darwin +aida +agnès +star +maxime +jung +hortensia +rémy +marlon +grégoire +colombe +lou +hans +célia +johnny +colette +miguel +cyril +ambre +francisco +esther +fifi +fabiano +zola +gladys +tien +ra +odile +edgar +china +rodrigo +angelo +siegfried +oscar +hilbert +berthold +ram +micheline +heinrich +marty +edmond +colbert +yves +stella +barbara +young +placide +mélanie +ion +carl +mathieu +jane +clovis +aureliano +théo +oral +olympia +mercedes +terminus +orly +giovanni +marshall +li +franz +edward +abraham +tom +mohammed +maximilien +jourdain +fritz +conchita +gisèle +boris +reynaud +mario +jade +carter +virginia +mireille +fernando +dot +céline +alex +salomon +gordon +douglas +avram +julienne +farida +charlot +janine +jacqueline +herbert +geoffrey +ford +cecilia +peter +spencer +delphine +rochelle +mariella +sylvestre +spiro +léopold +désirée +turin +job +orazio +gautier +fox +dada +ahmed +walter +théodore +péter +martine +manon +love +judith +colin +clémence +paco +malika +julius +valérie +ramon +josé +hercule +frank +emmanuel +scott +rembrandt +norbert +franklin +domenica +sue +hardy +augusto +roy +ralph +ivan +augustine +salvador +pericles +normand +miles +luther +jeff +ginette +flavie +felipe +cerise +ariane +morgan +marek +ludovic +jasmin +adolf +santa +hortense +gala +deborah +judas +hamilton +élise +denise +cooper +tia +sterling +stanislas +rémi +paulette +london +gay +bastien +che +alexandra +truman +taylor +philip +hermine +hassan +gaspard +fiacre +yvette +rein +malvina +kader +jason +indigo +toussaint +dom +blaise +aloysius +russell +ernst +rollo +mica +khadija +dick +alexander +neptune +marcia +leroy +fabienne +acacia +vic +trajan +thibault +saxon +mahomet +lily +indiana +delta +piotr +peggy +nazaire +murray +héloïse +eustache +adrienne +valentin +ruth +nanette +merle +lennon +gervais +ed +constantin +river +bianca +sylviane +stuart +marina +luce +horace +fredo +diego +amen +sierra +renaud +marcello +ludwig +jim +florinda +clark +alpha +agrippa +yvon +scout +odilon +nelson +murphy +mark +hippolyte +guido +pablo +meyer +byron +set +philo +philibert +luigi +kennedy +jordan +georgette +davy +calvin +bobby +primo +lucius +jeanine +brogan +anderson +amédée +adolphe +sophia +ricardo +pau +merlin +massimo +lucas +dalton +antonio +sonia +santiago +salah +renie +phil +harry +didier +wilhelm +saule +queen +percy +oran +mike +mack +kam +janet +irène +devin +danièle +bristol +will +teresa +rosalia +luciano +isis +édith +den +della +amélie +ambroise +zeus +rut +olympe +noé +maud +linda +ares +amar +altan +stéphanie +shaw +sacha +roxane +marcella +liberty +bénédicte +vera +joe +henriette +vivienne +red +marko +lara +humphrey +giulio +durand +cristina +cayley +youssef +rosy +romane +rolland +ling +germano +cornelia +blaze +wright +rodolphe +roberto +lawrence +herschel +clifford +casimir +attila +uranus +théophile +stanley +salomé +ray +piper +mamie +mahon +ignace +ibrahim +friedrich +fanny +annette +aaron +yannis +vidal +stephen +ping +pauli +patton +paolo +orion +montgomery +mercury +may +lee +hamlet +diana +alberto +sylvain +sammy +reed +marcelle +isabel +giuseppe +florian +fernande +clarence +chanel +bella +basant +alea +zahir +vernon +timon +ruggero +olivia +nova +mendel +luna +lotus +gail +dionysos +bert +adeline +sergio +quentin +pons +per +monet +keith +juanita +gary +gabriella +fion +arnold +yasmina +talbot +mickey +kaolin +emma +didi +bradley +benvenuto +alessandro +zoé +stefan +shell +sana +roch +pearl +narcisse +irmgard +hilda +helen +giorgio +ethel +castor +rosalind +raymonde +parsifal +omar +jackie +issy +flip +duff +dorothy +dion +dimitri +cyrille +bernadette +ante +ottavio +odessa +miranda +juana +jackson +haydn +harrison +gertrude +georgia +gavin +ferrer +davis +cyrano +cadi +brandi +alpin +yoshiko +wallace +tommy +philipp +osiris +olaf +nir +molly +lewin +leila +kali +ju +jefferson +graham +francesca +fabius +dong +carla +anselme +yin +windsor +spring +igor +hussein +hudson +freddy +éva +eurydice +donald +angus +allie +vita +tito +sylvia +preston +liane +léonie +foka +enrico +cordell +basile +yale +rudi +pénélope +marilyn +lorne +kaiser +julio +harris +harold +francesco +corinne +chi +célestin +vanna +titus +palmer +hugues +gerlach +esmée +diethelm +christiane +brutus +aron +amaryllis +alma +tim +suzy +porsche +piero +nan +myriam +mohamed +marius +margot +madison +lucifer +lloyd +lia +laetitia +karyn +jude +isidore +gall +fabrice +domenico +astor +stewart +stein +ronda +rolande +munir +monroe +manu +kenya +justin +indy +grant +farid +erlend +edmund +darius +cassidy +bacchus +urs +simonetta +rosalie +rex +ramona +oswald +oliver +morton +milo +matthieu +lothar +linton +ingeborg +hyacinthe +gregory +fulton +dax +danielle +caterina +carlton +aziz +antigone +alun +agamemnon +tyr +samson +riccardo +ramsay +price +pia +othello +opaline +lorenza +lisette +leslie +humbert +gerhardt +elvis +edison +baldwin +allen +warner +vittorio +shannon +ruy +rab +nelly +mina +michelle +magnolia +junior +johann +jimmy +jerry +happy +florentin +aurèle +arlette +aristide +aphrodite +anthony +angèle +andrée +walker +sally +nunzia +natalie +justine +greta +flora +cruz +caron +atallah +aniela +anastasia +amarante +sirius +muriel +milton +melchior +margaret +lalo +jacobine +hunter +georg +craig +casey +brenda +benedict +avila +willem +sibylle +royce +praxis +pilar +pam +léontine +helmut +gaetano +émilie +dietrich +confucius +boniface +blair +bernhard +alban +wendy +valentina +santo +octavio +nils +nick +motel +michael +melville +lorenz +lester +laurel +lancelot +kelvin +joachim +harley +grenville +ena +duke +campbell +arnaude +adonis +adelina +zona +valentino +tudor +todd +sydney +moritz +lux +lucia +lothaire +lane +kipling +kent +janus +goliath +giacomo +estelle +coty +balthazar +aune +addison +wieland +soledad +russel +rosine +remo +prosper +petros +norton +mu +montserrat +mats +malone +luz +lake +india +drake +denton +conrad +claudius +cecil +can +bruce +brooklyn +bentley +baudouin +bai +axel +ariel +argus +aline +winnie +tony +tai +subira +ross +pyrrhus +perrine +parker +pancho +osman +mitchell +minh +mick +magnus +lope +léandre +kara +jonathan +gustav +granville +giancarlo +faustina +dylan +dorothée +constantine +bertram +andrew +yahweh +wanda +wallis +terra +spartacus +sofia +ocean +norma +nicol +nevada +montana +milosz +marcellin +malcolm +mackenzie +lissa +levi +leonard +laurens +kurt +ina +griffith +gratien +firmin +farouk +ester +em +elisabeth +calypso +archie +america +alter +aden +yorick +wilkie +weston +vladimir +tivoli +sibylla +ronnie +rani +ran +patrice +ninon +jesus +hiba +grace +gale +fane +ezra +erich +eric +donatien +dallas +claudia +berk +benoit +barra +antony +yseult +yolande +yngve +yan +willie +whitney +valencia +una +tyrrell +tonio +sylvester +steve +sinclair +selma +rodrigue +pen +océane +mortimer +mithra +maryvonne +marjolaine +lucky +lolita +janie +ingrid +harvey +hartmann +hale +forbes +felix +éliane +eddy +duncan +deo +christie +christi +chadwick +caligula +cain +brooks +brooke +bevin +amandine +alissa +alida +warren +ward +vicky +tierra +teddy +spiridon +sommer +sherman +romulus +rainier +pieter +paula +nino +nimbus +morris +miquel +maynard +maureen +mathis +mala +madonna +lorenzo +lon +leon +landon +kumiko +kimberley +juda +heinz +fatma +fatima +elzbieta +elizabeth +domingo +dean +conway +brandt +brandon +bolivar +bertha +bailey +aviv +asta +aria +agostino +adrian +theodor +santos +sandrine +rudolph +ruben +ru +romano +renate +rama +philon +penny +pascale +ossian +nirvana +nico +marly +marcellus +lincoln +lemmy +lan +kendall +kelly +joy +johannes +ilario +ellen +eduardo +dieudonné +dewey +derry +denys +curtis +chelsea +cassius +cary +caris +benson +beauregard +baruch +baal +alfredo +alaric +tylor +tycho +summer +stanford +sigmund +sidonie +rosalba +rolf +norman +nat +monica +mirabelle +mariano +lydie +lure +lucy +lorette +lemoine +klaus +josie +italo +iseult +irénée +hugh +honorine +hannibal +gretchen +gleb +foster +florin +etna +emerson +dag +clio +chris +chas +célestine +burt +bret +brandie +atticus +ann +angelica +ajax +yen +wesley +walther +ulrich +trinity +thornton +stefano +solon +selim +scot +roque +reid +régine +regina +rahat +radu +pete +peace +paget +oskar +osborn +mel +jaffe +isolde +ing +howell +hartley +glenn +fraser +félicie +ewa +dennis +dale +corentin +cleveland +chuck +carlotta +bram +basil +annabella +amadeo +allan +alicia +zora +zita +wendel +walt +thora +ted +tanner +silvestre +rosario +rodney +rico +ren +reginald +priam +pietro +pace +osborne +mira +media +mateo +marlowe +luisa +leopold +kiri +kiefer +jeffrey +jakob +imam +howard +horatio +hercules +helena +harlan +guadalupe +gilberto +forest +fabien +eros +erik +elena +eduard +dexter +cyrus +consuelo +christos +christmas +cass +burton +bora +blake +benedetto +barrett +austin +angela +alan +agnese +yong +winter +willy +willis +viola +vasco +urbano +tex +terence +suzette +stirling +sten +silver +sandro +sancho +ronald +romeo +roma +rocky +raya +randall +proserpine +pierce +phoenix +pepe +pallas +nikita +neil +nadja +nadir +morgane +midas +mia +melba +meg +mason +ludmilla +lotte +lillie +libby +lenz +lenard +kris +konrad +keren +keaton +kala +jorge +jeremiah +jacinthe +hosanna +hope +gill +garret +flavio +fay +emil +dinah +cordelia +corbin +cora +cilla +charnette +chang +carmel +buck +brunette +brice +bennett +aurora +aquila +anders +abdul +zohar +zé +virgilio +toinette +sven +shalom +saskia +roxy +ralf +quincey +patti +otis +noll +netta +michelangelo +marshal +margaux +marcus +maggie +magda +lydia +lorelei +liron +liber +lavena +laurie +lala +krishna +jerk +jemima +ives +irving +iman +honorius +hermione +herman +henderson +haven +hari +giordano +évariste +emily +eliot +dillon +derby +dakota +cy +cherry +chase +cathy +carson +carry +carroll +cal +brent +brava +bonaventure +blondie +blanca +bette +béla +barry +bambi +avery +astra +andreas +amanda +alfonso +alba +yolanda +wyatt +willard +wayne +walton +trudy +trinidad +toril +tate +suse +sullivan +stavros +sita +sidney +sherry +sheridan +shelley +severina +savannah +sandy +samu +rudyard +rowland +raja +rain +quique +pollux +parry +paddy +orson +nicolette +nada +myra +muir +morley +mirza +minnie +michele +matthew +leonid +kerr +josiane +jacinto +ivy +isadora +isa +ilya +horus +honora +honey +hiram +giffard +gerhard +gerald +gautama +garrett +gal +eve +era +engel +edwin +earl +dudley +doris +dorian +cymbeline +corona +connell +cole +clay +chloé +chester +chandler +cara +candelario +buster +boyd +bonifacio +beverly +benito +bastian +balfour +babar +augusta +apolline +annick +anastasie +aldous +alberta +zeno +zelda +wolfgang +wenzel +wendell +weldon +vladislav +vivien +vivian +varda +upton +tracy +toribio +tatiana +storm +sherlock +sheldon +sebastian +ryan +rolando +ritchie +reagan +read +ramsey +rainer +priscilla +porfirio +pip +perceval +pax +pasquale +pascaline +pamela +nikolaos +mungo +michaël +merton +maximus +marika +margherita +mabel +lysander +lotta +lidia +lazzaro +kit +karen +kama +julian +josef +jimi +jervis +jerome +ib +hosannah +horst +honor +hammond +gwynn +guglielmo +gregor +greer +godwin +ghislaine +gerrit +franciscus +fletcher +flemming +finn +faustus +ewald +eva +eulalie +ernestine +elliott +elliot +edwige +dwight +doug +dino +denver +dee +dai +crawford +cornell +conan +collin +coleman +candelas +bron +barthélémy +barnabé +baldur +babette +astrid +arden +ane +ammon +allison +agatha +yann +wu +wolfram +wilbur +wat +vico +vespasien +valda +urban +ugo +tria +tina +tamara +sri +sky +silvio +saverio +sara +salud +romana +reynaldo +remus +rébecca +raquel +randolph +rachele +poseidon +pavel +paola +panther +orna +noor +ning +ninette +ned +napier +mora +monty +moira +merrill +mercy +melita +marley +marjorie +marcos +manus +luke +louisa +logan +liz +lex +leonor +léonce +leo +lazarus +lauren +laird +kate +juvenal +justus +josiah +josèphe +josepha +jocelyn +ita +into +heath +haroun +hal +hai +gull +gracie +gottfried +giovanna +géraud +gene +frida +fingal +filippo +fausta +evita +eugen +estève +esmeralda +emi +elton +else +doyle +dolly +divina +dawson +dahlia +cynthia +connor +christina +cesare +catalina +carolina +carol +carine +candi +brahma +bogdan +baltasar +aurelio +audrey +apollo +andrei +anargyros +alta +albrecht +agostinho +ziya +zacharie +wotan +wilfrid +vitali +vicente +vesta +valerio +umberto +ty +tullia +tor +tilly +thom +terpsichore +tau +stafford +sophus +shan +sergius +sequoia +sebastiano +scarlett +sari +ruggiero +rosemonde +romy +rod +rocco +rina +rica +quincy +prospero +princess +phoebus +perry +perla +pepita +oriane +orfeo +ora +ophelia +olivette +ole +noémie +noel +nicodème +nicholas +neville +mircea +minna +ming +meredith +mei +mauri +matthias +martino +marilou +marielle +margarita +manuela +malik +malcom +lutz +luise +lowell +lore +lone +linos +lilian +leroi +lennard +leigh +lawson +kirk +kilian +kemp +kelley +keane +katherine +katharine +kata +kane +jurgis +july +johan +joaquim +jeannine +jaan +irwin +inigo +indra +ilona +iago +holden +hedwig +hedley +hamon +hadley +gwendoline +gunnar +graziella +gottlieb +goodwin +giuseppina +gilchrist +ghislain +german +gérald +georgina +gallus +fu +frances +fran +floyd +fitz +fidel +federico +evelyn +estrella +erskine +emiliano +ece +dua +dmitri +dionne +dina +digby +deb +cullen +cristobal +crispin +cornelius +comfort +clyde +christopher +chao +catarina +carolus +carmelo +cameron +callum +calliope +cai +caesar +cadogan +brett +brady +billie +bevan +ber +benjamine +bea +bartolomeo +barclay +barbie +bandi +aviva +aveline +austen +ashanti +ash +asa +artemisia +ariston +amerigo +amber +ama +africa +aeneas +ada +abdullah +zvi +zia +zach +xanthippe +wren +woody +wei +vitus +vittoria +vince +vere +vaughan +uri +ume +trix +tordis +toby +titania +till +tiffany +tibor +thor +tess +telma +tania +tal +sylvana +suzie +sunny +straton +stephanos +stan +sonja +silvia +silvana +silas +sid +shirley +seward +severino +servius +scheherazade +saul +russ +rudy +roscoe +roderick +rich +renata +raven +raine +quetzalcoatl +proteus +piri +piet +phyllis +philippine +petra +percival +pearce +patty +pascual +paige +ove +ouranos +osvaldo +orville +nikon +nigel +nathaniel +natalia +nahum +nadejda +moss +minerva +milburn +melle +melissa +melina +medea +maxim +matt +markus +marietta +marcelino +manfred +maja +lyndon +lugus +lucretia +lionel +linden +leonidas +lenox +leander +léa +layton +laurelle +lana +lamprecht +lally +kuro +kun +kirby +kalla +juliana +joshua +jill +jeremy +jehovah +jasper +jaffer +imelda +ilse +ike +humphry +homer +hillel +hieronymus +heck +harper +harald +hannah +hamilcar +ham +hala +hakim +gustaf +gresham +gratia +gracia +gottschalk +goro +giulietta +girolamo +ginger +giles +gilda +gigi +gerda +gennaro +gemma +gamaliel +gaius +frieda +frey +frankie +flower +floris +flavius +faye +fausto +farah +faith +fabiola +fabio +esta +erika +ennis +engelbert +emilie +ely +elmer +elisa +echo +dustin +duane +dougal +donovan +donato +devon +devereux +dell +daria +darby +curt +crystal +cosette +coralie +concha +clement +clemens +clayton +claus +claudio +cheyenne +charley +candida +camden +bryce +brennus +biagio +bede +beatrice +bartolomé +aurel +astaroth +artur +arrigo +anubis +antonia +antoni +antiope +antal +anja +angelos +andy +amos +amin +amilcar +amedeo +ambrose +amadeus +alvin +alphonsine +alonzo +alisa +alis +alia +alexandros +aki +zoran +zed +zdenka +zara +zacharias +yvain +yu +yehudi +wojtek +wisdom +wilma +wen +waldemar +vishnu +violetta +vincenzo +vien +victorine +verna +valkyrie +valerius +vadim +urien +undine +udo +tyrone +tyler +tucker +trygve +trini +tori +tora +thi +theo +thanatos +thaddeus +tessa +terry +tatum +tamar +symphony +svetlana +sunil +sunday +stephan +steph +sive +silvestro +sigurd +siena +siddharta +shui +shin +sheila +scevola +sawyer +sanda +salima +rurik +rupert +rufino +rowley +rowan +rosamond +rob +ricky +ricarda +ria +reynard +reg +randal +rana +ramses +rahab +rafal +rae +radclyffe +quintus +quan +qing +qasim +publius +pryce +poul +poppy +placido +placid +pino +piers +pharamond +petia +peg +pattie +patricio +panda +pancras +osmond +orestes +nye +nur +nuala +nora +noam +noa +niklaus +nguyen +nea +mustafa +musa +morty +monika +moa +miriam +milos +meryl +mervyn +merv +merry +melody +mckenzie +maurizio +marigold +marianna +mariana +mariam +marfa +manolo +manley +mani +maitland +mair +maha +mae +lynn +lupe +lucio +luba +lovell +lisbeth +linus +lilith +lieber +lew +lev +leonhard +leonardo +lenore +lena +leland +laverne +laurette +larisa +lamont +ladislas +kobe +knud +klio +klemens +killian +khalid +kevin +kenyon +kat +kaspar +karsten +karim +karel +juanito +josias +jos +joris +joos +joisse +johnnie +joey +joanne +jing +jiang +javan +jai +jacopo +jabin +israel +isidoro +irene +ingram +indira +ila +ignacio +hyman +hussain +huey +holly +hillary +hilde +herb +hera +henrik +henrietta +hathor +hank +hagen +hadrianus +habib +habacuc +günther +gunther +guiscard +griffin +gretel +gore +gonzalo +goldie +golda +godiva +glory +giuliano +gita +gino +ginevra +gianni +gertrud +gerry +geoffroi +genoveva +gaylord +gaspar +galahad +fulvio +frederico +frederick +florine +flick +firenze +fina +ferdinando +felice +fauna +faron +fabian +ewart +evrard +evangeline +euterpe +eufemia +etzel +ettore +esdras +esa +errol +eris +erebus +erato +enzo +enoch +encarnacion +emmanuelle +emilio +elmira +ellery +ella +elisha +elise +electra +eleanor +eileen +egon +effie +edmundo +edith +edda +donatello +dione +diodore +dinh +diamond +desmond +derval +derrick +deanna +dawn +darryl +dario +darcey +danny +curro +cristiano +cort +constancia +conrado +cody +clive +clinton +clarissa +cicero +chus +christy +christiana +chin +chau +charlton +charity +chara +celestino +casper +carles +carina +candela +cade +buddy +bud +bryan +brigham +bridger +brendan +breda +brant +brandy +brande +brand +bradford +brad +boutros +booker +bernardo +bent +benny +benedek +battista +bassam +barnabas +barna +baris +aubrey +ashton +ashley +arturo +armin +ariana +ariadne +aras +arabella +appius +anto +anouk +annabel +angie +angelina +anas +amy +amice +amélia +amaterasu +alva +alin +albertina +akim +agathon +agape +adriana +adolph +adalbert +abigail +abbey +zosime +zoie +zinnia +zina +zilla +zeta +zenon +zdenek +zane +zan +zak +zain +zack +zabel +yori +yasmine +yahveh +wynne +woodrow +wim +wilfred +webster +warwick +wade +vyacheslav +volos +volker +vlad +vito +virgil +vinh +vincente +vinay +vina +vili +viktor +vester +veronica +verner +vern +vassily +vashti +varius +valère +valdemar +uzi +ursel +uriel +urbana +umar +uma +ulrike +ulla +tyson +tyrell +tullio +tristram +trine +traherne +torsten +tola +tiziano +tiras +timothy +tiger +tierney +tiago +thyra +theodoros +thanh +than +thalia +thais +tera +teodoro +teodor +tendai +teal +tarquin +taras +taranis +tanit +tammy +tamir +sylwia +suzan +susie +susannah +susana +sunshine +stevie +steffen +steffan +stanislawa +stamatis +spike +sostrate +sonny +sloane +sloan +skye +siv +siri +sini +simona +simba +silvanus +silvano +sigvard +sigismund +siegmund +sho +shiva +shira +shir +shelly +shashi +sharif +shankar +shane +seymour +sextus +septimus +selby +sela +sébastienne +scarlet +sappho +santuzza +sansone +sandford +samir +sami +salvatore +salma +salamon +sal +sabino +sabina +runa +rui +ruby +roze +rosie +rosamund +rolph +rolan +rodolfo +riley +rik +ridley +rhonda +rhett +reuben +remedios +reinhard +reinaldo +rei +rees +rayner +ratan +randy +ramakrishna +raleigh +raimondo +rahim +ragnar +raffaello +radcliff +rada +quirinus +purdie +ptah +primula +portia +polly +pluto +pista +photine +philadelphia +peyton +petro +petri +petre +petar +perseus +perpetua +pero +peregrine +pere +peppi +pellegrino +pasco +paschal +parvati +pantaleone +paloma +palmiro +paki +ourania +ouida +ottokar +ossia +orval +orsino +ormonde +opal +oni +ona +omega +olimpia +ola +odin +obi +oberon +novio +novia +norwood +norris +nolan +noach +niven +nita +nikolas +nikola +nike +nieve +nicolaos +nicolae +neva +nesta +nemesis +nellie +nefertiti +neal +naum +nathanael +nastasia +napoleon +nanda +nader +mysie +myron +mya +murdoch +muhammed +mostyn +moshe +moses +moriah +morgana +moray +morag +monserrat +monna +monday +mogens +mitsuko +misty +miroslav +miki +michiel +michi +melvyn +mele +melanie +meir +mehmet +mehmed +meadow +mauro +mattia +matrona +matilde +mathew +masterman +marva +marlene +marise +marinus +marica +margrethe +margie +margery +marcelline +marcelina +maral +manoel +mandy +mallory +maisie +mahmud +mahatma +macy +macarena +mabon +lysistrata +lyra +lula +lukas +luka +lucrezia +lucine +lucina +luciana +loreto +loren +lluis +llewellyn +livius +linette +lindsay +liliana +lilia +liesel +lida +lexie +letty +leto +leticia +leonore +leonora +leona +leighton +lea +lavrenti +lauro +lata +lark +larissa +lanzo +lamech +laban +kyle +kuno +kondrat +koen +khayyam +khalil +kenny +kenneth +keisha +keir +keefe +kaye +kathleen +kasper +karp +karol +karla +karin +kaila +juro +jürgen +juno +june +judy +josep +josée +joop +joi +joaquin +joannes +jin +jezebel +jetta +jethro +jerrard +jen +jeb +jeanette +jaume +jaroslav +jarka +janna +janina +janek +jamin +jamal +jahel +jacquette +jacobus +jacki +izumi +iwo +iwan +ivory +ivor +ivar +issa +isra +ismael +isla +isha +isaura +irvine +irvin +irina +innes +ingolf +ingmar +inge +inga +inez +immanuel +imaculada +ilia +ignazio +idris +ichabod +icarus +iacchus +huppert +hubrecht +huang +hollis +holger +hoa +hitomi +hildegarde +hildebrand +hestia +hester +hervey +hermia +hermes +hereward +henrique +hendrik +helder +hedda +hazan +hayden +harmony +harish +harding +hanna +hadi +haakon +gustavo +guntram +gundula +guillermo +griselda +grigori +gregorio +grazia +graça +goretti +goran +goffredo +godfrey +goddard +glen +giulia +gioconda +gioacchino +giannino +geronimo +gerard +georgie +genesis +gaynor +garrick +ganesha +gamal +galen +gaétan +gabe +fritzi +freeman +frederik +freddie +frans +franca +fortunato +forrest +folke +flossie +fiorella +finley +filibert +fido +fidelis +fiammetta +ferne +fermin +fenella +faustine +farrell +faris +fancy +fadil +fabiana +ezekiel +ewan +eusebio +eugenia +esmond +esau +erwin +ervin +erna +erland +erin +ercole +erasmus +enrique +emmy +emmett +emmerich +émilien +emery +emanuel +elysia +elwin +elsie +elisabetta +elihu +elias +eliana +eléonore +eleonora +eleonor +elder +egidio +edvard +edgard +eckhard +ebert +earnest +durward +dugald +drummond +dotty +dory +doriane +donatienne +donat +dominica +dominic +domingos +dolores +dido +devi +despina +desiderio +desdemona +deon +denny +democritus +demetrios +delaney +debora +debbie +dayton +davie +darcy +dane +danaë +damon +damodar +daly +cyprian +cuthbert +csaba +cristiana +cristi +cressida +creighton +cosmo +cosimo +cosima +corrado +cornelis +corey +coral +consus +conor +concordia +concetto +concepta +colm +clint +cliff +clemente +clem +claudette +claud +clare +circe +cipriano +chun +christa +chiara +chet +cherokee +cheng +chastity +chandra +celina +celestina +celeste +cassiopeia +caspar +carsten +carmo +carmine +carmina +carmela +carlyle +carlisle +carin +caridad +cari +candy +candis +candace +camillo +camilla +calla +caleb +caius +cairo +bryant +bruna +brook +britton +brigida +bonnie +bonita +boleslav +bohuslav +blossom +binh +bilge +beulah +beth +bessie +bess +bertie +berta +bernd +bernardino +berit +benton +belinda +bee +beate +beata +bartholomew +barney +bakr +baha +badr +azarias +avice +avalon +autumn +aulus +attilio +athelstan +asher +asdrubal +asaph +arsenios +arsen +arndt +armel +arlen +arkadi +arjuna +arielle +aretha +arcadia +aran +apollonia +anwar +antonius +antonello +antonella +antanas +anson +ansel +annunziata +anneliese +anjali +ania +angelique +angeline +andrzej +andro +andreu +andrés +anat +ananda +anaïs +amon +aminta +ambrogio +amara +amalia +amada +alvar +alton +althea +allon +allegria +alistair +alison +algernon +alfons +alf +alec +alden +ahmad +agnes +agata +adriano +adora +adair +achim +ace +absalom +abram +abishag +abe +þórstein +þórr +þórir +þórdís +þórbjörn +þór +zygmunt +zvonko +zvonimira +zvonimir +zuzanna +zuzana +zusman +zusa +zuri +zulekha +zuleika +zula +zubin +zuberi +zsuzsi +zsuzsanna +zsuzsa +zsolt +zsófika +zsófia +zsigmond +zsiga +zsanett +zsa +zowie +zoticus +zosimus +zosimos +zosia +zoroaster +zoraida +zopyros +zoltán +zofia +zoey +zoë +zlota +zlatko +zlatan +zlata +ziyad +zivit +ziva +ziv +zisel +zipporah +zion +zinovia +zinaida +zimri +zilpah +zillah +ziba +zhou +zhenya +zhen +zev +zerachiel +zephyrine +zephyra +zephyr +zephaniah +zephania +zeph +zenzi +zenovia +zenobia +zenia +zena +zelpha +zelpah +zelma +zella +zelig +zelde +zeki +zeke +zeev +zedekiah +zechariah +zebulun +zebulon +zebedee +zebadiah +zdzislaw +zdislav +zbigniew +zaynab +zayna +zayn +zayd +zavier +zavia +zavanna +zarita +zaria +zareen +zaray +zarathustra +zaramama +zandra +zander +zalmon +zalman +zakiyya +zakiah +zaki +zakhar +zaira +zainab +zaina +zaida +zaid +zahrah +zahra +zahira +zackery +zackary +zachery +zachary +zacharjasz +zachariah +zacchaeus +zacarías +yvo +yuval +yutke +yusuf +yussel +yusra +yushua +yusef +yuriy +yuri +yuri +yun +yumi +yuliya +yuliana +yulia +yuko +yukiko +yuki +yudel +ysabel +yrjö +yrjänä +yousef +yoshiro +yoshi +yosef +yorath +yonca +yonatan +yonah +yolonda +yoko +yoel +yochanan +yoav +yngvar +ylva +yitzhak +yildiz +yidel +yewande +yevgeny +yevgeniya +yevgeni +yeva +yessenia +yesenia +yermolai +yered +yentl +yente +yelizaveta +yelena +yejide +yehudit +yehudah +yehiel +yechezkel +yazmin +yaw +yavuz +yasu +yasser +yasmin +yasir +yashmine +yasha +yasamin +yaroslava +yaroslav +yaropolk +yaron +yaromira +yardena +yarden +yannick +yannic +yankel +yanick +yakov +yakim +yahya +yaffa +yael +yadira +yachna +yachin +yaa +xzavier +xylina +xylia +xyleena +xun +xue +xuan +xosé +xochitl +xochiquetzal +xochipilli +xochilt +xoán +xiomara +ximun +ximena +xiang +xerxes +xenophon +xenon +xenocrates +xenia +xene +xena +xavior +xaviera +xaviar +xavia +xaver +xara +xanthia +xanthe +xandra +xander +xabier +wystan +wynter +wynonna +wynn +wynfor +wyn +wymond +wybert +wouter +wolodymyr +wojciech +woden +wlodzislaw +wlodzimierz +wlodek +wladyslaw +witold +witold +wislaw +wiremu +winton +winthrop +winona +winnifred +winifred +winfried +winfred +wincenty +wilton +wilmot +wilmer +willow +willoughby +willa +wilhelmina +wilfried +wilfredo +wilfreda +wilford +wilf +wiley +wilda +wilburn +wilbert +wil +wiktoria +wiktor +wikolia +wigburg +wieslawa +wieslaw +wielislaw +wiebke +wiebe +widad +wickaninnish +wibeke +whitaker +wera +wenzeslaus +wenonah +wenona +wendi +wenda +wenceslas +wekesa +waylon +wayland +wawrzyniec +wasswa +wassim +wasim +wardell +wapasha +waltraud +wally +walid +walenty +waldo +walburga +wahida +wahid +waheeda +waheed +waclaw +vytautas +vulcan +vsevolod +vreni +vosgi +vortigern +vonda +volya +völund +volodymyr +volodya +volkan +vojtech +voitto +voirrey +vlasi +vlaho +vladislava +vladimira +vladilen +vjekoslava +vjekoslav +vjeko +vivyan +viviette +viviana +viveka +vitya +vittorino +vittore +vitor +vitalia +vít +visnja +visitacíon +vishal +virgie +virgee +vipul +viorica +viorel +violeta +vinzenz +vinnie +vinko +vincenza +vincentas +vincenc +vinal +vilppu +vilmos +vilmar +vilma +vilko +viljem +viljami +vilhjálmur +vilhelms +vilhelmo +vilhelmiina +vilhelmi +vilhelm +vilfred +vilem +vilchjo +viktória +viktoria +vikram +vikki +vijaya +vijay +viggo +vidya +vidar +vid +victorius +victorino +victoria +victoria +víctor +vickie +vicki +vibol +vibeke +veva +vespera +vespasiano +vespasian +vesna +vesa +veronika +verônica +verónica +verona +verity +vergil +verena +vered +vercingetorix +venyamin +venkat +venka +veniamin +venetia +venceslav +venceslás +venceslao +vencel +vena +velvela +velvel +velma +velia +veli +velda +veera +veca +veasna +vavrinec +vaughn +vasya +vasu +vasily +vasilka +vasilisa +vasilios +vasilica +vasili +vasile +vasil +vasanta +vasant +varya +vartouhi +varlam +varinius +varinia +varg +varfolomei +vardah +vanya +vanja +vangelis +vanda +vance +vanamo +van +van +valtteri +valter +valorie +valora +vali +valeska +valeriya +valeriu +valerija +valerie +valeriana +valerian +valéria +valeria +valentine +valentine +valentín +valdis +valary +valarie +vahan +václava +václav +uzziel +uzziah +uzma +uwe +utz +uthman +ute +ustinya +usoa +usman +usko +usha +uschi +usama +usagi +urvakhsha +urszula +ursella +urjasz +urias +uriah +urania +unity +unice +ulysses +ulyssa +ultan +ulrika +ulrik +ulrica +ulric +ulisses +ulisse +ulises +ulick +ulf +ulbrecht +uland +ukko +ùisdean +uinseann +uilliam +uilleam +uilleag +uberto +ualan +uaithne +tzufit +tzofiya +tziporah +tzeitel +tyriq +tyrik +tyrese +tyreek +tyra +tymoteusz +tylar +tyko +tyge +tye +tybalt +txomin +twyla +twila +twdor +tuyet +tuyên +tuvya +tuulikki +tutankhamon +turlough +ture +tuor +tuomo +tuomas +tündér +tünde +tunç +tully +tuija +tudur +tuathal +tuan +tu +tu +tsholofelo +trystan +tryphosa +tryphon +tryphena +tryggve +trueman +trudie +trudi +troy +trixie +triston +tristin +tristen +tristão +tristand +tristán +trista +trisha +trish +trina +trijntje +tricia +trey +trevor +trevelyan +trev +tresha +trenton +trent +trefor +trecia +treasa +travis +tranter +traian +trai +trahaearn +trafford +tracie +traci +tracey +tracee +toya +tovia +tovah +tova +totty +torvald +torquil +tormod +torkel +torin +toria +torhild +torger +torgeir +tore +tore +torcall +torborg +torbjörn +torben +topsy +topi +topher +topaz +tonya +tonka +tonia +toni +toni +tondra +tomos +tommie +tommi +tommaso +tomislava +tomislav +tomiko +tomi +tomer +tomaz +tomasz +tomasa +tomás +tòmas +tomas +toma +toma +tolly +toivo +toiréasa +toirdhealbhach +toini +toiba +todor +tod +tobin +tobias +tobiah +toal +tlaloc +tiziana +tiwlip +tiw +tivadar +titty +titilayo +tisha +tirzah +tiphanie +tipene +tinuviel +tinek +timoti +timothea +timotha +timoteus +timoteo +timotej +timotei +timofei +timo +timo +timmy +timeus +tímea +timaeus +tillo +tillie +tilda +tikhon +tiina +tighearnán +tighearnach +tigernán +tigernach +tiffani +tiernan +tiede +tiburcio +tiborc +tiberius +tibby +tiarnan +tiarnach +tiara +tianna +tiana +tiamat +thyrza +thuy +thutmose +thurstan +thurayya +thunor +thucydides +thuán +thu +thracius +thoth +thorvald +thorstein +thorley +thorburn +thorborg +thorbjörn +thomasina +thirza +thiago +theunis +theseus +theron +theresia +theresa +therapon +theophylaktos +theophilus +theophila +theophania +theodotus +theodosius +theodosia +theodoric +theodore +theodora +theocritus +theobald +themistocles +themis +thelonius +thelma +thekla +theirn +theda +thecla +thea +thane +thales +thad +thabo +tevye +teuvo +teunis +tetty +tessie +tertius +terrie +terri +terrence +terrell +terrance +tero +teris +teri +terezinha +terezija +terézia +tereza +teréz +teresinha +terese +terenzio +tere +tercero +terance +terah +terach +teppo +teofilo +teofil +teodosio +teodors +teodora +tenskwatawa +tennyson +temujin +tempest +temperance +temitope +temel +temani +teman +telesphore +tekla +teivel +teigue +teige +tehila +tegwen +tegan +teemu +tecumseh +tecla +teca +teasag +teàrlag +teàrlach +tearach +teale +teague +teagan +tayler +tawny +tawnie +tawfiq +tatyanna +tatyana +tatu +tatton +tatjana +tatienne +tatianna +taskill +tasha +tasgall +taryn +taro +tarmo +tariq +tarina +tarek +tara +tara +tapio +tapani +tanzi +tanya +tansy +tanja +tanith +tanisha +tanis +tanika +tanesha +taneli +taneka +tancredo +tancred +tamzen +tamson +tamsin +tamsen +tamra +tammie +tammi +tammaro +tamiko +tamika +tamid +tamia +tami +tamera +tameka +tamati +tamás +talya +talulla +tallulah +talitha +taline +taliesin +taliba +talia +talfryn +taletta +takumi +takouhi +takeshi +takehiko +takashi +takako +taimi +tahvo +tähti +tahnee +taffy +taegan +tadhg +tadg +tadeusz +tadeu +tadeo +tadej +taddeo +tad +tacitus +tacito +tacita +tacey +tabitha +tabea +tabby +tabatha +taavi +taavetti +szymon +szilvia +szilveszter +szilárd +szczesny +szczepan +szabolcs +syntyche +sylwester +sylvianne +sylvaine +sydne +syd +sybille +sybilla +sybella +swithun +swithin +swietoslaw +swietopelk +swietomierz +sweeney +swaran +swanhilde +swanhilda +swanhild +svyatoslav +svyatopolk +svjetlana +sveta +sverre +svarog +svanhildur +svanhild +svana +svajone +suzume +suzu +suzanna +suzana +suvi +susumu +sushila +sushil +susheela +susanne +susanna +susanita +susan +surya +surinder +suresh +surendra +suraya +suraj +sunniva +suniti +sunitha +sunita +sunder +sundara +sundar +sunan +summanus +sumiko +sumayya +sumati +sumantra +suman +sulo +sulislaw +süleyman +süleiman +sülayman +sulaiman +sulabha +sukie +suibne +suibhne +suhayl +suhail +suha +sudhir +sudarshana +subhash +stylianos +stu +stribog +stiofán +stina +stijn +stígandr +stig +stian +stew +steven +sterre +steren +stephany +stephanie +stephania +stellan +stelios +stelian +stelara +stela +steffie +stefanos +stefanie +stefania +stefana +stef +steenie +steen +steaphan +steafan +stathis +stasya +stanislaw +stanislava +stanislav +stanimir +stamatios +stamatia +stacy +stacie +stacia +staci +stacey +stacee +ssanyu +sroel +spyros +spyro +spyridon +spurius +sprita +spiros +sotiris +sotirios +sotiria +sosimo +sosigenes +sorrel +sorley +sorina +sorin +søren +sorcha +sora +sophy +sophronius +sophronia +sophocles +sopheap +sonya +sonnie +sonje +soner +sondra +sonal +somhairle +somerled +solvig +solvej +solveig +solomon +solly +sol +sol +sohrab +sohail +sofronio +sofiya +sofija +sofie +socrates +sobieslaw +sly +slawomir +slavomir +slàine +sláine +skyler +skylar +sjurd +siwan +síthmaith +sitara +sissy +sissie +sisko +sisel +sirvart +siran +sipho +siothrún +siorus +siors +siôr +sioned +siôn +síomha +sìoltach +siofra +siobhan +sìneag +sinéad +sìne +síne +sindy +sindri +sindre +simonette +simone +simone +simo +simin +simge +simeon +simcha +simão +silviu +silvija +silvestra +silvester +silke +silje +silja +sìleas +síle +sigrún +sigrun +signy +sigiswald +sigi +sigfrid +sigeberht +sif +sienna +siemen +sieglinde +sieghild +sieghard +siegbert +sieffre +sidony +sidonius +siddhartha +sibyl +sibilla +sibéal +sib +siavush +siarl +siani +siana +sian +shyla +shyama +shyam +shura +shun +shulammite +shulamith +shulamit +shukriyya +shukri +shug +shripati +shprintzel +shprintze +shprintza +shoshannah +shoshana +shonda +shona +sholto +shobha +shmuel +shlomo +shirral +shiro +shirlee +shirin +shireen +shiphrah +shinju +shimshon +shimon +shimmel +shiloh +shifra +shichiro +shevon +shevaun +sheryl +sherrie +sherri +sherley +sherisse +sherilyn +sherill +sherie +sheri +shereen +sheree +sherah +sher +sheona +shena +shem +shelia +shelena +shelby +shelagh +shekhar +sheine +shehrevar +sheherazade +sheenagh +sheena +sheelagh +sheela +sheba +sheard +sheamus +shea +shaynah +shayna +shayla +shay +shay +shawnee +shawnda +shawna +shawn +shavonne +shauna +shaun +sharyn +sharyl +sharron +sharona +sharon +sharmila +sharmaine +sharma +sharlene +sharleen +sharla +sharise +sharifa +shari +shareef +sharalyn +shaquille +shanti +shantelle +shantel +shantae +shanta +shannah +shanna +shankara +shanika +shanice +shania +shanene +shanelle +shandar +shana +shamus +shamira +shamgar +shama +shakuntala +shakti +shakira +shakir +shaindel +shaina +shai +shahzad +shahrokh +shahrizad +shahriar +shahrazad +shahpur +shahnaz +shahjahan +shahira +shahar +shafiqa +shafiq +shaelyn +shae +shadya +shadrach +shadi +shadi +shad +shachar +severo +sévérine +severin +severiano +seve +sevastyan +sevastian +sevan +seumas +sethunya +seth +seth +sesto +serrena +serina +serhat +sergei +serenity +serena +seren +seraphine +seraphina +serafino +serafina +serafima +septima +september +seppo +seppel +sepp +seosamh +seòsaidh +seòras +seònaid +seonag +seona +seoirse +seoc +senga +seneca +sender +sence +senan +semyon +semele +selwyn +selvaggia +selina +selima +selig +selene +selena +sekel +sekar +sefu +sefton +seetha +seeta +secundus +secundinus +sechnall +sebestyén +sebestyen +sebastiana +sebastián +sebastiaan +séarlas +séarlait +seanán +seán +séamus +seamour +séamas +séaghdha +seaghdh +séafra +seachnall +scotty +scottie +scilla +schwanhild +sayyid +sayuri +sawyl +sawney +savitri +savio +savino +saveli +savas +savanna +savalus +sava +saundra +sauda +saturninus +saturnino +saturnina +saturn +satu +satish +satchel +sassa +sashi +sasha +sascha +sarra +sarosh +sarita +sarina +sárika +sariah +sári +sarava +saraswati +saranna +saraid +sarai +sarahjeanne +sára +sapphire +sapphira +saoirse +sanya +santino +santeri +sanne +sanna +sankar +sanjiv +sanjit +sanjeev +sanjeet +sanjay +saniyya +sani +sango +sanford +sandu +sándor +sandie +sandhya +sandeep +sandalio +sanchia +sancha +sanaz +sana' +samuli +samuil +samuele +samuela +sámuel +sampson +samoyla +samnang +sammie +sammi +samira +samina +sameera +sameer +samara +samantha +samanta +salvalus +salomea +salome +salomão +salman +sallie +salli +salina +salim +salih +salha +salena +saleh +saleem +salal +salacia +sakura +saku +saki +sakhr +sakari +saifullah +saiful +sa'ida +sa'id +saibh +sahar +safira +saffron +saffie +sadie +sa'dia +sadhbh +saddam +sadb +sadaf +sa'd +sachin +sachiko +sachie +sacheverell +sachairi +saburo +sabrina +sabia +sabella +sabeen +sabas +sabah +saara +ryszard +ryota +ryo +ryley +rylee +rylan +ryanne +ryana +ruxandra +ruud +ruuben +ruthie +rutger +ruta +rusty +rustam +ruslan +ruqayya +rupinder +ruperta +rune +rukmini +rufina +rudo +rüdiger +ruchel +rubye +rubina +rubena +rubén +rube +ruaridh +ruaraidh +ruairidh +ruairí +ruairi +ruaidrí +ruaidhrí +ruadhán +rózsi +rózsa +rozanne +rozalija +rozália +rozabela +róza +roza +roz +royston +royle +roydon +roxie +roxanne +roxanna +roxana +rowina +rowena +rowanne +roswitha +roswell +rostislav +rossella +roslyn +rosina +roshni +rosheen +roshanara +roshan +rosetta +rosemary +rosemarie +roselyn +roselle +rosella +roseanne +roseann +rosanne +rosannah +rosanna +rosangela +rosalynne +rosalyn +rosalva +rosaline +rosalinda +rosalina +rosalin +rosaleen +rosabella +rosabel +ros +rory +rorie +rórdán +roopertti +roope +ronny +ronnette +ronit +roni +roni +rong +ronen +rónán +ronaldo +ronalda +rona +ron +ron +romolo +romola +romina +romilda +romey +romayne +roly +rolo +roldán +rokuro +roksana +róisín +róis +roibeard +roi +roi +rohesia +rohan +rohan +rogerio +rogelio +roeland +roel +rodya +rodolph +rodolf +rodion +rodina +rodica +rodger +rodge +roderic +roddy +rocío +robynne +robyn +robina +robi +robertina +roberta +róbert +robena +robby +robbie +roar +roald +rizwan +rivka +risto +risteárd +riordan +ríonach +ríona +ríoghnach +rino +rinaldo +rim +rilla +riku +rikki +rikke +rikhard +rike +rikárd +rikard +rika +riitta +riikka +ríghnach +rigel +rigby +rickie +rickey +rickena +rick +richmal +richie +richendra +richelle +richardine +richárd +riccarda +riaz +riannon +rian +rhys +rhydderch +rhosyn +rhonwen +rhona +rhodri +rhoda +rhisiart +rhianu +rhianon +rhiannon +rhianna +rhian +rhetta +rheinallt +rheanna +rhea +rhbeen +rhamantus +reynold +rexanne +rexana +reva +reuven +reut +reuel +reto +retha +renzo +renita +renatus +renato +renáta +renae +rena +remigio +remiel +remei +reinhold +reinhilde +reiner +reina +reina +reimund +reijo +regula +reggie +regena +regana +regan +reetta +reeta +reese +reenie +reene +reena +reece +redmund +redmond +redd +rebekka +rebekah +rebeka +rebeckah +rebecka +rebeccanne +rebeccah +rebecca +rebeca +reba +rearden +reannon +reanna +réamann +reah +razvan +raza +raynard +rayna +rayna +raymundo +raymund +rawya +rawiya +ravindra +ravenna +rava +raul +rauha +ratnam +rati +rathnait +rastus +rasmus +rashne +rashmi +rashida +rashid +rasheed +rashad +rasha +raschelle +raphaela +raphael +ranya +ranulph +ranulf +ransu +ranjit +ranjeet +ranj +raniero +randolf +randi +randell +randa +ranald +ramón +ramla +ramiro +rameshwar +ramesh +rameses +ramachandra +ramachander +raluca +ralphina +ralphie +rakesh +rakel +rajya +rajnish +rajneesh +rajiv +rajinder +rajesh +rajendra +rajender +rajani +raj +raisel +raisa +raisa +rainerio +rainard +raina +raimundo +raimunde +raimund +raimonda +raiden +ráichéal +raibeart +rahul +raheem +raguel +ragnvald +ragnhildur +ragnhild +ragnheiður +ragnfrid +ragnborg +ragna +raghu +raghnall +raghnailt +raghnaid +rafiqa +rafiq +raffaella +raffaele +rafe +rafaela +rafael +rafa +raelyn +raelene +raeburn +radzimierz +radulf +radovan +radoslawa +radoslaw +radoslava +radoslav +radomira +radomir +radomila +radomil +radmilo +radko +radimir +radim +radha +radek +ra'd +racquel +raclaw +rachyl +rachelle +racheal +rachael +rabindra +rabbie +raban +rabab +raanan +raakel +quyen +quy +qusay +quirino +quinton +quintin +quintella +quinn +quinlan +quin +quim +quianna +quiana +queenie +quanna +quang +quanah +qiu +qiana +qadir +pythagoras +pyry +pyotr +pushpa +purushottam +ptolemy +ptolema +psyche +przemyslaw +przemo +przemek +pryderi +prunella +prue +prudenzio +prudentius +prudencio +pru +proserpina +prometheus +priya +prissy +prisca +primrose +primitiva +prema +prem +preeti +precious +preben +praxiteles +pratima +pratibha +pratap +prasad +pranciskis +pranay +pran +pramod +prakash +praise +pradeep +prabodh +prabhu +prabhakar +posy +posie +poornima +ponzio +pontus +pontius +poncio +pompiliu +pompey +pompeo +polyxena +polyhymnia +polydeukes +polycarp +polona +pollyanna +pollie +polina +poldie +poldi +pòl +pól +pocahontas +pleasance +plato +plamen +placida +pius +pitambar +pisti +piroska +pirkko +pirjo +piritta +pipra +pippa +pinchas +pilvi +pilib +pili +pika +piia +piety +pietronella +pietrina +pietari +pierrick +pierina +piera +piedad +pich +piaras +phyllida +phyliss +phuong +phrixus +photios +phoebe +phocas +phobos +phirun +phinehas +phineas +philotheos +philomena +philomela +philomel +philokrates +phillis +phillipa +phillip +phillida +philis +philippina +philippa +philipa +philemon +phile +philbert +philander +pheobe +phemie +phelim +phelan +phebe +phaedrus +phaedra +petya +pétur +petunia +petula +petteri +petter +petru +petronella +petronel +petrona +petrina +petrica +petras +petranella +petr +peti +peterkin +petera +peta +perun +perttu +pertti +persis +persephone +peronelle +peronel +pernille +pernilla +pernel +perlie +perele +perdita +pepito +pepca +peony +pentti +peninnah +peni +penelope +pene +pembe +pelagius +pelagia +pelageya +pekka +peigi +peggie +pegasus +peers +pedr +peder +pearlie +pearle +peadar +payton +pawel +pavlos +pavlo +pavao +paulino +paulina +pauliina +pauletta +paulene +pauleen +patya +patxi +patsy +patryk +patrycja +patroclus +patrizio +patrizia +patrik +pasqualino +pasqualina +pasha +pascuala +parwiz +parvin +parveen +parvanah +parvaiz +parthenope +parthenia +parthalan +parth +parris +parnel +parisa +paride +paraskeve +paramonos +papillion +papak +paolino +paolina +pantheras +pantaleon +pansy +panni +pankraz +pankratios +pankrati +panfilo +pancrazio +panayiotis +panagiotis +panagiota +pamphilos +pamila +pamella +pamelia +palmira +pallu +páll +pála +pål +pàl +pál +pakpao +paise +padrig +pàdraigín +pàdraig +pádraig +padmini +padmavati +padma +paderau +paden +pacifica +pachjo +pacey +paavo +paavali +paaie +ozzy +ozzie +özlem +özgür +ozanne +ozan +oz +oz +oxana +owena +owen +owen +owain +ovidiu +ovid +oved +ovadia +ottoline +ottó +ottilie +ottila +otthild +ottaviano +ottavia +otso +otokar +otieno +otho +othniel +otávio +otakar +oszkár +oswin +osmund +oskari +óskar +osip +osheen +osbourne +osbert +osanne +osamu +osama +orvokki +orvar +orsolya +orso +orsina +orrin +orrell +orpheus +orpha +orpah +orpa +ornella +ornat +ormonda +ormond +ormerod +orli +órlaith +orlagh +orla +örjan +orinthia +orinda +orianne +oriana +órfhlaith +oren +orel +orbán +oralie +oralee +orah +orabela +oprah +ophrah +ophiuchus +opeyemi +oonagh +oona +onur +onora +onni +onisim +onesiphorus +onesimus +onesime +oneida +ondrej +omri +omolara +omid +ömer +olyvia +olya +olwyn +olwin +olwen +oluwayemisi +oluwatoyin +oluwaseyi +oluwaseun +oluwasegun +oluwafunmilayo +olumide +olukayode +olujimi +olufunmilola +olufunmilayo +olufemi +olov +olof +ollie +olli +olle +olivie +oli +olena +oleksander +olek +oleg +oldrich +olayinka +olavi +olav +olanrewaju +olamide +olalla +olabode +oksana +oiva +oisín +oighrig +ogden +ofydd +ofra +ofer +ofélia +ofelia +óengus +oedipus +odysseus +odran +odovacar +ödön +odoacer +odo +odila +ödi +odhrán +odhiambo +odharnait +odetta +odell +odelia +oddmund +odd +odalys +odalis +octavius +octavian +octavia +ochieng +obed +obadiah +oana +nyx +nyssa +nyree +nydia +nyala +nyah +núria +nuray +nura +nuo +nunzio +nunziatina +nuno +nuha +nudd +nuadha +nuada +nsonowa +nsia +nowell +normina +norm +norina +nori +norene +noreen +norah +noora +nonie +nona +nomusa +nolene +nola +nóirín +nohemi +noga +noemi +noelle +noella +noelene +noele +noelani +nobu +noak +noah +noah +nnamdi +nkruma +nkosazana +nkosana +nkechi +nizar +nivek +niu +nissa +nishant +nioclás +ninian +ninel +nina +nina +niloofar +nilofer +niles +nila +nikostratos +nikomedes +nikomachos +nikolina +nikolett +nikoleta +nikole +nikolaus +nikolao +nikolai +nikolaas +nikodim +nikodemos +niko +niklas +nikkole +nikki +nikifor +nikias +nikephoros +nikandros +niilo +nigella +nigelia +nieves +niels +niels +nicusor +nicu +nicostrato +nicomedo +nicolò +nicolina +nicoletta +nicoleta +nicolau +nicolasa +nicolás +nicolao +nicola +nicola +nicodemus +nicodemo +nicky +nickolaus +nickolas +nichole +nichol +nichjo +niccolò +nic +nibori +niamh +niall +nia +nia +nhung +nguyet +ngozi +ngoc +ngaire +ngaio +ngai +neza +newt +nevio +nevil +neves +neve +nevan +nevaeh +neus +netuno +nettie +nethaniah +nestore +nessa +nessa +nessa +nerys +nero +nero +nerissa +nerio +nerina +nerida +neriah +nergis +nereza +nereus +nereida +nephele +neoptolemus +neo +neo +nena +nelu +nels +nelle +nell +nelda +nekoda +nekane +neirin +neilina +neifion +nehemiah +nefertari +neely +neelam +neculai +neassa +neasa +neacel +ndidi +nazario +nayeli +nawra +nawal +navid +naveen +naveed +nava +natsumi +natsuko +natille +natasha +natasa +natanaele +natan +natalya +natália +natalee +nastya +nasira +nasir +nasim +narinder +narendra +narelle +narcissus +narcissa +narciso +narcisa +narca +narayan +naphtali +naomi +naomi +naomhán +naomh +naoko +naoise +nanuk +nanook +nannie +nanna +nandy +nándor +nandag +nanashi +nanaia +nanaea +naldo +nalani +nakato +najib +naji +naitik +nainsí +na'ima +na'im +naila +nail +nahor +naheed +nahal +nagib +nagi +nagendra +nadzeija +nadya +nadya +nadra +nadira +nadim +nadia +nadia +nadezhda +nacio +nacho +nabil +naamah +myrtle +myrtie +myrrine +myrna +myrddin +myranda +myles +mykolas +mykola +mykhaylo +mykhailo +myghal +myfanwy +myf +mwanajuma +mu'tasim +muscowequan +mus'ad +murtagh +murrough +murdo +murdag +murchadh +murali +munroe +munro +munira +munashe +muna +mukul +mukhtar +mukesh +muirne +muiris +muirín +muirgheal +muirgen +muirenn +muireann +muireall +muireadhach +muhsina +muhsin +muhammad +müge +muadhnait +mstislav +mscislaw +mózes +mozes +moyra +moyna +motya +motke +mostafa +mosi +mose +morwenna +morven +morten +mórríghan +morrigan +morpheus +morna +moriko +moricz +móric +morgaine +moreen +mordikai +mordechai +mordecai +morcant +morana +mór +montague +mónika +monifa +mónica +mongkut +monat +mona +mona +mona +mollie +mokosh +mojisola +moishe +moisés +moirrey +mohini +mohinder +mohandas +mohana +mohan +mohammad +modya +modesty +modestus +modesto +modestine +modesta +modest +moana +mneme +mnason +miyako +mitzi +mitya +mitxel +mitica +mitch +misti +missie +miska +mis'id +misi +misha +miruna +miroslawa +miroslaw +miroslava +mirna +mirko +mirjami +mirjam +mirja +mirinda +miren +mirembe +mirella +mirele +mirela +mireio +mireia +mirabella +minty +minta +minoru +mindy +minako +miltiades +miloslaw +miloslava +miloslav +milogost +millie +millicent +millard +milford +milena +mildred +milburga +milana +milagros +milada +mila +mikulás +mikula +miksa +mikolás +mikolaj +miklós +mikko +mikkel +mikhailo +mikhaila +mikhail +mikelo +mikel +mikayla +mikala +mikaela +mikael +mika +miina +miia +mihhaelo +mihangel +mihammad +mihály +mihajlo +mihaita +mihai +mihaela +mihael +miha +miguela +mieszko +miela +mieke +mieczyslaw +midori +midge +mictlantecuhtli +michjo +michiko +michelyne +michelina +michelangela +michela +micheil +mícheál +mìcheal +micheal +michayla +michalina +michal +michal +michaela +micajah +micaiah +micah +micaela +mhairi +meurig +meuric +metody +metin +methuselah +methodius +methoataske +meta +meshullam +meshulam +meshach +meryem +mervin +merten +merritt +merrion +merrilyn +merrick +merlyn +merletta +merla +meriwether +merita +merilyn +meriel +merideth +merfyn +merete +mererid +mercia +meraud +menuha +menno +menes +menelaus +menashe +menahem +menachem +melyssa +melvin +melva +melpomene +melor +mellony +mellan +melitta +mélissa +melisa +meliora +melinda +melicent +melia +melia +melete +melesina +melek +melek +melchor +melchiorre +melany +melania +melaina +meiriona +meirion +meinwen +meinrad +meinir +meinhard +meinard +meike +meical +mehrdad +mehmud +mehitabel +mehetabel +mehalia +meghan +megan +mefodi +meera +meena +medusa +medb +mechtilde +mechteld +meaveen +meave +meallán +meaghan +meagan +meadhbh +méabh +mckenna +mckayla +mazin +mayte +mayson +mayra +maynerd +mayme +mayim +maybelline +maybelle +maya +maya +maxine +maximo +maximino +maximillian +maximilienne +maximilian +maximiano +maxene +mavreena +mavourneen +mavis +maverick +mave +maurus +maurine +mauricio +maurene +maura +maura +mauno +maudie +maude +matylda +mátyás +matvei +matty +mattithyahu +mattie +matti +matteo +matryona +matleena +matjaz +matilda +matild +matija +matias +mathúin +mathilda +matheus +mateusz +mateus +mateja +matej +máté +masuyo +mas'ud +massimiliano +masood +masha +masego +marzio +marzena +marylyn +marylou +maryanne +maryann +maryam +marya +marwa +marvyn +marvin +martyna +martyn +mártuska +martti +martta +márton +martita +martirio +martinho +martina +martín +martijn +martie +mårten +marten +märta +márta +marta +marshan +marsha +marsaili +marquita +marnie +marnie +marni +marna +marmaduke +marlyn +marlin +marlena +marlen +marlee +marla +markku +marketta +markéta +márk +marjory +marjeta +marje +marjani +marjan +marjaana +marja +mariya +mariusz +maritza +marita +marit +marissa +marisol +mariska +marisa +marion +marion +marinda +marilynn +marilene +marilena +mariko +marijse +marijona +marijke +marijana +marijan +marija +mariele +mariel +marieke +maribel +marianus +marianne +marianne +mariangela +marian +marian +marian +mariamne +mariah +mariabella +maría +mária +margrét +margo +margit +margh +marged +margarida +margarid +margaretta +margarethe +margarete +margaréta +margareta +marganita +margaid +maresol +mareike +maredudd +mared +marduk +marcy +marcio +marcin +marcie +marci +marcelo +marcellino +marcellette +marceli +marcela +maralyn +marajha +mara +mara +maquinna +maoilios +manya +mansur +mansoor +mansel +manola +manny +mannix +manlio +manjusha +manjula +manish +manfried +manfredo +manel +mandi +mandeep +manasses +manasseh +malvolio +mallt +mallaidh +malka +malinda +malina +malie +malia +malgorzata +malene +maleko +maleah +maldwyn +malati +malandra +malamis +malakai +malak +malaika +malachy +malachi +maksimilian +maksim +makram +makenzie +makenna +makeda +makayla +makari +makaio +maitiú +maite +mairwen +mairtín +máirín +màiri +mairenn +mairéad +mairead +máire +mainio +mainchín +maile +maike +maija +maighread +maia +maia +mahvash +mahmood +mahli +mahlah +mahinder +mahin +mahendra +mahavir +mahalia +mahali +mahalath +mahalah +mahala +magnhild +magdolna +magdalone +magdalene +magdalena +magdalen +mafalda +maeve +maeva +maeleachlainn +maeja +maegan +madyson +mads +madoline +madog +madoc +madlyn +madisyn +madhur +madhukar +madhu +madhavi +madhav +madge +madelyn +madeline +madelina +madelaine +maddison +maddalena +mädchen +madalyn +madalena +madailéin +madai +macsen +maciej +macie +machteld +macey +macario +macaria +mable +mabelle +mabella +maata +maas +maartje +maarten +maarja +maarit +maaria +maaike +lyyti +lyydia +lyudmyla +lyudmila +lyubov +lyuba +lyssa +lysimachus +lysette +lysandra +lyric +lyov +lynwood +lynton +lynsey +lynsay +lynnette +lynne +lynna +lynette +lyndsey +lyndsea +lyndsay +lyndi +lynda +lyn +lyle +lyda +lycurgus +lyall +luzia +luvinia +luvenia +luukas +luuk +lutgardis +lutgard +lutfi +lurdes +lupita +lunete +luned +lumusi +luminita +luksa +lukács +lujza +lujayn +luiz +luitpold +luitger +luitgard +luíseach +luigino +luigina +lughaidh +lugh +luella +ludwik +lúðvík +ludvik +ludvig +ludoviko +ludovica +ludmila +ludger +lucrece +lucjan +lucinde +lucinda +lucilla +lucian +lucía +lúcia +luchjo +lucetta +lucasta +lúcás +luca +luca +lubomir +lubomierz +lubna +luben +luanne +luanna +luann +luana +loyd +lowri +lovise +lovisa +loviisa +lovel +louiza +louie +louella +lottie +lothario +lothair +lorrin +lorrie +lorri +lorna +lorn +lorita +loris +lorinda +lõrinc +lorin +lorie +lori +loretta +lorens +lorene +lorencio +lorena +lorelle +loreen +loredana +lorccán +lorcán +lorayne +lóránt +lóránd +lorainne +loraine +lora +lonny +lonnie +lonán +lommán +lomán +lolicia +loki +loic +lodovico +lodewijk +lockie +lochlann +lochlainn +lochan +llywelyn +llywellyn +llyr +lluc +llorenç +llora +llewelyn +llewella +llew +lleulu +lleu +ljubomir +lizzy +lizzie +lizolet +lizette +lizbeth +lizaveta +liza +livy +livvy +liviu +livio +liviana +livia +livia +lita +lisha +lisbet +lisanne +lir +liouba +lior +linzi +linwood +linsey +linsay +linnie +linnette +linnet +linnéa +linnaea +linh +linford +lindy +lindsie +lindsey +lindon +linas +lina +lina +lim +lilo +lilly +lillias +lillian +lilja +lilias +lileas +líle +lilavati +lilac +lila +lijsbeth +liisa +ligia +ligeia +liesl +liesje +lieselotte +liese +liesbeth +liesa +lidiya +liddy +liborio +liboria +libor +libitina +liberius +liberatore +lianne +liana +liam +líadan +leyton +lexy +lexus +lexine +lexia +lexi +lexa +lewella +levon +levent +lettie +lettice +letizia +letitia +letha +leta +leszek +lessie +lesly +lesley +lesleigh +lesia +lesedi +leos +leopoldo +leonzio +leontyne +leonty +leontius +leontina +leonti +léonne +leonius +leone +leone +leoncio +leolin +leola +leokadia +leofwine +leofric +leocadio +leocadia +lenuta +lenora +lenny +lennox +lennie +lennart +lene +len +lemuel +lempi +lelia +lela +leith +leilani +leilah +leif +leia +lehi +legolas +lefteris +leevi +leesa +leela +leeba +leeann +leda +lecia +lech +leberecht +leatrice +leanora +leanne +leanna +leann +leandro +leandra +léan +leah +leachlainn +lazer +lázár +lazar +laz +layla +laxmi +laxman +lawrie +lawanda +lawahiz +lavrentios +lavra +lavonne +lavone +lavinia +lavina +laverna +lavern +lavender +lauryn +lauritz +laurits +laurita +laurissa +laurine +laurinda +lauri +lauretta +lauressa +laurentius +laurentiu +laurentine +laurentia +laurene +laurenço +laurencia +laurence +laurence +laurena +laureen +lauraine +launo +launce +latoya +latonya +latisha +latifah +latifa +latif +lateefah +latasha +latanya +lászló +lassi +lashonda +lashawn +laryn +lárus +lars +larry +larrie +larkin +lari +lareyna +laraine +lára +laoise +laocadia +lanty +lanny +lani +lành +lanford +lamya +lammert +lamis +lallie +lalita +lalit +laleh +lalawethika +lalage +lal +lakshmi +lakshman +lakisha +lakeshia +lakeisha +lajos +laima +laila +laia +lahja +lagina +lærke +laelia +ladonna +ladislav +ladislaus +ladislao +lacy +lachtna +lachlan +lachina +lachie +lacey +labhrás +labhrainn +kyung-soon +kyros +kyriakos +kyriaki +kyriake +kyran +kyra +kyösti +kynaston +kym +kyllikki +kylie +kyler +kyleigh +kylee +kyla +kwesi +kweku +kwasi +kwame +kwaku +kwadwo +kwabena +kuzma +kustaa +kurtis +kunto +kunthea +kunigunde +kunigonde +kunibert +kunegunda +kunal +kumari +kumar +kukka +kudret +kuba +kshitij +kseniya +ksenija +ksenia +ksawery +krzysztof +krzys +krystyna +krystyn +krystof +krystle +krystine +krystina +krystal +krysia +krisztina +krisztián +kristyna +kristy +kristopher +kristoffer +kristóf +kristjana +kristján +kristjan +kristine +kristina +kristin +kristiina +kristie +kristian +kristia +kristi +krister +kristen +kristen +kristel +kristeen +kristaps +kristal +krista +krimhilde +krikor +kriemhilde +kriemhild +kreszenz +kreszentia +kresten +kreindel +kourtney +kostya +kostandin +kory +kortney +kort +korrine +kornélia +kornelia +kornél +kornel +korinna +korina +korey +korë +körbl +korbinian +korbin +kora +koppel +koos +konstantyn +konstantinos +konstantin +konrád +konnor +kolya +kolour +kolman +kolleen +kole +kolby +kolab +kojo +kohinoor +kohar +kohaku +kofi +koenraad +kody +kodey +kobina +knute +knut +klytië +klotild +kliment +klementyna +klemen +kleitos +klavdiya +klavdija +klava +klaudia +klára +klara +klaes +klaas +kjetil +kjerstin +kjellfrid +kjell +kjeld +kizzy +kizzie +kiyoshi +kiyoko +kitty +kistna +kishori +kishore +kishen +kishan +kisha +kisecawchuck +kirsty +kirstin +kirstie +kirsten +kirsteen +kirsi +kirsa +kirill +kiril +kiran +kirabo +kira +kip +kingsley +kinge +kinga +kinborough +kin +kimo +kimmy +kimiko +kimberly +kimberleigh +kimberlee +kimball +kim +kim +kim +kilie +kiley +kiku +kiersten +kierra +kieron +kieran +kiera +kielo +kichiro +kibwe +kiarra +kiaran +kiara +kiana +kian +khwaja +khurshid +khorshed +khordad +khloe +khayriyya +khayri +khayrat +khatijah +khara +khamisi +khaliq +khalilah +khalifa +khalida +khaleel +khajag +khadiga +kgosi +keziah +kezia +keysha +kevork +kevan +keturah +kettil +kestrel +kester +keshia +keshet +keshawn +keshaun +kerttu +kerstin +kerry +kerrie +kerri +kerneels +kermit +keri +kerenza +kerensa +keren-happuch +kerena +keoni +kenton +kentigern +kenta +kenshin +kenrick +kennith +kennet +kennard +kenna +kenji +kenith +kenina +ken'ichi +kenelm +kendrick +kendra +kendal +kenaniah +kenan +ken +ken +kelsie +kelsi +kelsey +kellie +kelli +kelleigh +kelia +kelemen +kelebek +kelda +keld +kelcey +kelan +kekoa +kekepania +keithia +keitha +keira +keiko +keighley +kegan +kees +keenan +keely +keelin +keeley +keeleigh +keelan +keegan +keara +keanu +kean +kazuo +kazuko +kazuki +kázmér +kazimir +kazimierz +kazimiera +kazimeras +kazia +kayode +kaylynn +kaylyn +kayly +kaylin +kaylie +kayley +kayleigh +kayleen +kaylee +kayleah +kayla +kayetan +kaycee +kay +kay +kawacatoose +kaveri +kausalya +katya +katy +katsuro +katsuo +katsu +katriona +katrine +katrina +katrijn +katrien +katri +kato +katlyn +katlego +katja +katinka +katina +katie +katida +katica +kathy +kathryn +kathrin +kathlyn +kathie +kathi +katherina +käthe +katharina +katey +katerina +katelynn +katelyn +katelin +katee +katashi +katarzyna +katarine +katarina +katarin +katariina +katana +katalin +kassy +kassidy +kassia +kassandra +kasimira +kasimir +kasia +kasi +kasey +kasandra +karyna +karrie +karolyn +károly +karolis +karoline +karolina +karoliina +karola +karly +karlene +karita +karissa +karina +karima +kari +kari +karesinda +karenza +karena +kareem +karcsi +karaugh +karan +karam +kapila +kapil +kapel +kanya +kanti +kanta +kaneonuskatew +kandajha +kamryn +kamilla +kamila +kamil +kamil +kameron +kamaria +kamala +kamal +kamal +kalysta +kalypso +kalyn +kalyani +kalyan +kalpana +kálmán +kallistrate +kallisto +kalliope +kallikrates +kallias +kalle +kalidas +kaley +kaleo +kaleigh +kaleb +kalea +kalani +kakalina +kajsa +kajetan +kaj +kaitlynn +kaitlyn +kaitlin +kaisa +kaimana +kailyn +kailey +kailee +kailash +kaija +kaia +kai +kai +kagiso +kaety +kaelee +kaelea +kae +kaden +kade +kacper +kaarlo +kaarle +kaarina +kaapro +kaapo +jytte +jyotsna +jyotsana +jyoti +juventas +juvela +juuso +juturna +jutte +jutta +justyna +justyn +justy +justina +jussi +jurij +juraj +juozas +junko +juniper +jumanah +jumana +jumaane +julyan +juliusz +julitta +juliska +julija +juliet +julianne +julianna +juliane +julián +júlia +juli +jules +jules +jukka +juho +juhani +juhana +juha +judyta +judite +judita +judit +judie +judi +judd +judah +jubal +jozua +józsua +józsi +józsef +jozo +jozefo +jozefa +jozef +joze +jozafat +joye +jowita +jowan +jovita +jove +jovanka +jovana +jovan +jouni +jouko +jotham +josue +josslyn +joss +jóska +josip +josif +joshawa +josh +joses +josephine +josephina +joselyn +josefina +josefa +josceline +joscelin +jory +jørn +jorma +jorie +jørgen +jörgen +jörg +jordyn +jordon +jordi +jordana +jordaan +jorck +jöran +joost +jooseppi +joord +joonas +joona +jools +jonty +jonquil +jonny +jonna +jonie +joni +joni +jonette +jonelle +jonathon +jónatan +jonatan +jónas +jonas +jonas +jonah +jóna +jón +jon +jon +jolyon +jolene +joleen +jolanta +jolánka +jolanda +jolana +jolán +jokum +johnie +johnathon +johnathan +johar +johano +jóhannes +johanneke +johanne +jóhanna +jóhann +johana +joetta +joep +joelle +joel +jody +jodie +jodi +jodene +jocosa +jocky +jockie +jock +jochjo +jochim +jochen +jochem +joceline +jocelin +jocasta +joby +jobeth +joash +joaquima +joão +joanna +joann +joandra +joana +joan +joan +joakim +joab +jitinder +jitendra +jitender +jiro +jirí +jirair +jinny +jin-ho +jindrich +jinan +jimmie +jimena +jilly +jillie +jillian +jia +jewell +jewel +jesusa +jesús +jessye +jessika +jessie +jessie +jessi +jessenia +jesse +jessamyn +jessamine +jessalyn +jess +jesper +jerzy +jerusha +jerrold +jerrod +jerrie +jerri +jerónimo +jerold +jeroen +jernej +jermaine +jerker +jericho +jeri +jeremiel +jeremias +jere +jerald +jera +jeptha +jepson +jephthah +jephtha +jep +jens +jenõ +jennifer +jennie +jenni +jenna +jenn +jenifer +jeni +jenessa +jenelle +jenci +jenaro +jenae +jena +jemmy +jemma +jem +jelka +jelena +jelani +jekaterina +jehu +jehoshaphat +jehoash +jehiel +jeffry +jeffery +jeetendra +jedrzej +jedidiah +jedidah +jed +jeannie +jeanna +jean-marie +jeanie +jeane +jean-baptiste +jeana +jean +jean +jazmine +jazmin +jaywant +jayson +jaynie +jayne +jayna +jaymes +jayme +jayma +jaylon +jaylin +jaylen +jaylee +jayla +jayel +jaye +jaydon +jayden +jayde +jayda +jaycob +jayanti +jayant +jaya +jay +jay +jaxon +jawdat +jawahir +javor +javed +javaid +jaumet +jathibiyya +jathbiyya +jaswinder +jasmyn +jasmine +jarvis +jarrod +jarred +jaroslawa +jaroslaw +jaropelk +jaron +jaromir +jaromil +jarogniew +jarod +jarmila +jarlath +jarl +jari +jareth +jarek +jared +jaquelyn +jaqueline +japheth +japeth +janusz +jános +jannine +jannike +jannick +janneke +janne +janne +jannah +janis +janis +janika +janice +jani +janez +janey +janette +janetta +janessa +janene +janelle +janella +janele +janel +janeka +janecek +jancsi +jancis +janan +janae +jana +jan +jan +jamsheed +jamshed +jamshad +jamison +jamila +jamil +jamie +jamie +jamey +jamesina +jameela +jameel +jamar +jamaar +jamaal +jalo +jalmari +jalila +jalen +jalal +jakub +jakov +jákob +jakki +jake +jakab +jaka +jairus +jair +jaime +jaime +jaidev +jaiden +jahzeel +jahleel +jahangir +jahan +jagoda +jago +jagjit +jagdish +jagannath +jaffar +jafet +jafar +jael +jadzia +jadyn +jadwiga +jadranko +jadranka +jadon +jaden +jada +jacqui +jacquetta +jacquelyn +jacobo +jacobina +jacoba +jaclyn +jacklyn +jackalyn +jacintha +jacinth +jacinta +jacinda +jachin +jacenty +jacek +jacaline +jabril +jabr +jabir +jabez +jabbar +jaap +jaana +jaakko +izzy +izz-ed-din +izz-al-din +izsák +izolda +izdihar +izabella +izabela +izaak +iyov +ixchel +iwona +ivonne +ivonette +ivo +ivette +ivanna +ivanka +ivana +ivah +iva +iuliana +iulian +iulia +iúile +itziar +itzhak +i'tidal +ithel +ithamar +itamar +italus +itala +istván +issur +issachar +issac +isolda +isocrates +isobel +ismene +'ismat +isma'il +islwyn +isleen +islay +iskender +isidora +isidor +isibéal +isiah +ishtar +ishmerai +ishmael +ishbel +iser +isebella +iseabail +isbel +isandro +isamu +'isam +isak +isaias +isaiah +isaia +isadore +isador +isabella +isabell +irmuska +irmtrud +irmtraud +irmhild +irmak +irja +irit +irinei +ireneusz +ireneus +iréné +irena +irén +ireland +iqbal +ippolito +ippolit +ipati +iosif +iorwerth +ionut +ionela +ionel +ione +ionatán +iona +íomhar +iomhar +iolyn +iolo +iole +iolanthe +iolana +iola +iokua +ioannis +ioannes +ioanna +ioann +ioana +ioan +inocencio +innokenti +innocenzo +inmaculada +inkeri +inka +ingvarr +ingvar +inglebert +inger +ingemar +ingegerd +ingegärd +inês +inés +indrani +indrajit +inderpal +inderjit +inbar +in'am +iñaki +inácio +imrus +imre +imogene +imogen +immaculata +immacolata +imma +imke +imhotep +imen +imani +imamu +imad +ima +ilsa +ilonka +ilma +illtyd +íllés +ilker +ilka +ilinca +ilie +ili +ilene +ileen +ileana +ilean +ildikó +ilbert +ilaria +ilari +ilar +ilana +ilan +ikraam +ikaika +ikaia +iisakki +iikka +iida +ihsan +ihab +ignatz +ignatius +ignasi +ignacz +ignacy +ignác +ignaas +ige +ife +ifan +ieuan +iestyn +iekika +iefan +idwal +idunn +idril +idoya +idowu +idony +idonea +idetta +idesta +idelle +íde +idan +ichiro +ibtisam +ibtihaj +ibraheem +ibolya +ibbie +iason +iarlaith +iarfhlaith +ianto +ianthina +ianthe +iantha +iancu +ian +iakopa +iain +iagan +hywel +hyun +hyram +hypatia +hymie +hyledd +hylda +hyginus +hyder +hyam +hyacintha +hyacinth +huw +husni +husayn +husam +husain +hupprecht +hùong +huo +hùng +huldah +hulda +hulda +hughie +huffie +hudes +huda +huan +hrothgar +hrodohaidis +hristina +hrafn +hoyt +howie +hovsep +hovhannes +houssam +hourig +houda +hotaru +hotaka +hosni +hoshi +hosea +horsa +hormazed +hormazd +horatius +horatia +horacio +hopkin +hopcyn +hooda +honour +honoria +honoratus +honorata +hòng +hollie +hokolesqua +hohepa +hodel +hjörtur +hjördis +hjalmar +hizkiah +hisham +hisein +hirsh +hiroshi +hiroko +hippolytos +hippolyta +hippocrates +hipolito +hinrik +hinrich +hind +hiltrude +hiltrud +hiltraud +hillevi +hildur +hildegard +hilary +hilaria +hikmat +hikaru +hikari +higini +hideaki +hiawatha +hezekiah +heydar +hewie +heulwen +heulog +hettie +hesiod +heshel +hershel +hersh +heron +herodotus +herodion +herod +hernando +hernán +hermolaos +hermokrates +hermogenes +hermenegildo +hermanni +herleif +herk +heriberto +heribert +herbie +herberto +herakles +herakleides +heracleitus +hepzibah +hepsie +hephzibah +hephaestus +henye +henryk +henrike +henning +hennie +henk +hengist +heng +hendel +henda +hena +hemming +hemi +helmuth +helmine +helmi +helmfried +helmfrid +helma +hellen +helladius +hellä +hella +helios +heliodoro +helge +helga +helfried +helene +heledd +helah +heitor +heino +heiner +heilyn +heilwig +heiko +heikki +heike +heidrun +heidi +heida +hege +hedy +hedvig +heddwyn +heckie +hecate +heber +heber +hebel +hebe +heaven +heather +headley +hazel +haze +hazael +haywood +haytham +haylie +hayley +hayleigh +haylee +hayfa +hayder +haydee +havva +havilah +havel +håvard +hava +haul +haukea +hatty +hattie +hatim +haskel +hasim +hashim +hasdrubal +hasan +harvie +harve +harun +haruko +hartwin +hartwig +hartmut +harriette +harrietta +harriett +harriet +harmonia +harmon +harland +harith +harinder +haraldur +hannu +hannes +hannelore +hanne +hanke +haniyya +hania +hani +hande +hananiah +hanan +hanaa +hana +hamza +hampus +hamo +hamnet +hamish +halvor +halvdan +halvard +halvar +halsten +halstein +hallvard +hallie +halle +halle +halldóra +halldór +halldor +hallam +halina +haley +haleigh +haldor +halcyone +halcyon +håkon +hakeem +håkan +hákan +hakan +hajnalka +hajnal +hajna +hajar +hailey +hailee +haifa +haider +haidee +haidar +hagop +hagir +haggai +hagar +hagan +hafza +hafsah +hafsa +hafiz +hafeez +hadyn +hadya +hadrian +hadjara +hadil +hadewych +hades +hadassah +hadar +hachiro +habiba +habakkuk +gyuri +gyula +gytha +gypsy +gyözö +györgyike +györgyi +györgy +gyöngyi +gyneth +gyles +gwythyr +gwynfor +gwyneth +gwyneira +gwynedd +gwyn +gwrtheyrn +gwladus +gwilym +gwillym +gwilim +gwilherm +gwil +gwenyth +gwenneth +gwenllian +gwenfrewi +gwenevere +gweneth +gwendolyn +gwendolen +gwenda +gwenaelle +gwen +gwawr +gwandoya +gwallter +gutxi +guto +gusztáv +gusta +gussie +gus +gus +gunvor +günter +gunter +gunnvor +gunnhild +gunne +gunilla +gunhilda +gunhild +gunda +gulzar +gülistan +gulistan +gülbahar +gulbahar +gül +gul +guiomar +guinevere +guillem +guilherme +guifré +guerino +guenevere +guendolen +guðrún +gudrun +guda +gualtiero +gualter +grzegorz +gry +grwn +grusha +gruffydd +gruffudd +gruffud +grover +grosvenor +gronw +gro +grizel +grisha +griogair +grigory +grigore +grigor +grier +grid +grgur +gretta +grethe +grete +greig +gregorios +gregg +gregers +greger +greg +greetje +greet +gréagóir +grazyna +graziano +graziana +gratian +granya +grania +gráinne +grahame +graeme +grady +gracja +gracilia +graciela +graciano +goyathlay +gowri +govind +govannon +govad +gotthold +gotthilf +gotthard +gottfrid +gotam +gösta +goronwy +gormlaith +gorka +gorden +gordana +gord +göran +goraidh +gopal +gonçalo +gonca +gomer +göker +goibniu +gofraidh +godric +godofredo +godfried +godelieve +gobnet +gobnata +gobnait +gobinet +gobind +gobán +gnaeus +glynn +glynis +glyndwr +glyn +glykeria +glukel +glorinda +glenys +glenna +glenice +glendower +glenda +glaw +glaucio +glanville +gladwyn +gladwin +gjurd +gjord +gjon +gjergj +gizi +gizella +giustino +giustina +giuliana +giuditta +gittel +gittan +gitta +githa +gisselle +gisella +gisela +gisbert +gisa +girish +giraldo +giovannetta +giosuè +giosetta +giorgino +giorgina +giorgia +gioachino +gintare +gintaras +ginny +ginnie +gina +gina +gilroy +gillis +gillian +gillespie +gilbertine +gilberta +gilah +gilad +gil +gil +gil +gijsbert +gijs +giedrius +giedre +gideon +gib +gianpiero +gianpaolo +gianna +gianmaria +gianmarco +gianluigi +gianluca +gianfranco +giampiero +giampaolo +giambattista +giada +giacobbe +giacinto +giacinta +giachetta +gia +ghufran +gheorghe +ghayth +ghassan +ghaliya +ghalib +ghadir +ghada +géza +gethsemane +gethin +gerwulf +gervasius +gervasio +gervase +gervas +gervaise +gervaise +gertruida +gertrudis +gertrudes +gertrúd +gertraud +gertie +gert +gershon +gershom +gerrard +gerontius +gerolt +gerolamo +gernot +gerlinde +gerhold +gergõ +gergely +gerfried +gereon +gerd +gerben +gerasimos +gerasim +gerardo +gerallt +geraldo +geraldine +geraint +georgo +georgiy +georgios +georgine +georgiana +georgi +georgeta +georgene +geordie +geoff +genoveffa +gennady +gennadiy +gennadius +gennadi +genista +genie +genghis +genevra +geneva +genette +gena +gemini +gemariah +geltrude +gellért +geffrey +geert +geena +gebhard +gebbert +gearóid +gearalt +gbemisola +gazsi +gazbiyya +gayle +gayla +gayelord +gaye +gawel +gawdat +gawain +gawahir +gavril +gavriil +gavrel +gavino +gautam +gauri +gauhar +gathbiyya +gasper +gasparo +gaspare +gáspár +garvan +garth +garsha +garry +garnette +garnet +garland +garfield +garey +gareth +gardenia +garbhán +ganesh +gamila +gamil +galya +gallagher +galina +galila +galia +galal +galadriel +gaja +gaila +gaia +gafar +gaetane +gaetana +gaenor +gaea +gae +gadar +gad +gabriele +gabriele +gabriela +gábriel +gabr +gábor +gabir +gabino +gabi +gabby +fyodor +fyfe +fulvia +fülöp +fulke +fulk +fulgenzio +fulgencio +fulbert +fuad +fryderyk +fruma +frode +fritjof +frigyes +frigg +friedhold +friedhelm +friederike +friedemann +friede +fridtjof +friðrika +fridrik +frideswide +fríða +freyr +freyde +freya +freja +freek +fredrik +fredrick +frederikke +frederica +freda +frea +frazier +fravardin +frauke +franziska +frantiska +frantisek +franseza +frannie +franklyn +frangag +frang +franciska +francisca +franci +francene +fouad +fotis +fortunata +fonsie +foma +folant +folami +flurry +florry +florrie +floriano +florianne +floriana +florette +floretta +florentina +florencio +floella +flo +fleuretta +flavian +flavia +flannan +flann +flaithrí +fizza +fitzroy +fishke +fishel +firoz +firmino +firdos +firdaus +fiorenzo +fiorenza +fioralba +fionola +fionnuala +fionntán +fionnlagh +fionnghuala +fionnghall +fionnbharr +fionn +fíona +fiona +fintan +finola +finnian +finnguala +finnén +finnegan +finnbar +finlay +fingall +finella +findlay +finbar +filomena +fillin +filipe +filipa +filip +filiberto +filib +filep +filbert +filat +filander +fikriyya +fikri +fihr +fife +fiera +fidelma +fidelia +fidda +fidan +fiachra +fiachna +ffraid +ffion +festus +fester +ferruccio +ferran +feroze +fernão +fernanda +fern +ferko +feri +fergus +fergie +fergal +ferenc +ferdy +ferdinanda +ferdie +ferapont +feofilakt +feodora +feodor +fenton +femke +femie +femi +feliu +felipa +felina +felim +felicity +felìcita +felicienne +felicien +felicie +felicidade +felicidad +feliciano +feliciana +felicia +feivel +feige +feidhlimidh +feidhlim +feidhelm +feichín +fedya +fedot +fedora +federigo +federica +fedelma +fedele +fechín +fearghas +fearghal +feardorcha +fearchar +fayza +fayvel +faysal +fayruz +fayiz +fawziyya +fawzi +fawn +faunus +fatin +fathiyya +fathi +fastred +faruq +farran +farrah +farquhar +farooq +farley +fariha +fareed +fardoos +faramond +faraj +farag +faolán +fannie +falk +fakhriyya +fakhri +fajra +faizel +faivish +faithe +fairuza +faigel +faiga +fahmida +fahima +fahim +fahd +fáelán +fae +fadl +fadila +fadia +fadi +faddei +fachtna +fabrizia +fabricio +fabó +fábián +faas +eztebe +ezar +ewen +evthalia +evstathios +evron +evpraksiya +evonne +évike +evie +evgeny +evgeniya +evgenia +evgeni +evfrosyne +evfemia +evette +evert +everitt +everild +everette +everett +everard +eveline +evelina +eveliina +eveleen +evdokiya +evdokia +evaristus +evaristo +evangelos +evangelina +evander +evander +evan +evalyn +evaline +evadne +eutychos +eutychius +eutropius +eutropio +eutropia +euthymius +euthalia +eustathios +eustaquio +eustacia +eustace +eusebius +eusebios +euripides +euphrosyne +euphranor +euphemia +eunice +eumelia +eulia +eulalia +eula +eugênio +eugênia +eugene +eudoxia +eudora +eudocia +euclid +euan +ettie +etta +ethne +ethna +ethelred +ethelinda +etheldreda +ethelbert +ethan +ethalyn +etelka +etel +étaín +eszti +eszter +esyllt +esteve +estevão +esteri +estella +estela +estefanía +estee +estéban +estavan +estachio +essie +essa +espiridion +esperanza +esperanta +esmund +esmé +esmaralda +esmail +esin +esi +eshe +eser +eseld +esaias +erzsi +erzsébet +eryn +erykah +erwan +ervins +ernõ +ernie +ernesto +ernesta +ern +ermtraud +ermolai +ermintrude +ermete +ermentraude +ermentraud +ermenegildo +ermenegilde +ermanno +erma +erle +erkki +erishkigal +ericka +erick +erica +erhard +erez +eren +erdmann +erdem +ercwlff +erastus +eran +eppie +epona +epiphany +epiktetos +epifanio +ephraim +epaphroditos +epaphras +eowyn +eos +eoin +eoghan +eoforhild +enyo +enya +enu +enrica +enric +enosh +enos +enola +enok +ennio +enitan +eniola +enid +enfys +enéas +endre +emyr +emrys +emory +emmie +emmet +emmerson +emmeline +emmanouil +emmaline +emlyn +emine +emiliana +emilian +emilia +emilee +emidio +emeric +emerald +emer +emely +emeline +emelina +emelie +emel +emanuele +emánuel +elyse +elwyn +elwood +elvira +elvina +elvin +elva +eluned +eluf +elspeth +elspet +elsdon +elsabeth +elroy +elrond +elric +elpis +elpidius +elpidio +elpida +eloy +elov +elouise +éloise +eloise +eloisa +eloi +elof +elodia +elnora +elnathan +elmo +elmas +elma +elly +ellis +ellis +ellie +elli +elli +ellar +elke +elke +elkanah +elkan +elizaveta +elizabeta +eliza +eliyahu +eliud +elita +elisud +elissa +elissa +elisheva +elisheba +eliseo +elisaveta +elisavet +elisabeta +elisabet +eliphelet +eliphalet +eliott +elinor +elina +elin +elikapeka +elijah +eliisa +eliina +eligio +eligia +eliezer +elidi +elicia +elian +elia +eli +elfriede +elfrida +elfreda +elfleda +elfa +eleutherius +eleuterio +elettra +eleri +eleonore +eleonoora +elenora +eleni +elene +elen +elek +eleftherios +eleftheria +eleazar +eleanore +eleanora +elea +eldreda +eldred +eldon +elda +elbert +elba +elario +elaine +elain +eladio +ekwueme +ekua +ekkehardt +ekin +ekewaka +ekaterina +eithne +eitan +eirwen +eirlys +eirik +eirian +eirene +eireen +eireann +eiran +eira +einrí +einion +einar +eimhir +éimhín +eilwen +eiluned +eilish +eilís +eilidh +eilert +eidel +eideard +eibhlín +éibhir +éibhear +ehud +eglantine +egil +egbert +efua +efstathios +efraín +efraim +efisio +efigênia +eeva +eetu +eero +eerikki +edythe +edytha +edyta +edwyna +edwyn +edwina +edwena +edweena +edvige +edurne +eduarda +edsel +edric +edom +edoardo +edna +edna +edmondo +edmonda +edmé +edite +edita +edit +edina +edie +edgardo +edelmira +edana +edan +eckehard +eckbert +ecaterina +ebrahim +ebony +eberhard +eberardo +eber +ebenezer +eben +ebbe +ebba +eavan +easter +eartha +earnestine +earline +earlene +earleen +earle +eanraig +ean +éamonn +eamon +eallair +ealisaid +ealdgyð +ealasaid +eadwig +eadburga +eadbhárd +éadaoin +eadan +eachann +éabha +dympna +dymphna +dylis +dyan +dwyn +dwayne +dvorah +duygu +dusty +dusan +durga +duong +dunyasha +dunya +dunstan +dunja +dung +dumitru +duleep +dulcie +dulcibella +duilio +duha +dudel +duci +dubhghlas +dubhghall +dubaku +duarte +duana +drystan +drusilla +drogo +driskoll +driscoll +drina +drew +dreda +draven +dragos +dragomir +dragica +dragana +dragan +draco +dovid +dov +dottie +dosia +doru +dorthy +dortha +dorris +dorottya +dorotheos +dorothea +dorotéia +dorotea +dorota +doron +dorofei +dorita +dorit +dorinda +dorika +doriano +doretta +dorete +dores +doreen +dorean +dorcas +doran +dóra +donny +donnie +donnchadh +donelle +donella +donatella +donata +donát +donar +donaldina +donalda +donal +donagh +domonkos +domitilla +dominika +dominik +dominick +dominga +domhnall +domen +dolph +dollie +doireann +doina +dodie +dobromil +dobrogost +dmitry +dmitriy +dmitrii +diya +dixie +divya +disgleirio +dirk +direnç +dipali +dipak +dionysus +dionysodoros +dionysius +dionysios +dionisio +diomedes +diokles +diogo +diogenes +diodotus +diodorus +dinis +dinesh +dimitar +dima +dima +dilys +dilwyn +dilwen +dilshad +dilip +dilbert +dikeledi +dijana +diggory +dieudonnée +dietmar +dietlinde +dietfried +dieter +dierk +diederik +diederick +diarmuid +diarmaid +diarmad +dianne +dianna +diann +diamantina +dhananjay +dezsõ +dezirinda +dezi +dewi +dewayne +devnet +devika +deven +devdas +devdan +devan +dev +detta +detlef +desya +destiny +destinee +desta +despoina +desislava +desislav +desi +deshawn +deshaun +deryn +deryck +derya +dervla +dervila +derren +dermot +dermid +derick +derek +deòrsa +deonne +deòiridh +deodan +denzil +denzel +deniz +denisa +deniece +denice +denholm +dénes +dene +dena +demyan +demostrate +demosthenes +demon +demetrius +demetrio +demetria +demeter +demeter +demelza +dema +delyth +delwyn +delshad +delroy +delphinia +delphina +delphia +deloris +delores +delora +delmar +delma +delilah +delicia +delice +delia +delfina +delbert +delaiah +deja +deitra +deirdre +deirbhile +deiniol +deimos +deidre +deidra +deforrest +deforest +deepali +deepak +deena +deemer +deeann +declan +decimus +decima +decebal +debra +debdan +debby +debbi +deasún +dearbháil +deanne +deangelo +deandre +deana +dazhdbog +dazbog +dayo +dayna +dayaram +dawud +dawid +davinia +davina +davin +davide +davida +dávid +davey +daveth +davena +dave +daud +dassah +daryl +darya +darrin +darren +darrell +darrel +darnell +darlene +darleen +darla +darja +darina +darin +darien +dariea +darian +daren +darell +dareia +darden +darach +dara +dara +dara +daphne +danya +danuta +danut +dannie +danita +danilo +danika +daniil +daniella +daniele +daniela +dániel +danica +dania +danette +dand +danail +dana +dana +dan +dan +damion +damiano +damiana +damian +damhnait +damayanti +damaris +dalya +dalibor +dalia +daley +dalal +dakarai +daividh +daithí +dáiríne +dáire +daina +daichi +dàibhidh +dagrun +dagny +dagmar +dagfinn +dagda +dafydd +dafne +daffodil +daedalus +dacre +czeslaw +czenzi +czcibor +cystenian +cyrilla +cyriacus +cyriaca +cyra +cynefrið +cyneburga +cyndi +cymone +cybill +cybele +cyan +cupid +cunobelinus +cunégonde +culhwch +cuchulainn +cuc +cuauhtemoc +cuán +ctibor +csilla +crystin +cruzita +cronus +crofton +crocifissa +crocetta +cristóvão +cristoforo +cristián +cristian +cristen +crispian +crina +crescenzo +crescentius +crescentia +cree +cowessess +cowal +courtney +costica +costel +costanzo +costantino +cosmina +cosmin +cosma +coskun +corynn +cory +cortney +corrine +corrie +corneliu +cornélio +cornel +cormag +cormac +corinna +corine +corina +corin +corie +coriander +coretta +coreen +cordula +coos +consuela +constanza +constantina +constantijn +constantia +constanta +consolata +connie +conner +conn +conleth +conchobhar +concetta +concepción +conall +comhghán +comhghall +comgan +comgal +columbo +columbine +columbano +columban +columba +colum +colton +colten +colombina +colombain +colmán +collyn +colleen +coline +colene +coleen +colby +cokkie +coinneach +coilean +codie +coby +cnut +cnaeus +clytia +clytemnestra +clovia +clover +clotilda +clothilde +clodagh +clitus +clíona +clíodhna +clifton +cleve +cletus +cleto +cletis +cletes +cleopatra +cleon +cleo +clementine +clementina +clemency +clematis +clelia +cleisthenes +cleena +cledwyn +claudiu +clarity +clarinda +clarice +claribel +clarette +clancy +citlali +cissy +ciro +cirino +cirillo +ciril +ciriaco +ciprian +cionaodh +cinzia +cindy +cindra +cinderella +cináed +cillín +cillian +cilka +cili +cierra +ciera +cicely +cibor +ciaran +ciara +ciannait +cianán +cian +chyna +chylan +chucho +chrystal +chryssa +chryseis +chrysanthos +chrysanthe +chrysanta +christoph +christoffer +christobel +christin +christianne +christiaan +christer +christen +christelle +christal +christabelle +christabella +christabel +chrissy +chrissie +chonsie +chloris +chloe +chizoba +chiumbo +chita +chip +chile +chikako +chika +chiela +chibuzo +chiarina +cheyanne +chevonne +chetana +chesley +chesed +cheryl +chernobog +cherish +cherise +cherilyn +cherie +cherice +cheri +cherette +chenda +chenaniah +chelsie +chelsey +chelo +chelle +chaz +chayim +chaya +chava +chauncey +chatzkel +chasity +charo +charna +charmian +charmaine +charlotta +charline +charlene +charla +charita +charissa +charis +charalampos +chantelle +chantel +channing +channah +chania +chandrakanta +chandrakant +chander +chandana +chandan +chanda +chanah +chalice +chalchiuhticue +chaim +chad +cezar +cesaire +cerys +cerridwyn +cernunnos +ceridwen +ceri +ceres +ceren +cerberus +cepheus +cephas +cephalus +cenek +celyn +celso +celio +celino +celia +celestine +celandine +ceinwen +cees +cedric +cedar +cecily +cecilio +cecilija +cecília +cecelia +cebrián +cearra +cearbhall +ceara +ceallagh +ceallach +cayetano +catriona +catrina +catrin +catina +cathryn +cathleen +catherina +catharine +cathaoir +cathán +cathal +cathair +cate +cätälin +catahecassa +cassiopea +cassie +cassian +cassia +cassarah +cassandra +casimiro +carys +caryn +caryl +carwyn +carrol +carrie +carreen +carran +carpus +carolyn +carola +carmi +carmella +carmelita +carlyn +carly +carlitos +carlito +carlisa +carlie +carley +carlene +carita +carissa +carey +caren +careen +cardea +carbry +carbrey +caratacus +caramia +caradog +caradoc +caprina +capricia +caolan +caoimhín +caoimhe +caoilfhionn +caoilainn +canute +candice +candelaria +cande +canan +camryn +camron +cammie +camilo +camillus +camellia +camelia +cambria +calvino +calvagh +calum +calogero +calogera +callistus +callisto +callisto +callista +callie +callias +callahan +calix +calisto +calista +caleigh +calbhach +calanthia +calanthe +cajsa +caitrìona +caitríona +caitria +caitlyn +caitlin +cairbre +cainan +cailin +caileigh +cailean +cahir +cahal +caetlin +caetano +caerwyn +caelie +caelestis +caedmon +caecilia +cadwgawn +cadwalader +cadoc +cadfan +cadfael +cadeyrn +caden +cadell +cäcilia +bysshe +byrne +byelobog +buz +burkhard +burgundy +burcu +bulut +bulus +buffy +budur +bryson +bryony +brynne +brynn +brynmor +brynja +bryn +bryanna +bryana +brunhilde +brunella +bronwyn +bronwen +bronte +bronislawa +bronislaw +bronislava +bronislav +bronagh +brónach +brody +brodie +brock +brittney +brittany +brittani +britta +britt +britney +briscoe +briony +brigitta +brigit +brigid +brighid +brielle +bridie +bridgette +bridget +bríd +briar +brianne +brianna +briana +briallen +brennan +brenna +brendon +brenden +breindel +breanne +breanna +breann +breandán +breana +brayden +braxton +bratumil +branwen +brannon +branko +branka +branislava +branislav +branimir +branden +branda +bran +bran +braith +braidy +braiden +braelyn +braeden +braden +brack +bozydar +bözsi +bozidar +boyce +boulos +boudicca +botum +botros +bosmat +bosede +borya +börje +borislav +borghild +borbála +bopha +bonifaz +boleslawa +boleslaw +boleslava +bolek +boldizsár +bolanle +bojana +bojan +boitumelo +boipelo +bohuslava +bohumir +bohdan +boguslaw +bogumil +boghos +bogdana +bodil +bobbie +bobbi +boaz +boadicea +bo +bo +blythe +bluma +blodwen +blodeuyn +blodeuwedd +blejan +blazej +bláthnat +bláthnaid +blanid +blanch +bláithín +blaine +blaanid +bjorne +björn +bjoern +bjarne +bithiah +birgitta +birgit +birger +binyamin +bine +bindy +bilhah +bijoy +bijay +bienvenida +bidelia +biddy +bich +bice +bibiana +biagino +biaggio +bhàtair +bhaskar +bharat +bhaltair +beylke +bevis +beverley +bettye +bettino +bettina +bettina +bettie +betsy +betrys +bethuel +bethney +bethel +bethany +bethania +bethan +beryl +berwyn +bertrando +bertoldo +bertók +bertina +bertalan +berry +berry +bernt +berniece +bernie +bernice +bernetta +bernát +bernat +bernardine +bernardetta +bernadine +bernadett +berna +berker +berkant +berjouhi +bergljot +bergliot +berenice +berach +beppe +beowulf +bento +bente +benoite +benno +bennie +benjy +benjamín +benita +benigno +benigna +beniamino +bengta +bengt +benesh +benedito +benedita +benedikte +benedikta +benedikt +benedicta +benedetta +bendt +bendiks +bence +benaiah +belphoebe +bellona +beli +belgin +belenus +bekki +beitris +beileag +béibhinn +behruz +behram +behnam +beelzebub +bedwyr +bedros +bedrich +bedivere +bedelia +becky +beckah +becka +becca +bébinn +bébhionn +bébhinn +beavis +beatriz +beatrix +beatriu +beathan +beathag +beáta +bearach +baylee +bautista +batyah +batya +bathsheba +basya +basu +bastiaan +bassem +basmath +basma +basim +basilio +basia +basia +bashemath +bashe +basemath +basajaun +bartosz +bartlomiej +bartholomaus +bartel +bartal +barrie +barret +barnaby +barnabás +barlaam +barbro +barbra +barbora +bárbara +barb +barakat +barak +barabal +baqir +baptist +bao +bao +banu +balthasar +baltazar +bálint +baldric +baldomero +baldo +baldev +balder +baldassare +balázs +bala +báirbre +bailee +baila +bahram +bahman +bahiyya +bahija +bahij +bahiga +babur +babs +babirye +baber +babatunde +babak +babajide +baako +azure +azura +azuolas +azucena +azubah +azrael +'aziz +azeneth +azariah +azaria +azarel +azalea +aysun +aysel +ayomide +ayo +ayn +aylmer +ayla +ayla +ayla +ayishah +aygül +ayesha +ayelet +aydin +ayala +aya +axelle +awstin +awotwi +avrum +avraham +avra +avner +avitus +avishai +aviram +avidan +avia +avi +averill +avelina +avedis +avdotya +ava +ava +austyn +ausra +aureole +aurelius +aurelien +aurelia +aurangzeb +aulay +aukusti +augusts +augustijn +august +august +audrea +audra +audra +audley +audie +aubree +auberon +atiya +atílio +atilio +atieno +athenias +athena +athanasius +athanasios +athanasia +athanas +atefeh +ataullah +atarah +atara +ata +asya +asunción +astrophel +astrithr +astraea +astarte +assunta +assumpta +assumpció +aspen +aspasia +asma +asløg +aslög +asli +aslaug +asklepios +asklepiades +asim +asia +ashtoreth +ashtad +ashoka +ashok +ashlynn +ashlyn +ashling +ashlie +ashleigh +ashlee +asherah +asha +asenath +aseem +ásdís +asbjörn +asaf +as'ad +asad +åsa +arzu +aryana +arwen +arvo +arvid +arvel +arundhati +artúr +artturi +arttu +artemisios +artemis +artemidoros +artair +arseni +arron +árpád +áron +aroldo +aroha +arnie +arne +arne +arnau +arnaldo +armo +armelle +armando +arline +arlie +arlene +arleen +arkell +arkady +arkadios +arjun +arjan +arisztid +arisu +aristotle +aristophanes +aristomache +aristodemos +aristocles +aristides +arista +arisha +arina +arik +aries +arienne +ariella +aric +arianrhod +arianne +arianna +ari +ari +argyros +argyris +arevig +arethusa +areli +arduino +ardghal +ardashir +ardal +archippos +archimedes +archelaus +arcelia +arcangelo +aravinda +arata +arantxa +aranrhod +aranka +araminta +aragorn +arachne +aracely +aracelis +araceli +april +apphia +apostolos +apostolis +apolonija +apollonios +apollodoros +apollinariya +apollinaris +apolinar +apikalia +aphrodisios +aphrodisia +aphra +aonghus +aonghas +aoife +aoide +aoibhín +aoibheann +aodhán +aodh +anya +anwer +anwen +anushka +anupam +anunciación +antwan +antun +antti +antono +antonino +antonina +antonija +antonietta +antonie +antonette +antje +antipater +antigonus +anthea +antero +anshel +ansgar +anselmo +anselma +anselm +anraí +anouska +anoush +anona +annuska +annunciata +annmarie +annis +annikki +annika +anniina +annice +annetta +annemarie +annelise +annelie +anneli +anneke +anneka +annas +annalisa +annabelle +ankur +anke +anka +anjelica +anisim +anise +anisa +aniruddha +anima +anima +anikó +aniketos +anika +anicetus +anica +anibal +angyalka +angharad +angerona +angelle +angelita +angelika +angelia +ángela +anfisa +aneurin +anemone +anelie +aneirin +andronikos +andromeda +andromache +androcles +andriy +andris +andrina +andrija +andries +andriana +andreja +andrej +andreia +andreea +andrea +andrea +andraste +andrás +andras +andra +andor +ander +andela +anchjo +anca +anaxagoras +anatu +anatoly +anatolius +anatoli +anath +anath +anasztázia +anasztáz +anastasius +anastasios +anastasio +anastas +anastacia +anass +anaru +anantha +ananth +ananta +ananias +anani +anand +anan +anan +anakoni +anakin +anaitis +anahita +anahid +anacletus +anacleto +amynta +amyas +amrita +amrit +amparo +ammiel +amity +amittai +amita +amira +amir +amir +aminda +amina +amilia +amika +amias +amhlaoibh +amhlaidh +amethyst +americo +amenhotep +amelia +amedeus +amedea +ambrus +ambrosio +ambrosine +ambrosia +ambrogino +ambra +amaya +amato +amariah +amardad +amaranta +amani +amando +amalthea +amalric +amália +amala +amal +amal +amadi +amadi +amabel +alzbeta +alyx +alyusha +alyssia +alyssa +alyson +alysha +alys +alyona +alyce +alya +alwyn +alwilda +alvis +alvina +alvilda +alvena +álvaro +alvah +aludra +alte +alphonzo +alphonsus +alphonso +alphaeus +alpertti +alp +alondra +alon +alojz +aloisio +aloisia +alois +alodia +almudena +almira +almas +allyson +allyn +allycia +ally +allegra +allannah +aliza +aliz +aliyah +alisya +alister +alisia +alisha +alina +alina +aliisa +aliah +algar +alfsigr +alfreda +alfréd +alfonsina +alfhild +alfeo +alexus +alexius +alexis +alexis +alexina +alexia +alexej +alexei +alexandru +alexandrina +alexandria +alexandrea +alexandr +alexa +alethea +aletha +aleta +alessio +alessia +alessandra +alessa +alesha +ales +alenka +alene +aleksi +aleksei +aleksanteri +aleksandro +aleksandrina +aleksandra +aleksandr +aleksander +aleksandar +alejo +alejandro +alejandra +aleit +aleesha +aled +alechjo +alease +aldrick +alcyone +alcippe +alcaeus +albina +alberic +alayna +alastríona +alastar +alastair +alasdair +alaois +alannis +alannah +alanna +alanis +alana +alaina +alaba +akulina +akua +aku +aksinya +aksel +akosua +akoni +akiva +akira +akio +akinyi +akilina +akilah +akiko +akhil +akemi +akeem +akanksha +akamu +akakios +ajith +ajit +ajeet +aitor +aithne +aislinn +aisling +aislin +'aisha +aiolos +aintzane +ainslie +ainsley +aino +aingeal +áine +aindriú +aindréas +aindrea +aina +aimo +ailsa +ailpein +ailís +ailín +ailill +aileen +aileas +ailbhe +aikaterine +aignéis +aiden +aidan +aias +ai +ai +ahuva +ahura +ahtahkakoop +ahriman +ahmet +aharon +ahab +agustín +águeda +agrona +agrippina +agrafena +ágota +ágoston +agostina +agnieszka +agnethe +agneta +agnessa +ágnes +aglea +aglaya +aglaia +ági +aghavni +aggie +agaue +agathangelos +agapios +agafya +afua +afra +afonso +afon +afolabi +afia +afanen +afanasy +afanasi +aesop +aeson +aeschylus +æsc +aeronwy +aeronwen +aeron +aeron +aeolus +aengus +aemilia +ælred +aella +ælfwine +aegle +æðelþryð +æðelstan +æðelred +æðelmær +æðelfrid +æðelbert +adwoa +adrienn +adrianne +adrianna +adrián +adriaan +adria +adrastos +adrasteia +adorján +adorinda +adonijah +adonia +adonai +adolphus +adolfo +adlai +adjoa +aditya +adisa +adino +adina +adil +adi +adhiambo +adhara +adena +adem +adelmar +adelle +adelia +adelheid +adelaide +adela +adel +addy +addie +adara +adão +adán +adamo +adamina +ádám +adalia +adalheid +adalberto +adah +acke +achilles +achieng +achan +achaicus +acantha +acacius +absolon +abner +'abla +abital +abishai +abisai +abiram +abimael +abilene +abijah +abihu +abigayle +abiel +abidemi +abidan +abiah +abhay +abeni +abena +abelone +ábel +abegail +abednego +abdul-rahman +abdul-aziz +abd-al-rahman +abd-al-qadir +abd-al-malik +abd-allah +abd-al-aziz +abby +abbie +'abbas +abbán +abaddon +aatu +aatto +aatami +aarón +aarne +aaren +aapo +aapeli +aaliyah diff --git a/src/console.py b/src/console.py index 712cf25..0550f8d 100644 --- a/src/console.py +++ b/src/console.py @@ -1,3 +1,21 @@ +#!/usr/bin/python3 +# -*- coding: utf-8 -* +# Copyright (C) 2017 Tetras Libre <contact@Tetras-Libre.fr> +# Author: Beniamine, David <David.Beniamine@Tetras-Libre.fr> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + from zxcvbn import zxcvbn from dateutil.parser import parse import getpass diff --git a/src/css/style.css b/src/css/style.css new file mode 100644 index 0000000..d1241c7 --- /dev/null +++ b/src/css/style.css @@ -0,0 +1,149 @@ +body { + font-family: sans; + width: 90%; + max-width : 75em; /*1200px*/ + height: 100%; + margin: auto; + color: #2e3436; + background-color:#E5E4E2; + padding : 1%; +} +/*Boite principale*/ +div#box { + background-color:#ffffff; + padding: 0% 2% 3% 2%; + border-radius: 0.7em; +} +div#log{ + padding-left: 10%; + width : 90%; + max-height : 400px; +} +div.scroll{ + overflow: auto; +} +/*Contenu*/ +div#content { + padding: 1.5% 3%; +} + +div.hllinks{ + padding: 1% 3%; +} + + +div.right{ + float:right; + width:49%; +} +div.left{ + float:left; + width:49%; +} +/* Footer*/ +div#foot { + color: gray; + font-size: small; + border-top : thin solid; + margin : 5%; +} + + +/* images floattantes*/ +div#logos img{ + max-height : 100px; + max-width : 150px; + vertical-align: middle; +} +img.middle { + vertical-align:middle; +} +img.middle-right { + vertical-align:middle; + float:right; +} +img.right{ + float : right; + border : thin solid; + box-shadow: 0.1em 0.1em 0.2em 0.2em #bbbabb; + margin : auto auto 5% 5%; + padding : 0.1em; +} +/*Comportement des liens*/ +a +{ + color: #2e3436; +} + +a:visited +{ + color : #aaa9aa; +} +a:hover +{ + text-decoration : underline ; + color : #888788; +} +/* Titres*/ +div.titlebox +{ +} +div#Title +{ + text-align : center; + font-weight : bold ; + background-color : #eeecee; + border-radius : 0.5em; + padding : 1%; + margin: 5% 20%; +} +h1 +{ + text-align : center; + font-weight : bold ; + background-color : #eeecee; + border-radius : 0.5em; + padding : 2%; + margin: 5% 20% 10% 20%; +} +h2 +{ + font-size : large; + text-align:center; + background-color : #eeecee; + border-radius : 0.5em; + margin : 5% 25%; + padding : 1.5%; +} +h3 +{ + font-size : large; + text-align: left; + margin : 5%; +} +/* text*/ +.right { + text-align : right; +} + +/*tables*/ + +table { + width: 100%; + text-align : left; +} + +th { + height: 50px; + background-color: #eeecee; +} +th, td { + padding: 15px; + border-bottom: 1px solid #ddd; +} +tr:nth-child(odd){ + background-color: #f2f2f2 +} +tr:hover { + background-color: #f5f5f5 +} diff --git a/src/img/tl.png b/src/img/tl.png new file mode 100644 index 0000000000000000000000000000000000000000..407475006bced422d042a615caafb494865a83cb GIT binary patch literal 47186 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 E0O_45R{#J2 literal 0 HcmV?d00001 diff --git a/src/index.py b/src/index.py index 95140a8..e97d57a 100755 --- a/src/index.py +++ b/src/index.py @@ -1,5 +1,20 @@ #!/usr/bin/python3 # -*- coding: utf-8 -* +# Copyright (C) 2017 Tetras Libre <contact@Tetras-Libre.fr> +# Author: Beniamine, David <David.Beniamine@Tetras-Libre.fr> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. import cgi import re @@ -65,14 +80,21 @@ html += """ </body> <foot> <p> -Logiciel développé par Tetras Libre, distribué sous Licence AGPL V3.0. +<a href="https://gitlab.tetras-libre.fr/tetras-libre/tetras-pass">Tetra Pass</a> est Logiciel développé par +<a href="http://tetras-libre.fr">Tetras Libre</a>, +distribué sous Licence <a href="https://www.gnu.org/licenses/agpl.html">AGPL</a> V3.0. </p> <p> -Le testeur de mot de passe est basé sur la bibliothèque zxcvbn-python distribué sous licence MIT. +Le testeur de mot de passe est basé sur la bibliothèque +<a href="https://github.com/dwolfhub/zxcvbn-python">zxcvbn-python</a> distribué sous licence +<a href="https://mit-license.org/">MIT</a>. +</p> +<p> +Les listes de mots et noms français proviennent de <a href="http://www.lexique.org/">lexique.org</a> +et sont distribués sous licence <a href="https://www.gnu.org/licenses/gpl-3.0.txt">GPL</a>. </p> </foot> </html> """ print(html) - diff --git a/src/server.py b/src/server.py index abe4576..d9103d2 100644 --- a/src/server.py +++ b/src/server.py @@ -1,3 +1,21 @@ +#!/usr/bin/python3 +# -*- coding: utf-8 -* +# Copyright (C) 2017 Tetras Libre <contact@Tetras-Libre.fr> +# Author: Beniamine, David <David.Beniamine@Tetras-Libre.fr> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + from http.server import HTTPServer from http.server import CGIHTTPRequestHandler import cgi diff --git a/src/style.css b/src/style.css new file mode 100644 index 0000000..d1241c7 --- /dev/null +++ b/src/style.css @@ -0,0 +1,149 @@ +body { + font-family: sans; + width: 90%; + max-width : 75em; /*1200px*/ + height: 100%; + margin: auto; + color: #2e3436; + background-color:#E5E4E2; + padding : 1%; +} +/*Boite principale*/ +div#box { + background-color:#ffffff; + padding: 0% 2% 3% 2%; + border-radius: 0.7em; +} +div#log{ + padding-left: 10%; + width : 90%; + max-height : 400px; +} +div.scroll{ + overflow: auto; +} +/*Contenu*/ +div#content { + padding: 1.5% 3%; +} + +div.hllinks{ + padding: 1% 3%; +} + + +div.right{ + float:right; + width:49%; +} +div.left{ + float:left; + width:49%; +} +/* Footer*/ +div#foot { + color: gray; + font-size: small; + border-top : thin solid; + margin : 5%; +} + + +/* images floattantes*/ +div#logos img{ + max-height : 100px; + max-width : 150px; + vertical-align: middle; +} +img.middle { + vertical-align:middle; +} +img.middle-right { + vertical-align:middle; + float:right; +} +img.right{ + float : right; + border : thin solid; + box-shadow: 0.1em 0.1em 0.2em 0.2em #bbbabb; + margin : auto auto 5% 5%; + padding : 0.1em; +} +/*Comportement des liens*/ +a +{ + color: #2e3436; +} + +a:visited +{ + color : #aaa9aa; +} +a:hover +{ + text-decoration : underline ; + color : #888788; +} +/* Titres*/ +div.titlebox +{ +} +div#Title +{ + text-align : center; + font-weight : bold ; + background-color : #eeecee; + border-radius : 0.5em; + padding : 1%; + margin: 5% 20%; +} +h1 +{ + text-align : center; + font-weight : bold ; + background-color : #eeecee; + border-radius : 0.5em; + padding : 2%; + margin: 5% 20% 10% 20%; +} +h2 +{ + font-size : large; + text-align:center; + background-color : #eeecee; + border-radius : 0.5em; + margin : 5% 25%; + padding : 1.5%; +} +h3 +{ + font-size : large; + text-align: left; + margin : 5%; +} +/* text*/ +.right { + text-align : right; +} + +/*tables*/ + +table { + width: 100%; + text-align : left; +} + +th { + height: 50px; + background-color: #eeecee; +} +th, td { + padding: 15px; + border-bottom: 1px solid #ddd; +} +tr:nth-child(odd){ + background-color: #f2f2f2 +} +tr:hover { + background-color: #f5f5f5 +} diff --git a/src/test_pass.py b/src/test_pass.py index 7595cc6..9eb55fc 100644 --- a/src/test_pass.py +++ b/src/test_pass.py @@ -1,3 +1,21 @@ +#!/usr/bin/python3 +# -*- coding: utf-8 -* +# Copyright (C) 2017 Tetras Libre <contact@Tetras-Libre.fr> +# Author: Beniamine, David <David.Beniamine@Tetras-Libre.fr> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + import os from zxcvbn import zxcvbn from zxcvbn.matching import add_frequency_lists -- GitLab