ffaker 2.18.0 → 2.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) hide show
  1. checksums.yaml +4 -4
  2. data/Changelog.md +10 -0
  3. data/REFERENCE.md +1406 -1302
  4. data/ffaker.gemspec +2 -4
  5. data/lib/ffaker.rb +13 -3
  6. data/lib/ffaker/address_au.rb +1 -1
  7. data/lib/ffaker/address_br.rb +1 -1
  8. data/lib/ffaker/address_ca.rb +1 -1
  9. data/lib/ffaker/address_it.rb +37 -0
  10. data/lib/ffaker/address_mx.rb +2 -8
  11. data/lib/ffaker/company_fr.rb +35 -0
  12. data/lib/ffaker/{courses.rb → courses_fr.rb} +2 -0
  13. data/lib/ffaker/data/address_br/city +0 -1
  14. data/lib/ffaker/data/address_br/state +1 -1
  15. data/lib/ffaker/data/address_it/city +111 -0
  16. data/lib/ffaker/data/address_it/region +20 -0
  17. data/lib/ffaker/data/food_pl/fermented +1 -1
  18. data/lib/ffaker/data/food_pl/fruits +1 -1
  19. data/lib/ffaker/data/food_pl/herbs +1 -1
  20. data/lib/ffaker/data/food_pl/meats +1 -1
  21. data/lib/ffaker/data/food_pl/preserves +1 -1
  22. data/lib/ffaker/data/food_pl/spices +1 -1
  23. data/lib/ffaker/data/food_pl/vegetables +1 -1
  24. data/lib/ffaker/data/game/adj_and_adv +18 -0
  25. data/lib/ffaker/data/game/category +84 -0
  26. data/lib/ffaker/data/game/mechanic +182 -0
  27. data/lib/ffaker/data/game/nouns +37 -0
  28. data/lib/ffaker/data/game/prefixes +17 -0
  29. data/lib/ffaker/data/job_it/job_adj +37 -0
  30. data/lib/ffaker/data/job_it/job_noun +25 -0
  31. data/lib/ffaker/data/job_it/job_prefix +22 -0
  32. data/lib/ffaker/data/lorem_br/characters +36 -0
  33. data/lib/ffaker/data/lorem_br/words +183 -0
  34. data/lib/ffaker/data/lorem_it/words +321 -0
  35. data/lib/ffaker/data/name/pronouns +1 -1
  36. data/lib/ffaker/data/name_ga/first_names_male +286 -286
  37. data/lib/ffaker/data/sport_ru/summer +68 -0
  38. data/lib/ffaker/data/sport_ru/winter +20 -0
  39. data/lib/ffaker/freedom_ipsum.rb +1 -1
  40. data/lib/ffaker/game.rb +33 -0
  41. data/lib/ffaker/gender_it.rb +17 -0
  42. data/lib/ffaker/gender_ru.rb +22 -0
  43. data/lib/ffaker/identification_it.rb +30 -0
  44. data/lib/ffaker/job_it.rb +12 -0
  45. data/lib/ffaker/lorem_br.rb +45 -0
  46. data/lib/ffaker/lorem_it.rb +39 -0
  47. data/lib/ffaker/name_th_en.rb +1 -1
  48. data/lib/ffaker/sport_ru.rb +25 -0
  49. data/lib/ffaker/ssn_se.rb +0 -19
  50. data/lib/ffaker/utils/array_utils.rb +1 -1
  51. data/lib/ffaker/utils/module_utils.rb +23 -3
  52. data/lib/version.rb +1 -1
  53. data/scripts/profiling.rb +1 -1
  54. data/scripts/reference.rb +2 -3
  55. data/test/helper.rb +1 -1
  56. data/test/test_address.rb +1 -1
  57. data/test/test_address_au.rb +1 -1
  58. data/test/test_address_br.rb +1 -1
  59. data/test/test_address_ca.rb +1 -1
  60. data/test/test_address_ch.rb +1 -1
  61. data/test/test_address_ch_de.rb +1 -1
  62. data/test/test_address_ch_fr.rb +1 -1
  63. data/test/test_address_ch_it.rb +1 -1
  64. data/test/test_address_da.rb +1 -1
  65. data/test/test_address_de.rb +1 -1
  66. data/test/test_address_fi.rb +1 -1
  67. data/test/test_address_fr.rb +1 -1
  68. data/test/test_address_gr.rb +1 -1
  69. data/test/test_address_id.rb +1 -1
  70. data/test/test_address_in.rb +1 -1
  71. data/test/test_address_it.rb +12 -0
  72. data/test/test_address_ja.rb +1 -1
  73. data/test/test_address_kr.rb +1 -1
  74. data/test/test_address_mx.rb +1 -1
  75. data/test/test_address_nl.rb +1 -1
  76. data/test/test_address_pl.rb +1 -1
  77. data/test/test_address_ru.rb +1 -1
  78. data/test/test_address_se.rb +1 -1
  79. data/test/test_address_sn.rb +1 -1
  80. data/test/test_address_ua.rb +1 -1
  81. data/test/test_address_uk.rb +1 -1
  82. data/test/test_address_us.rb +1 -1
  83. data/test/test_airline.rb +1 -1
  84. data/test/test_animal.rb +1 -1
  85. data/test/test_animal_cn.rb +1 -1
  86. data/test/test_animal_es.rb +1 -1
  87. data/test/test_animal_pl.rb +1 -1
  88. data/test/test_animal_us.rb +1 -1
  89. data/test/test_array_utils.rb +2 -1
  90. data/test/test_avatar.rb +1 -1
  91. data/test/test_aws.rb +1 -1
  92. data/test/test_bacon_ipsum.rb +1 -1
  93. data/test/test_bank.rb +1 -1
  94. data/test/test_book.rb +1 -1
  95. data/test/test_boolean.rb +1 -1
  96. data/test/test_cheesy_lingo.rb +1 -1
  97. data/test/test_code.rb +1 -1
  98. data/test/test_color.rb +1 -1
  99. data/test/test_color_pl.rb +1 -1
  100. data/test/test_color_ua.rb +1 -1
  101. data/test/test_company.rb +1 -1
  102. data/test/test_company_cn.rb +1 -1
  103. data/test/test_company_fr.rb +33 -0
  104. data/test/test_company_it.rb +1 -1
  105. data/test/test_company_ja.rb +1 -1
  106. data/test/test_company_se.rb +1 -1
  107. data/test/test_conference.rb +1 -1
  108. data/test/test_course_mathematiques.rb +1 -1
  109. data/test/test_course_philosophie.rb +1 -1
  110. data/test/test_currency.rb +1 -1
  111. data/test/test_dizzle_ipsum.rb +1 -1
  112. data/test/test_education.rb +1 -1
  113. data/test/test_education_cn.rb +1 -1
  114. data/test/test_ffaker.rb +1 -1
  115. data/test/test_filesystem.rb +1 -1
  116. data/test/test_food.rb +1 -1
  117. data/test/test_food_pl.rb +1 -1
  118. data/test/test_freedom_ipsum.rb +1 -1
  119. data/test/test_game.rb +28 -0
  120. data/test/test_gender.rb +2 -2
  121. data/test/test_gender_br.rb +1 -1
  122. data/test/test_gender_cn.rb +1 -1
  123. data/test/test_gender_id.rb +1 -1
  124. data/test/test_gender_it.rb +27 -0
  125. data/test/test_gender_ja.rb +1 -1
  126. data/test/test_gender_jp.rb +1 -1
  127. data/test/test_gender_kr.rb +1 -1
  128. data/test/test_gender_pl.rb +1 -1
  129. data/test/test_gender_ru.rb +23 -0
  130. data/test/test_geolocation.rb +1 -1
  131. data/test/test_guid.rb +1 -1
  132. data/test/test_healthcare_ipsum.rb +1 -1
  133. data/test/test_healthcare_ru.rb +1 -1
  134. data/test/test_hipster_ipsum.rb +1 -1
  135. data/test/test_html_ipsum.rb +1 -1
  136. data/test/test_identification.rb +1 -1
  137. data/test/test_identification_br.rb +1 -1
  138. data/test/test_identification_co.rb +1 -1
  139. data/test/test_identification_es.rb +1 -1
  140. data/test/test_identification_es_cl.rb +1 -1
  141. data/test/test_identification_es_mx.rb +1 -1
  142. data/test/test_identification_in.rb +1 -1
  143. data/test/test_identification_it.rb +34 -0
  144. data/test/test_identification_kr.rb +1 -1
  145. data/test/test_identification_tw.rb +1 -1
  146. data/test/test_image.rb +1 -1
  147. data/test/test_internet.rb +1 -1
  148. data/test/test_internet_se.rb +1 -1
  149. data/test/test_job.rb +1 -1
  150. data/test/test_job_br.rb +1 -1
  151. data/test/test_job_cn.rb +1 -1
  152. data/test/test_job_fr.rb +1 -1
  153. data/test/test_job_it.rb +17 -0
  154. data/test/test_job_ja.rb +1 -1
  155. data/test/test_job_kr.rb +1 -1
  156. data/test/test_job_vn.rb +1 -1
  157. data/test/test_locale.rb +1 -1
  158. data/test/test_lorem.rb +1 -1
  159. data/test/test_lorem_ar.rb +1 -1
  160. data/test/test_lorem_br.rb +62 -0
  161. data/test/test_lorem_cn.rb +1 -1
  162. data/test/test_lorem_fr.rb +1 -1
  163. data/test/test_lorem_ie.rb +1 -1
  164. data/test/test_lorem_it.rb +51 -0
  165. data/test/test_lorem_ja.rb +1 -1
  166. data/test/test_lorem_kr.rb +1 -1
  167. data/test/test_lorem_pl.rb +1 -1
  168. data/test/test_lorem_ru.rb +1 -1
  169. data/test/test_lorem_ua.rb +1 -1
  170. data/test/test_module_utils.rb +1 -1
  171. data/test/test_movie.rb +1 -1
  172. data/test/test_music.rb +1 -1
  173. data/test/test_name.rb +1 -1
  174. data/test/test_name_ar.rb +1 -1
  175. data/test/test_name_br.rb +1 -1
  176. data/test/test_name_cn.rb +1 -1
  177. data/test/test_name_cs.rb +1 -1
  178. data/test/test_name_da.rb +1 -1
  179. data/test/test_name_de.rb +1 -1
  180. data/test/test_name_es.rb +1 -1
  181. data/test/test_name_fr.rb +1 -1
  182. data/test/test_name_ga.rb +1 -1
  183. data/test/test_name_gr.rb +1 -1
  184. data/test/test_name_id.rb +1 -1
  185. data/test/test_name_it.rb +1 -1
  186. data/test/test_name_ja.rb +1 -1
  187. data/test/test_name_kh.rb +1 -1
  188. data/test/test_name_kr.rb +1 -1
  189. data/test/test_name_mx.rb +1 -1
  190. data/test/test_name_nb.rb +1 -1
  191. data/test/test_name_nl.rb +1 -1
  192. data/test/test_name_ph.rb +1 -1
  193. data/test/test_name_pl.rb +1 -1
  194. data/test/test_name_ru.rb +1 -1
  195. data/test/test_name_se.rb +1 -1
  196. data/test/test_name_sn.rb +1 -1
  197. data/test/test_name_th.rb +1 -1
  198. data/test/test_name_th_en.rb +1 -1
  199. data/test/test_name_tw.rb +1 -1
  200. data/test/test_name_ua.rb +1 -1
  201. data/test/test_name_vn.rb +1 -1
  202. data/test/test_nato_alphabet.rb +1 -1
  203. data/test/test_phone_number.rb +1 -1
  204. data/test/test_phone_number_au.rb +1 -1
  205. data/test/test_phone_number_br.rb +1 -1
  206. data/test/test_phone_number_cu.rb +1 -1
  207. data/test/test_phone_number_da.rb +1 -1
  208. data/test/test_phone_number_de.rb +1 -1
  209. data/test/test_phone_number_fr.rb +1 -1
  210. data/test/test_phone_number_id.rb +1 -1
  211. data/test/test_phone_number_ja.rb +1 -1
  212. data/test/test_phone_number_kr.rb +1 -1
  213. data/test/test_phone_number_mx.rb +1 -1
  214. data/test/test_phone_number_nl.rb +1 -1
  215. data/test/test_phone_number_pl.rb +1 -1
  216. data/test/test_phone_number_se.rb +1 -1
  217. data/test/test_phone_number_sg.rb +1 -1
  218. data/test/test_phone_number_sn.rb +1 -1
  219. data/test/test_phone_number_tw.rb +1 -1
  220. data/test/test_phone_number_ua.rb +1 -1
  221. data/test/test_products.rb +1 -1
  222. data/test/test_sem_ver.rb +1 -1
  223. data/test/test_skill.rb +1 -1
  224. data/test/test_sport_pl.rb +1 -1
  225. data/test/test_sport_ru.rb +30 -0
  226. data/test/test_sport_us.rb +1 -1
  227. data/test/test_sports.rb +1 -1
  228. data/test/test_ssn.rb +1 -1
  229. data/test/test_ssn_mx.rb +1 -1
  230. data/test/test_ssn_se.rb +1 -1
  231. data/test/test_string.rb +1 -1
  232. data/test/test_time.rb +1 -1
  233. data/test/test_tweet.rb +1 -1
  234. data/test/test_unique_utils.rb +1 -1
  235. data/test/test_units.rb +2 -1
  236. data/test/test_units_english.rb +1 -1
  237. data/test/test_units_metric.rb +1 -1
  238. data/test/test_vehicle.rb +1 -1
  239. data/test/test_venue.rb +1 -1
  240. data/test/test_youtube.rb +1 -1
  241. metadata +206 -161
