<?php
namespace Faker\Provider\pl_PL;
/**
* Most popular first and last names published by Ministry of the Interior:
*
* @see https://msw.gov.pl/pl/sprawy-obywatelskie/ewidencja-ludnosci-dowo/statystyki-imion-i-nazw
*/
class Person extends \Faker\Provider\Person
{
protected static $lastNameFormat = [
'{{lastNameMale}}',
'{{lastNameFemale}}',
];
protected static $maleNameFormats = [
'{{firstNameMale}} {{lastNameMale}}',
'{{firstNameMale}} {{lastNameMale}}',
'{{firstNameMale}} {{lastNameMale}}',
'{{title}} {{firstNameMale}} {{lastNameMale}}',
'{{firstNameMale}} {{lastNameMale}}',
'{{title}} {{title}} {{firstNameMale}} {{lastNameMale}}',
];
protected static $femaleNameFormats = [
'{{firstNameFemale}} {{lastNameFemale}}',
'{{firstNameFemale}} {{lastNameFemale}}',
'{{firstNameFemale}} {{lastNameFemale}}',
'{{title}} {{firstNameFemale}} {{lastNameFemale}}',
'{{firstNameFemale}} {{lastNameFemale}}',
'{{title}} {{title}} {{firstNameFemale}} {{lastNameFemale}}',
];
protected static $firstNameMale = [
'Adam', 'Adrian', 'Alan', 'Albert', 'Aleks', 'Aleksander', 'Alex', 'Andrzej', 'Antoni', 'Arkadiusz', 'Artur',
'Bartek', 'Błażej', 'Borys', 'Bruno', 'Cezary', 'Cyprian', 'Damian', 'Daniel', 'Dariusz', 'Dawid', 'Dominik',
'Emil', 'Ernest', 'Eryk', 'Fabian', 'Filip', 'Franciszek', 'Fryderyk', 'Gabriel', 'Grzegorz', 'Gustaw', 'Hubert',
'Ignacy', 'Igor', 'Iwo', 'Jacek', 'Jakub', 'Jan', 'Jeremi', 'Jerzy', 'Jędrzej', 'Józef', 'Julian', 'Juliusz',
'Kacper', 'Kajetan', 'Kamil', 'Karol', 'Kazimierz', 'Konrad', 'Konstanty', 'Kornel', 'Krystian', 'Krzysztof', 'Ksawery',
'Leon', 'Leonard', 'Łukasz', 'Maciej', 'Maks', 'Maksymilian', 'Marcel', 'Marcin', 'Marek', 'Mariusz', 'Mateusz', 'Maurycy',
'Michał', 'Mieszko', 'Mikołaj', 'Miłosz', 'Natan', 'Nataniel', 'Nikodem', 'Norbert', 'Olaf', 'Olgierd', 'Oliwier', 'Oskar',
'Patryk', 'Paweł', 'Piotr', 'Przemysław', 'Radosław', 'Rafał', 'Robert', 'Ryszard', 'Sebastian', 'Stanisław', 'Stefan', 'Szymon',
'Tadeusz', 'Tomasz', 'Tymon', 'Tymoteusz', 'Wiktor', 'Witold', 'Wojciech',
];
protected static $firstNameFemale = [
'Ada', 'Adrianna', 'Agata', 'Agnieszka', 'Aleksandra', 'Alicja', 'Amelia', 'Anastazja', 'Angelika', 'Aniela', 'Anita',
'Anna', 'Anna', 'Antonina', 'Apolonia', 'Aurelia', 'Barbara', 'Bianka', 'Blanka', 'Dagmara', 'Daria', 'Dominika', 'Dorota',
'Eliza', 'Elżbieta', 'Emilia', 'Ewa', 'Ewelina', 'Gabriela', 'Hanna', 'Helena', 'Ida', 'Iga', 'Inga', 'Izabela',
'Jagoda', 'Janina', 'Joanna', 'Julia', 'Julianna', 'Julita', 'Justyna', 'Kaja', 'Kalina', 'Kamila', 'Karina', 'Karolina',
'Katarzyna', 'Kinga', 'Klara', 'Klaudia', 'Kornelia', 'Krystyna', 'Laura', 'Lena', 'Lidia', 'Liliana', 'Liwia', 'Łucja',
'Magdalena', 'Maja', 'Malwina', 'Małgorzata', 'Marcelina', 'Maria', 'Marianna', 'Marika', 'Marta', 'Martyna', 'Matylda',
'Melania', 'Michalina', 'Milena', 'Monika', 'Nadia', 'Natalia', 'Natasza', 'Nela', 'Nicole', 'Nikola', 'Nina',
'Olga', 'Oliwia', 'Patrycja', 'Paulina', 'Pola', 'Roksana', 'Rozalia', 'Róża', 'Sandra', 'Sara', 'Sonia', 'Sylwia',
'Tola', 'Urszula', 'Weronika', 'Wiktoria', 'Zofia', 'Zuzanna',
];
protected static $lastNameMale = [
'Adamczyk', 'Adamski', 'Andrzejewski', 'Baran', 'Baranowski', 'Bąk', 'Błaszczyk', 'Borkowski', 'Borowski', 'Brzeziński',
'Chmielewski', 'Cieślak', 'Czarnecki', 'Czerwiński', 'Dąbrowski', 'Duda', 'Dudek', 'Gajewski', 'Głowacki', 'Górski', 'Grabowski',
'Jabłoński', 'Jakubowski', 'Jankowski', 'Jasiński', 'Jaworski', 'Kaczmarczyk', 'Kaczmarek', 'Kalinowski', 'Kamiński', 'Kaźmierczak',
'Kołodziej', 'Konieczny', 'Kowalczyk', 'Kowalski', 'Kozłowski', 'Krajewski', 'Krawczyk', 'Król', 'Krupa', 'Kubiak', 'Kucharski', 'Kwiatkowski',
'Laskowski', 'Lewandowski', 'Lis', 'Maciejewski', 'Majewski', 'Makowski', 'Malinowski', 'Marciniak', 'Mazur', 'Mazurek', 'Michalak',
'Michalski', 'Mróz', 'Nowak', 'Nowakowski', 'Nowicki', 'Olszewski', 'Ostrowski', 'Pawlak', 'Pawłowski', 'Pietrzak', 'Piotrowski', 'Przybylski',
'Rutkowski', 'Sadowski', 'Sawicki', 'Sikora', 'Sikorski', 'Sobczak', 'Sokołowski', 'Stępień', 'Szczepański', 'Szewczyk', 'Szulc', 'Szymański', 'Szymczak',
'Tomaszewski', 'Urbański', 'Walczak', 'Wasilewski', 'Wieczorek', 'Wilk', 'Wiśniewski', 'Witkowski', 'Włodarczyk', 'Wojciechowski',
'Woźniak', 'Wójcik', 'Wróbel', 'Wróblewski', 'Wysocki', 'Zając', 'Zakrzewski', 'Zalewski', 'Zawadzki', 'Zieliński', 'Ziółkowski',
];
protected static $lastNameFemale = [
'Adamczyk', 'Adamska', 'Andrzejewska', 'Baran', 'Baranowska', 'Bąk', 'Błaszczyk', 'Borkowska', 'Borowska', 'Brzezińska',
'Chmielewska', 'Cieślak', 'Czarnecka', 'Czerwińska', 'Dąbrowska', 'Duda', 'Dudek', 'Gajewska', 'Głowacka', 'Górecka', 'Górska', 'Grabowska',
'Jabłońska', 'Jakubowska', 'Jankowska', 'Jasińska', 'Jaworska', 'Kaczmarczyk', 'Kaczmarek', 'Kalinowska', 'Kamińska', 'Kaźmierczak',
'Kołodziej', 'Kowalczyk', 'Kowalska', 'Kozłowska', 'Krajewska', 'Krawczyk', 'Król', 'Krupa', 'Kubiak', 'Kucharska', 'Kwiatkowska',
'Laskowska', 'Lewandowska', 'Lis', 'Maciejewska', 'Majewska', 'Makowska', 'Malinowska', 'Marciniak', 'Mazur', 'Mazurek', 'Michalak',
'Michalska', 'Mróz', 'Nowak', 'Nowakowska', 'Nowicka', 'Olszewska', 'Ostrowska', 'Pawlak', 'Pawłowska', 'Pietrzak', 'Piotrowska', 'Przybylska',
'Rutkowska', 'Sadowska', 'Sawicka', 'Sikora', 'Sikorska', 'Sobczak', 'Sokołowska', 'Stępień', 'Szczepańska', 'Szewczyk', 'Szulc', 'Szymańska', 'Szymczak',
'Tomaszewska', 'Urbańska', 'Walczak', 'Wasilewska', 'Wieczorek', 'Wilk', 'Wiśniewska', 'Witkowska', 'Włodarczyk', 'Wojciechowska',
'Woźniak', 'Wójcik', 'Wróbel', 'Wróblewska', 'Wysocka', 'Zając', 'Zakrzewska', 'Zalewska', 'Zawadzka', 'Zielińska', 'Ziółkowska',
];
/**
* Unisex academic degree
*
* @var string[]
*/
protected static $title = ['mgr', 'inż.', 'dr', 'doc.'];
/**
* @param string|null $gender 'male', 'female' or null for any
*
* @example 'Adamczyk'
*/
public function lastName($gender = null)
{
if ($gender === static::GENDER_MALE) {
return static::lastNameMale();
}
if ($gender === static::GENDER_FEMALE) {
return static::lastNameFemale();
}
return $this->generator->parse(static::randomElement(static::$lastNameFormat));
}
public static function lastNameMale()
{
return static::randomElement(static::$lastNameMale);
}
public static function lastNameFemale()
{
return static::randomElement(static::$lastNameFemale);
}
public function title($gender = null)
{
return static::randomElement(static::$title);
}
/**
* replaced by specific unisex Polish title
*/
public static function titleMale()
{
return static::randomElement(static::$title);
}
/**
* replaced by specific unisex Polish title
*/
public static function titleFemale()
{
return static::randomElement(static::$title);
}
/**
* PESEL - Universal Electronic System for Registration of the Population
*
* @see http://en.wikipedia.org/wiki/PESEL
*
* @param DateTime $birthdate
* @param string $sex M for male or F for female
*
* @return string 11 digit number, like 44051401358
*/
public static function pesel($birthdate = null, $sex = null)
{
if ($birthdate === null) {
$birthdate = \Faker\Provider\DateTime::dateTimeThisCentury();
}
$weights = [1, 3, 7, 9, 1, 3, 7, 9, 1, 3];
$length = count($weights);
$fullYear = (int) $birthdate->format('Y');
$year = (int) $birthdate->format('y');
$month = $birthdate->format('m') + (((int) ($fullYear / 100) - 14) % 5) * 20;
$day = $birthdate->format('d');
$result = [(int) ($year / 10), $year % 10, (int) ($month / 10), $month % 10, (int) ($day / 10), $day % 10];
for ($i = 6; $i < $length; ++$i) {
$result[$i] = static::randomDigit();
}
$result[$length - 1] |= 1;
if ($sex == 'F') {
$result[$length - 1] -= 1;
}
$checksum = 0;
for ($i = 0; $i < $length; ++$i) {
$checksum += $weights[$i] * $result[$i];
}
$checksum = (10 - ($checksum % 10)) % 10;
$result[] = $checksum;
return implode('', $result);
}
/**
* National Identity Card number
*
* @see http://en.wikipedia.org/wiki/Polish_National_Identity_Card
*
* @return string 3 letters and 6 digits, like ABA300000
*/
public static function personalIdentityNumber()
{
$range = str_split('ABCDEFGHIJKLMNPRSTUVWXYZ');
$low = ['A', static::randomElement($range), static::randomElement($range)];
$high = [static::randomDigit(), static::randomDigit(), static::randomDigit(), static::randomDigit(), static::randomDigit()];
$weights = [7, 3, 1, 7, 3, 1, 7, 3];
$checksum = 0;
for ($i = 0, $size = count($low); $i < $size; ++$i) {
$checksum += $weights[$i] * (ord($low[$i]) - 55);
}
for ($i = 0, $size = count($high); $i < $size; ++$i) {
$checksum += $weights[$i + 3] * $high[$i];
}
$checksum %= 10;
return implode('', $low) . $checksum . implode('', $high);
}
/**
* Taxpayer Identification Number (NIP in Polish)
*
* @see http://en.wikipedia.org/wiki/PESEL#Other_identifiers
* @see http://pl.wikipedia.org/wiki/NIP
*
* @return string 10 digit number
*/
public static function taxpayerIdentificationNumber()
{
$weights = [6, 5, 7, 2, 3, 4, 5, 6, 7];
$result = [];
do {
$result = [
static::randomDigitNotNull(), static::randomDigitNotNull(), static::randomDigitNotNull(),
static::randomDigit(), static::randomDigit(), static::randomDigit(),
static::randomDigit(), static::randomDigit(), static::randomDigit(),
];
$checksum = 0;
for ($i = 0, $size = count($result); $i < $size; ++$i) {
$checksum += $weights[$i] * $result[$i];
}
$checksum %= 11;
} while ($checksum == 10);
$result[] = $checksum;
return implode('', $result);
}
}
At NFC Pay, we strive to provide a seamless and satisfactory experience with our services. This Refund Policy outlines the circumstances under which refunds may be issued for transactions made through our platform. Please read this policy carefully to understand your rights regarding refunds.
1. Eligibility for Refunds
Refunds may be considered under the following circumstances:
2. Non-Refundable Situations
Refunds will generally not be issued in the following situations:
3. Refund Process
To request a refund, please follow these steps:
4. Refund Exceptions
Certain transactions may be subject to specific terms and conditions, including non-refundable fees or charges. Please review the terms associated with each transaction carefully, as some fees may not be eligible for refunds.
5. Modifications to the Refund Policy
NFC Pay reserves the right to modify this Refund Policy at any time. Changes will be communicated through updates on our website and app, and the effective date will be updated accordingly. We encourage you to review this policy periodically to stay informed about our refund practices.
By using NFC Pay, you agree to this Refund Policy and understand the terms under which refunds may be issued. Our goal is to ensure a fair and transparent refund process, providing you with confidence and peace of mind when using our services.