<?php // phpcs:ignore - @generation-checksum JP-47-1671
/**
 * Country Class for Japan (JP).
 *
 * State/province count: 47
 * City count: 1671
 * City count per state/province:
 * - 39: 110 cities
 * - 47: 25 cities
 * - 46: 46 cities
 * - 45: 17 cities
 * - 44: 26 cities
 * - 43: 27 cities
 * - 42: 22 cities
 * - 41: 16 cities
 * - 40: 56 cities
 * - 38: 20 cities
 * - 37: 15 cities
 * - 36: 17 cities
 * - 35: 21 cities
 * - 34: 30 cities
 * - 33: 25 cities
 * - 32: 16 cities
 * - 30: 16 cities
 * - 29: 21 cities
 * - 28: 53 cities
 * - 27: 57 cities
 * - 26: 24 cities
 * - 25: 24 cities
 * - 24: 28 cities
 * - 23: 70 cities
 * - 22: 44 cities
 * - 21: 35 cities
 * - 20: 40 cities
 * - 19: 23 cities
 * - 18: 19 cities
 * - 17: 18 cities
 * - 16: 21 cities
 * - 15: 46 cities
 * - 14: 40 cities
 * - 13: 63 cities
 * - 12: 65 cities
 * - 11: 83 cities
 * - 10: 31 cities
 * - 09: 33 cities
 * - 08: 72 cities
 * - 07: 30 cities
 * - 06: 27 cities
 * - 05: 27 cities
 * - 04: 33 cities
 * - 03: 32 cities
 * - 31: 5 cities
 * - 02: 21 cities
 * - 01: 81 cities
 *
 * @package WP_Ultimo\Country
 * @since 2.0.11
 */

namespace WP_Ultimo\Country;

// Exit if accessed directly
defined('ABSPATH') || exit;

/**
 * Country Class for Japan (JP).
 *
 * IMPORTANT:
 * This file is generated by build scripts, do not
 * change it directly or your changes will be LOST!
 *
 * @since 2.0.11
 *
 * @property-read string $code
 * @property-read string $currency
 * @property-read int $phone_code
 */
class Country_JP extends Country {

	use \WP_Ultimo\Traits\Singleton;

	/**
	 * General country attributes.
	 *
	 * This might be useful, might be not.
	 * In case of doubt, keep it.
	 *
	 * @since 2.0.11
	 * @var array
	 */
	protected $attributes = [
		'country_code' => 'JP',
		'currency'     => 'JPY',
		'phone_code'   => 81,
	];

	/**
	 * The type of nomenclature used to refer to the country sub-divisions.
	 *
	 * @since 2.0.11
	 * @var string
	 */
	protected $state_type = 'prefecture';

	/**
	 * Return the country name.
	 *
	 * @since 2.0.11
	 * @return string
	 */
	public function get_name() {

		return __('Japan', 'wp-ultimo');
	}

	/**
	 * Returns the list of states for JP.
	 *
	 * @since 2.0.11
	 * @return array The list of state/provinces for the country.
	 */
	protected function states() {

		return [
			'10' => __('Gunma Prefecture', 'wp-ultimo'),
			'11' => __('Saitama Prefecture', 'wp-ultimo'),
			'12' => __('Chiba Prefecture', 'wp-ultimo'),
			'13' => __('Tokyo', 'wp-ultimo'),
			'14' => __('Kanagawa Prefecture', 'wp-ultimo'),
			'15' => __('Niigata Prefecture', 'wp-ultimo'),
			'16' => __('Toyama Prefecture', 'wp-ultimo'),
			'17' => __('Ishikawa Prefecture', 'wp-ultimo'),
			'18' => __('Fukui Prefecture', 'wp-ultimo'),
			'19' => __('Yamanashi Prefecture', 'wp-ultimo'),
			'20' => __('Nagano Prefecture', 'wp-ultimo'),
			'21' => __('Gifu Prefecture', 'wp-ultimo'),
			'22' => __('Shizuoka Prefecture', 'wp-ultimo'),
			'23' => __('Aichi Prefecture', 'wp-ultimo'),
			'24' => __('Mie Prefecture', 'wp-ultimo'),
			'25' => __('Shiga Prefecture', 'wp-ultimo'),
			'26' => __('Kyōto Prefecture', 'wp-ultimo'),
			'27' => __('Ōsaka Prefecture', 'wp-ultimo'),
			'28' => __('Hyōgo Prefecture', 'wp-ultimo'),
			'29' => __('Nara Prefecture', 'wp-ultimo'),
			'30' => __('Wakayama Prefecture', 'wp-ultimo'),
			'31' => __('Tottori Prefecture', 'wp-ultimo'),
			'32' => __('Shimane Prefecture', 'wp-ultimo'),
			'33' => __('Okayama Prefecture', 'wp-ultimo'),
			'34' => __('Hiroshima Prefecture', 'wp-ultimo'),
			'35' => __('Yamaguchi Prefecture', 'wp-ultimo'),
			'36' => __('Tokushima Prefecture', 'wp-ultimo'),
			'37' => __('Kagawa Prefecture', 'wp-ultimo'),
			'38' => __('Ehime Prefecture', 'wp-ultimo'),
			'39' => __('Kōchi Prefecture', 'wp-ultimo'),
			'40' => __('Fukuoka Prefecture', 'wp-ultimo'),
			'41' => __('Saga Prefecture', 'wp-ultimo'),
			'42' => __('Nagasaki Prefecture', 'wp-ultimo'),
			'43' => __('Kumamoto Prefecture', 'wp-ultimo'),
			'44' => __('Ōita Prefecture', 'wp-ultimo'),
			'45' => __('Miyazaki Prefecture', 'wp-ultimo'),
			'46' => __('Kagoshima Prefecture', 'wp-ultimo'),
			'47' => __('Okinawa Prefecture', 'wp-ultimo'),
			'05' => __('Akita Prefecture', 'wp-ultimo'),
			'02' => __('Aomori Prefecture', 'wp-ultimo'),
			'07' => __('Fukushima Prefecture', 'wp-ultimo'),
			'01' => __('Hokkaidō Prefecture', 'wp-ultimo'),
			'08' => __('Ibaraki Prefecture', 'wp-ultimo'),
			'03' => __('Iwate Prefecture', 'wp-ultimo'),
			'04' => __('Miyagi Prefecture', 'wp-ultimo'),
			'09' => __('Tochigi Prefecture', 'wp-ultimo'),
			'06' => __('Yamagata Prefecture', 'wp-ultimo'),
		];
	}
}