@@ -0,0 +1,84 @@
1
+ Abstract Strategy
2
+ Action / Dexterity
3
+ Adventure
4
+ Age of Reason
5
+ American Civil War
6
+ American Indian Wars
7
+ American Revolutionary War
8
+ American West
9
+ Ancient
10
+ Animals
11
+ Arabian
12
+ Aviation / Flight
13
+ Bluffing
14
+ Book
15
+ Card Game
16
+ Children's Game
17
+ City Building
18
+ Civil War
19
+ Civilization
20
+ Collectible Components
21
+ Comic Book / Strip
22
+ Deduction
23
+ Dice
24
+ Economic
25
+ Educational
26
+ Electronic
27
+ Environmental
28
+ Expansion for Base-game
29
+ Exploration
30
+ Fan Expansion
31
+ Fantasy
32
+ Farming
33
+ Fighting
34
+ Game System
35
+ Horror
36
+ Humor
37
+ Industry / Manufacturing
38
+ Korean War
39
+ Mafia
40
+ Math
41
+ Mature / Adult
42
+ Maze
43
+ Medical
44
+ Medieval
45
+ Memory
46
+ Miniatures
47
+ Modern Warfare
48
+ Movies / TV / Radio theme
49
+ Murder/Mystery
50
+ Music
51
+ Mythology
52
+ Napoleonic
53
+ Nautical
54
+ Negotiation
55
+ Novel-based
56
+ Number
57
+ Party Game
58
+ Pike and Shot
59
+ Pirates
60
+ Political
61
+ Post-Napoleonic
62
+ Prehistoric
63
+ Print & Play
64
+ Puzzle
65
+ Racing
66
+ Real-time
67
+ Religious
68
+ Renaissance
69
+ Science Fiction
70
+ Space Exploration
71
+ Spies/Secret Agents
72
+ Sports
73
+ Territory Building
74
+ Trains
75
+ Transportation
76
+ Travel
77
+ Trivia
78
+ Video Game Theme
79
+ Vietnam War
80
+ Wargame
81
+ Word Game
82
+ World War I
83
+ World War II
84
+ Zombies
@@ -0,0 +1,182 @@
1
+ Acting
2
+ Action Drafting
3
+ Action Points
4
+ Action Queue
5
+ Action Retrieval
6
+ Action Timer
7
+ Action/Event
8
+ Advantage Token
9
+ Alliances
10
+ Area Majority / Influence
11
+ Area Movement
12
+ Area-Impulse
13
+ Auction/Bidding
14
+ Auction: Dexterity
15
+ Auction: Dutch
16
+ Auction: Dutch Priority
17
+ Auction: English
18
+ Auction: Fixed Placement
19
+ Auction: Once Around
20
+ Auction: Sealed Bid
21
+ Auction: Turn Order Until Pass
22
+ Automatic Resource Growth
23
+ Betting and Bluffing
24
+ Bias
25
+ Bingo
26
+ Bribery
27
+ Campaign / Battle Card Driven
28
+ Card Drafting
29
+ Card Play Conflict Resolution
30
+ Catch the Leader
31
+ Chaining
32
+ Chit-Pull System
33
+ Closed Economy Auction
34
+ Command Cards
35
+ Commodity Speculation
36
+ Communication Limits
37
+ Connections
38
+ Constrained Bidding
39
+ Contracts
40
+ Cooperative Game
41
+ Crayon Rail System
42
+ Critical Hits and Failures
43
+ Cube Tower
44
+ Deck Construction
45
+ Deck, Bag, and Pool Building
46
+ Deduction
47
+ Delayed Purchase
48
+ Dice Rolling
49
+ Die Icon Resolution
50
+ Different Dice Movement
51
+ Drafting
52
+ Elapsed Real Time Ending
53
+ Enclosure
54
+ End Game Bonuses
55
+ Events
56
+ Finale Ending
57
+ Flicking
58
+ Follow
59
+ Force Commitment
60
+ Grid Coverage
61
+ Grid Movement
62
+ Hand Management
63
+ Hexagon Grid
64
+ Hidden Movement
65
+ Hidden Roles
66
+ Hidden Victory Points
67
+ Highest-Lowest Scoring
68
+ Hot Potato
69
+ I Cut, You Choose
70
+ Impulse Movement
71
+ Income
72
+ Increase Value of Unchosen Resources
73
+ Induction
74
+ Interrupts
75
+ Investment
76
+ Kill Steal
77
+ King of the Hill
78
+ Ladder Climbing
79
+ Layering
80
+ Legacy Game
81
+ Line Drawing
82
+ Line of Sight
83
+ Loans
84
+ Lose a Turn
85
+ Mancala
86
+ Map Addition
87
+ Map Deformation
88
+ Map Reduction
89
+ Market
90
+ Matching
91
+ Measurement Movement
92
+ Melding and Splaying
93
+ Memory
94
+ Minimap Resolution
95
+ Modular Board
96
+ Move Through Deck
97
+ Movement Points
98
+ Movement Template
99
+ Moving Multiple Units
100
+ Multiple Maps
101
+ Multiple-Lot Auction
102
+ Narrative Choice / Paragraph
103
+ Negotiation
104
+ Network and Route Building
105
+ Once-Per-Game Abilities
106
+ Order Counters
107
+ Ownership
108
+ Paper-and-Pencil
109
+ Passed Action Token
110
+ Pattern Building
111
+ Pattern Movement
112
+ Pattern Recognition
113
+ Physical Removal
114
+ Pick-up and Deliver
115
+ Pieces as Map
116
+ Player Elimination
117
+ Player Judge
118
+ Point to Point Movement
119
+ Predictive Bid
120
+ Prisoner's Dilemma
121
+ Programmed Movement
122
+ Push Your Luck
123
+ Race
124
+ Random Production
125
+ Ratio / Combat Results Table
126
+ Re-rolling and Locking
127
+ Real-Time
128
+ Relative Movement
129
+ Resource to Move
130
+ Rock-Paper-Scissors
131
+ Role Playing
132
+ Roles with Asymmetric Information
133
+ Roll / Spin and Move
134
+ Rondel
135
+ Scenario / Mission / Campaign Game
136
+ Score-and-Reset Game
137
+ Secret Unit Deployment
138
+ Selection Order Bid
139
+ Semi-Cooperative Game
140
+ Set Collection
141
+ Simulation
142
+ Simultaneous Action Selection
143
+ Singing
144
+ Single Loser Game
145
+ Slide/Push
146
+ Solo / Solitaire Game
147
+ Speed Matching
148
+ Square Grid
149
+ Stacking and Balancing
150
+ Stat Check Resolution
151
+ Static Capture
152
+ Stock Holding
153
+ Storytelling
154
+ Sudden Death Ending
155
+ Take That
156
+ Targeted Clues
157
+ Team-Based Game
158
+ Tech Trees / Tech Tracks
159
+ Three Dimensional Movement
160
+ Tile Placement
161
+ Time Track
162
+ Track Movement
163
+ Trading
164
+ Traitor Game
165
+ Trick-taking
166
+ Tug of War
167
+ Turn Order: Auction
168
+ Turn Order: Claim Action
169
+ Turn Order: Pass Order
170
+ Turn Order: Progressive
171
+ Turn Order: Random
172
+ Turn Order: Role Order
173
+ Turn Order: Stat-Based
174
+ Variable Phase Order
175
+ Variable Player Powers
176
+ Variable Set-up
177
+ Victory Points as a Resource
178
+ Voting
179
+ Worker Placement
180
+ Worker Placement with Dice Workers
181
+ Worker Placement, Different Worker Types
182
+ Zone of Control
@@ -0,0 +1,37 @@
1
+ Jungle
2
+ Witch
3
+ Woman
4
+ Women
5
+ Man
6
+ Men
7
+ Ninja
8
+ Ninjas
9
+ Pickpocket
10
+ Hills
11
+ Clash
12
+ Wizard
13
+ Wizards
14
+ World
15
+ Brain
16
+ Brains
17
+ Mutant
18
+ Dreams
19
+ Tears
20
+ City
21
+ Cat
22
+ Tentacle
23
+ Friday
24
+ Rain
25
+ Thief
26
+ Beast
27
+ Demon
28
+ Monster
29
+ Brew
30
+ Oath
31
+ School
32
+ Gods
33
+ Gods
34
+ Mars
35
+ Clan
36
+ Lion
37
+ Spirit
@@ -0,0 +1,17 @@
1
+ Time of the
2
+ Season of the
3
+ Return of the
4
+ I am
5
+ Planet of the
6
+ War of the
7
+ Invasion of the
8
+ I Married a
9
+ Legend of
10
+ Codename:
11
+ Case of the Missing
12
+ Day of the
13
+ Curse of the
14
+ Rise of the
15
+ The
16
+ A Fistful of
17
+ Journey of the
@@ -0,0 +1,37 @@
1
+ Soluzioni
2
+ Programma
3
+ Marca
4
+ Sicurezza
5
+ Ricerca
6
+ Marketing
7
+ Direttive
8
+ Implementazione
9
+ Integrazione
10
+ Funzionalità
11
+ Risposta
12
+ Paradigma
13
+ tattica
14
+ Identità
15
+ mercati
16
+ Gruppo
17
+ Divisione
18
+ Applicazioni
19
+ Ottimizzazione
20
+ operazioni
21
+ Infrastruttura
22
+ Intranet
23
+ Comunicazioni
24
+ ragnatela
25
+ marchio
26
+ Qualità
27
+ Assicurazione
28
+ Mobilità
29
+ Conti
30
+ Dati
31
+ Creativo
32
+ Configurazione
33
+ Responsabilità
34
+ Interazioni
35
+ Fattori
36
+ Usabilità
37
+ Metrica
@@ -0,0 +1,25 @@
1
+ Supervisore
2
+ Socio
3
+ Esecutivo
4
+ collegamento
5
+ Ufficiale
6
+ Manager
7
+ Ingegnere
8
+ Specialista
9
+ La direttrice
10
+ Coordinatore
11
+ Amministratore
12
+ Architetto
13
+ Analista
14
+ progettista
15
+ pianificatore
16
+ orchestratore
17
+ Tecnico
18
+ Sviluppatore
19
+ Produttore
20
+ Consulente
21
+ Assistente
22
+ Facilitatore
23
+ Agente
24
+ Rappresentante
25
+ Stratega
@@ -0,0 +1,22 @@
1
+ Guida
2
+ Anziano
3
+ Diretto
4
+ aziendale
5
+ Dinamico
6
+ Futuro
7
+ Prodotto
8
+ Nazionale
9
+ Regionale
10
+ Quartiere
11
+ Centrale
12
+ Globale
13
+ Cliente
14
+ Investitore
15
+ Dinamico
16
+ Internazionale
17
+ Eredità
18
+ Inoltrare
19
+ Interno
20
+ Umano
21
+ Capo
22
+ Principale
@@ -0,0 +1,36 @@
1
+ a
2
+ b
3
+ c
4
+ d
5
+ e
6
+ f
7
+ g
8
+ h
9
+ i
10
+ j
11
+ k
12
+ l
13
+ m
14
+ n
15
+ o
16
+ p
17
+ q
18
+ r
19
+ s
20
+ t
21
+ u
22
+ v
23
+ w
24
+ x
25
+ y
26
+ z
27
+ 0
28
+ 1
29
+ 2
30
+ 3
31
+ 4
32
+ 5
33
+ 6
34
+ 7
35
+ 8
36
+ 9