xcpretty-bb 0.1.12.bb1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +19 -0
  3. data/.hound.yml +2 -0
  4. data/.kick +17 -0
  5. data/.rubocop.yml +239 -0
  6. data/.travis.yml +11 -0
  7. data/CHANGELOG.md +200 -0
  8. data/CONTRIBUTING.md +64 -0
  9. data/Gemfile +9 -0
  10. data/LICENSE.txt +61 -0
  11. data/README.md +93 -0
  12. data/Rakefile +26 -0
  13. data/assets/report.html.erb +172 -0
  14. data/bin/xcpretty +85 -0
  15. data/features/assets/RACCommandSpec, line 80, hello xcpretty.png +0 -0
  16. data/features/assets/apple_raw.png +0 -0
  17. data/features/custom_formatter.feature +15 -0
  18. data/features/fixtures/xcodebuild.log +5963 -0
  19. data/features/html_report.feature +54 -0
  20. data/features/json_compilation_database_report.feature +21 -0
  21. data/features/junit_report.feature +44 -0
  22. data/features/knock_format.feature +11 -0
  23. data/features/simple_format.feature +204 -0
  24. data/features/steps/formatting_steps.rb +330 -0
  25. data/features/steps/html_steps.rb +32 -0
  26. data/features/steps/json_steps.rb +37 -0
  27. data/features/steps/junit_steps.rb +39 -0
  28. data/features/steps/report_steps.rb +22 -0
  29. data/features/steps/xcpretty_steps.rb +31 -0
  30. data/features/support/env.rb +117 -0
  31. data/features/tap_format.feature +31 -0
  32. data/features/test_format.feature +49 -0
  33. data/features/xcpretty.feature +14 -0
  34. data/lib/xcpretty/ansi.rb +72 -0
  35. data/lib/xcpretty/formatters/formatter.rb +177 -0
  36. data/lib/xcpretty/formatters/knock.rb +35 -0
  37. data/lib/xcpretty/formatters/rspec.rb +33 -0
  38. data/lib/xcpretty/formatters/simple.rb +200 -0
  39. data/lib/xcpretty/formatters/tap.rb +40 -0
  40. data/lib/xcpretty/parser.rb +591 -0
  41. data/lib/xcpretty/printer.rb +24 -0
  42. data/lib/xcpretty/reporters/html.rb +98 -0
  43. data/lib/xcpretty/reporters/json_compilation_database.rb +62 -0
  44. data/lib/xcpretty/reporters/junit.rb +102 -0
  45. data/lib/xcpretty/snippet.rb +38 -0
  46. data/lib/xcpretty/syntax.rb +51 -0
  47. data/lib/xcpretty/term.rb +14 -0
  48. data/lib/xcpretty/version.rb +4 -0
  49. data/lib/xcpretty.rb +37 -0
  50. data/spec/fixtures/NSStringTests.m +64 -0
  51. data/spec/fixtures/constants.rb +600 -0
  52. data/spec/fixtures/custom_formatter.rb +18 -0
  53. data/spec/fixtures/oneliner.m +1 -0
  54. data/spec/fixtures/raw_kiwi_compilation_fail.txt +24 -0
  55. data/spec/fixtures/raw_kiwi_fail.txt +1896 -0
  56. data/spec/fixtures/raw_specta_fail.txt +3110 -0
  57. data/spec/spec_helper.rb +7 -0
  58. data/spec/support/matchers/colors.rb +21 -0
  59. data/spec/xcpretty/ansi_spec.rb +47 -0
  60. data/spec/xcpretty/formatters/formatter_spec.rb +140 -0
  61. data/spec/xcpretty/formatters/rspec_spec.rb +56 -0
  62. data/spec/xcpretty/formatters/simple_spec.rb +173 -0
  63. data/spec/xcpretty/parser_spec.rb +542 -0
  64. data/spec/xcpretty/printer_spec.rb +55 -0
  65. data/spec/xcpretty/snippet_spec.rb +46 -0
  66. data/spec/xcpretty/syntax_spec.rb +39 -0
  67. data/spec/xcpretty/term_spec.rb +26 -0
  68. data/xcpretty.gemspec +37 -0
  69. metadata +237 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 9750fe7efbc30534beea5ffe3fdc76dec57fb346
4
+ data.tar.gz: 74849559b7e3d77f5565ab6d9a293df09d0f194e
5
+ SHA512:
6
+ metadata.gz: 58258ee6ca1936791052201299487a5c1a1999c111176dfc56c9436152d0ee72b39dbf314f01667b751312ab468f466a523326c24c55d0477f4bf7a0f110a41a
7
+ data.tar.gz: ec0577a72b1a7b5c8622372624eac94a60712f78a491585f18fcb8e6840a609ba7d3e5513593a1e2138ce7f05aa6a970c43930d947cb4c4e4490d5befec00a51
data/.gitignore ADDED
@@ -0,0 +1,19 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ .rspec
7
+ Gemfile.lock
8
+ InstalledFiles
9
+ _yardoc
10
+ coverage
11
+ doc/
12
+ lib/bundler/man
13
+ pkg
14
+ rdoc
15
+ spec/reports
16
+ test/tmp
17
+ test/version_tmp
18
+ tmp
19
+ .idea/
data/.hound.yml ADDED
@@ -0,0 +1,2 @@
1
+ ruby:
2
+ config_file: .rubocop.yml
data/.kick ADDED
@@ -0,0 +1,17 @@
1
+ recipe :ruby
2
+ recipe :ignore
3
+
4
+ ignore(%r{^(spec/fixtures)})
5
+
6
+ process do |files|
7
+ cuke_files = files.take_and_map do |path|
8
+ if path =~ %r{^features/\w+\.feature$}
9
+ path
10
+ elsif path =~ %r{^bin}
11
+ # run all features when bin/xcpretty changes
12
+ Dir.glob("features/**/*.feature")
13
+ end
14
+ end
15
+
16
+ execute "cucumber -f progress #{cuke_files.join(' ')}"
17
+ end
data/.rubocop.yml ADDED
@@ -0,0 +1,239 @@
1
+ Lint/AssignmentInCondition:
2
+ Exclude:
3
+ - 'bin/xcpretty'
4
+
5
+ Lint/DefEndAlignment:
6
+ Enabled: true
7
+ Exclude:
8
+ - 'lib/xcpretty/formatters/formatter.rb'
9
+
10
+ Lint/EndAlignment:
11
+ Enabled: true
12
+
13
+ Lint/Eval:
14
+ Exclude:
15
+ - 'lib/xcpretty.rb'
16
+
17
+ Lint/FormatParameterMismatch:
18
+ Exclude:
19
+ - 'lib/xcpretty/formatters/simple.rb'
20
+
21
+ Lint/UnusedBlockArgument:
22
+ Enabled: false
23
+
24
+ Lint/UnusedMethodArgument:
25
+ Enabled: false
26
+
27
+ Lint/UselessAccessModifier:
28
+ Enabled: true
29
+
30
+ Lint/Void:
31
+ Enabled: false
32
+
33
+ Metrics/AbcSize:
34
+ Enabled: false
35
+
36
+ Metrics/ClassLength:
37
+ Enabled: false
38
+
39
+ Metrics/CyclomaticComplexity:
40
+ Enabled: false
41
+
42
+ Metrics/LineLength:
43
+ Max: 80
44
+ Exclude:
45
+ - 'bin/xcpretty'
46
+ - 'spec/**/*.rb'
47
+ - 'features/**/*.rb'
48
+ - 'lib/xcpretty/parser.rb'
49
+
50
+ Metrics/MethodLength:
51
+ Enabled: false
52
+
53
+ Metrics/ModuleLength:
54
+ Enabled: false
55
+
56
+ Metrics/PerceivedComplexity:
57
+ Enabled: false
58
+
59
+ Performance/Count:
60
+ Enabled: true
61
+
62
+ Performance/Size:
63
+ Enabled: true
64
+
65
+ Performance/StringReplacement:
66
+ Enabled: true
67
+
68
+ Style/AlignHash:
69
+ Enabled: true
70
+ Exclude:
71
+ - 'spec/**/*.rb'
72
+
73
+ Style/AlignParameters:
74
+ Enabled: true
75
+ Exclude:
76
+ - 'spec/**/*.rb'
77
+
78
+ Style/BarePercentLiterals:
79
+ Enabled: false
80
+
81
+ Style/BlockDelimiters:
82
+ Enabled: false
83
+
84
+ Style/BracesAroundHashParameters:
85
+ Enabled: true
86
+
87
+ # Configuration parameters: IndentWhenRelativeTo, SupportedStyles, IndentOneStep.
88
+ Style/CaseIndentation:
89
+ Enabled: true
90
+
91
+ Style/ClassVars:
92
+ Enabled: false
93
+
94
+ Style/ClosingParenthesisIndentation:
95
+ Enabled: false
96
+
97
+ # Offense count: 1
98
+ # Cop supports --auto-correct.
99
+ # Configuration parameters: EnforcedStyle, SupportedStyles, AllowInnerBackticks.
100
+ Style/CommandLiteral:
101
+ Exclude:
102
+ - 'features/support/*.rb'
103
+
104
+ Style/CommentIndentation:
105
+ Enabled: true
106
+
107
+ Style/Documentation:
108
+ Enabled: false
109
+
110
+ Style/DoubleNegation:
111
+ Exclude:
112
+ - 'lib/xcpretty/ansi.rb'
113
+ - 'lib/xcpretty/formatters/formatter.rb'
114
+
115
+ Style/EmptyLineBetweenDefs:
116
+ Exclude:
117
+ - 'lib/xcpretty/formatters/formatter.rb'
118
+
119
+ Style/EmptyLines:
120
+ Enabled: false
121
+
122
+ Style/EmptyLinesAroundBlockBody:
123
+ Exclude:
124
+ - 'spec/**/*.rb'
125
+
126
+ Style/EmptyLinesAroundClassBody:
127
+ Enabled: false
128
+
129
+ Style/EmptyLinesAroundModuleBody:
130
+ Enabled: false
131
+
132
+ Style/ExtraSpacing:
133
+ Enabled: true
134
+ Exclude:
135
+ - 'lib/xcpretty/formatters/formatter.rb'
136
+
137
+ Style/FirstParameterIndentation:
138
+ Enabled: true
139
+
140
+ Style/GuardClause:
141
+ Enabled: false
142
+
143
+ Style/HashSyntax:
144
+ EnforcedStyle: ruby19
145
+
146
+ Style/IfUnlessModifier:
147
+ Enabled: false
148
+
149
+ Style/IndentationWidth:
150
+ Exclude:
151
+ - 'spec/**/*.rb'
152
+
153
+ Style/LeadingCommentSpace:
154
+ Enabled: true
155
+
156
+ Style/LineEndConcatenation:
157
+ Enabled: true
158
+
159
+ Style/MethodDefParentheses:
160
+ Enabled: true
161
+
162
+ Style/MultilineOperationIndentation:
163
+ Enabled: false
164
+
165
+ Style/NonNilCheck:
166
+ Enabled: false
167
+
168
+ Style/PercentLiteralDelimiters:
169
+ Enabled: true
170
+
171
+ Style/PercentQLiterals:
172
+ Enabled: false
173
+
174
+ Style/PerlBackrefs:
175
+ Enabled: false
176
+
177
+ Style/RedundantBegin:
178
+ Enabled: true
179
+
180
+ Style/RegexpLiteral:
181
+ Enabled: false
182
+
183
+ Style/Semicolon:
184
+ Exclude:
185
+ - 'bin/xcpretty'
186
+
187
+ Style/SignalException:
188
+ Enabled: false
189
+
190
+ Style/SingleLineMethods:
191
+ Exclude:
192
+ - 'lib/xcpretty/formatters/formatter.rb'
193
+
194
+ Style/SpaceAfterComma:
195
+ Enabled: true
196
+
197
+ Style/SpaceAroundEqualsInParameterDefault:
198
+ Enabled: false
199
+
200
+ Style/SpaceAroundOperators:
201
+ Enabled: true
202
+
203
+ Style/SpaceInsideBlockBraces:
204
+ Enabled: true
205
+ EnforcedStyle: space
206
+
207
+ Style/SpaceInsideHashLiteralBraces:
208
+ Enabled: true
209
+ EnforcedStyle: no_space
210
+
211
+ Style/SpaceInsideParens:
212
+ Enabled: true
213
+
214
+ Style/SpecialGlobalVars:
215
+ Enabled: false
216
+
217
+ Style/StringLiterals:
218
+ Enabled: false
219
+
220
+ Style/StringLiteralsInInterpolation:
221
+ Enabled: false
222
+
223
+ Style/SymbolProc:
224
+ Enabled: false
225
+
226
+ Style/TrailingBlankLines:
227
+ Enabled: true
228
+ EnforcedStyle: final_blank_line
229
+
230
+ Style/TrailingComma:
231
+ Enabled: true
232
+
233
+ Style/TrailingWhitespace:
234
+ Enabled: true
235
+
236
+ Style/UnneededPercentQ:
237
+ Exclude:
238
+ - 'spec/**/*.rb'
239
+ - 'xcpretty.gemspec'
data/.travis.yml ADDED
@@ -0,0 +1,11 @@
1
+ language: ruby
2
+ sudo: false
3
+ install:
4
+ - bundle install
5
+
6
+ rvm:
7
+ - 2.1.1
8
+ - 2.0.0
9
+
10
+ script: rake ci
11
+
data/CHANGELOG.md ADDED
@@ -0,0 +1,200 @@
1
+ # Changelog
2
+
3
+ ## 0.1.12
4
+
5
+ ###### Bug fixes
6
+
7
+ * Fixed COMPILE_MATCHER to match all languages
8
+ | [Paul Cantrell](https://github.com/pcantrell)
9
+ | [#158](https://github.com/supermarin/xcpretty/pull/158)
10
+
11
+
12
+ ## 0.1.11
13
+
14
+ ###### Enhancements
15
+
16
+ * Added support for Analyzing target output
17
+ | [Cédric Luthi](https://github.com/0xced)
18
+ | [#146](https://github.com/supermarin/xcpretty/pull/146)
19
+
20
+ * Improved logging of `ld` error messages
21
+ | [Felix Krause](https://github.com/KrauseFx)
22
+ | [#153](https://github.com/supermarin/xcpretty/pull/153)
23
+
24
+ ## 0.1.10
25
+
26
+ ###### Enhancements
27
+
28
+ * Fixed buffering issues. Output looks realtime now
29
+ | [mtauraso](https://github.com/mtauraso)
30
+ | [#123](https://github.com/supermarin/xcpretty/pull/123)
31
+
32
+
33
+ ## 0.1.8
34
+
35
+ ###### Enhancements
36
+
37
+ * Added support for build warnings (even multiline with snippets)
38
+ | [#131](https://github.com/supermarin/xcpretty/pull/131)
39
+ * Support for measuring test runtimes
40
+ | [Norio Nomura](https://github.com/norio-nomura)
41
+ | [#124](https://github.com/supermarin/xcpretty/pull/124)
42
+ * Support for `write file` and `Write auxiliary files`
43
+ | [Piet Brauer](https://github.com/pietbrauer)
44
+ | [#128](https://github.com/supermarin/xcpretty/pull/128)
45
+ * Support for `oclint v0.9dev` json-compilation-database
46
+ | [KiKi](https://github.com/iKiKi)
47
+ | [#121](https://github.com/supermarin/xcpretty/pull/121)
48
+ * Syntax highlighting for other languages than Objc (Swift, C++, Objc++, Dylan, Ruby)
49
+ | [#110](https://github.com/supermarin/xcpretty/pull/110)
50
+
51
+
52
+ ## 0.1.5
53
+
54
+ ###### Enhancements
55
+
56
+ * Json-compilation-databse report!
57
+ | [Boris Bügling](https://github.com/neonichu)
58
+ | [#77](https://github.com/supermarin/xcpretty/pull/77)
59
+ * Parsing duplicate symbols
60
+ | [#78](https://github.com/supermarin/xcpretty/pull/78)
61
+ * Improved performance (nobody cares)
62
+
63
+ ###### Bug Fixes
64
+
65
+ * Fix closing files when used from another proccess
66
+ | [Jonas Witt](https://github.com/jonaswitt)
67
+ | [#75](http://github.com/supermarin/xcpretty/pull/75)
68
+
69
+
70
+ ## 0.1.4
71
+
72
+ ###### Enhancements
73
+
74
+ * New logo
75
+ * New output format: tap
76
+ * New output format: knock
77
+ * Updated parser to support Specta 0.2.1
78
+ | [Josh Vickery](https://github.com/vickeryj)
79
+ | [#64](https://github.com/supermarin/xcpretty/pull/64)
80
+ * Support additional file extensions
81
+ | [Boris Bügling](https://github.com/neonichu)
82
+ | [#59](https://github.com/supermarin/xcpretty/pull/59)
83
+
84
+
85
+ ## 0.1.3
86
+
87
+ ###### Enhancements
88
+
89
+ * Indented test runs by suite
90
+ * Added HTML reporter
91
+
92
+ ###### Misc
93
+
94
+ * removed the faux exit statuts hangling. use `exit ${PIPESTATUS[0]}`
95
+
96
+
97
+ ## 0.1.2
98
+
99
+ ###### Enhancements
100
+
101
+ * More consistent error output (add some spacing before and after)
102
+ * Parsed clang errors
103
+ * Parsed ld: errors
104
+
105
+
106
+ ## 0.1.1
107
+
108
+ ###### Enhancements
109
+
110
+ * Parse more fatal errors, and CodeSign errors that were printed to STDOUT |
111
+ [#51](https://github.com/supermarin/xcpretty/issues/51)
112
+
113
+
114
+ ## 0.1.0
115
+
116
+ ###### Enhancements
117
+
118
+ * Color semi-slow tests in yellow, slow tests in red |
119
+ [#46](https://github.com/supermarin/xcpretty/pull/46)
120
+ * Add option to specify a custom location for report generation |
121
+ [#43](https://github.com/supermarin/xcpretty/pull/43)
122
+
123
+
124
+ ## 0.0.9
125
+
126
+ ###### Enhancements
127
+
128
+ * major performance fix, it's faster than `cat` by 2-3 times on big inputs.
129
+ Thanks [@kviksilver](https://github.com/kviksilver) for providing debug log and helping to reproduce
130
+
131
+
132
+ ## 0.0.8
133
+
134
+ ###### Bug Fixes
135
+
136
+ * show version if not piped |
137
+ [#39](https://github.com/supermarin/xcpretty/issues/39)
138
+
139
+ ###### Enhancements
140
+
141
+ * format linker failures (Undefined symbols for arch...)
142
+
143
+
144
+ ## 0.0.7
145
+
146
+ ###### Enhancements
147
+
148
+ * exit(1) if xcodebuild failure detected
149
+ * Print compile errors nicely. Currently we support compiler erorrs,
150
+ and Pods-not-installed errors. Missing mach-o-linker failures
151
+ * Added support for loading arbitrary custom printers (experimental) |
152
+ [Eloy Durán](https://github.com/alloy) |
153
+ [#29](https://github.com/supermarin/xcpretty/pulls/29)
154
+ * Show help banner in case no data is piped in |
155
+ [Eloy Durán](https://github.com/alloy) |
156
+ [#29](https://github.com/supermarin/xcpretty/pulls/29)
157
+
158
+
159
+ ## 0.0.6
160
+
161
+ ###### Enhancements
162
+
163
+ * Added support for reporters
164
+ * Added JUnit reporter
165
+
166
+
167
+ ## 0.0.5
168
+
169
+ ###### Bug Fixes
170
+
171
+ * `--no-utf` was set incorrectly. now it works as expected.
172
+
173
+
174
+ ## 0.0.4
175
+
176
+ ###### Enhancements
177
+
178
+ * Prettier `--simple` output |
179
+ [Preview](https://travis-ci.org/allending/Kiwi/builds/15190533)
180
+ * Removed Paint dependency
181
+ * Better test failure formatting (added indentation, grouped by suite)
182
+ * Added example of running tests continuously
183
+ * Support for not using Unicode (`--no-utf`)
184
+
185
+ ###### Bug Fixes
186
+
187
+ * Fixed multi-suite summary output (when tests are run on many devices)
188
+
189
+
190
+ ## 0.0.3
191
+
192
+ * add Ruby 1.8 support
193
+
194
+ ## 0.0.2
195
+
196
+ * add Ruby 1.9 support
197
+
198
+ ## 0.0.1
199
+
200
+ * initial version
data/CONTRIBUTING.md ADDED
@@ -0,0 +1,64 @@
1
+ ## Pull requests
2
+
3
+ XCPretty is tested with [Cucumber](http://cukes.info) and [RSpec](http://rspec.info).
4
+ If you're planning to contribute, please do write tests.
5
+
6
+ Here's an example workflow for a contribution:
7
+
8
+ #### 0. Fork the project and create a branch
9
+
10
+ - Make separate branches for unrelated changes, like `my-awesome-feature` or `fix-terrible-bug`
11
+
12
+ #### 1. Write a failing feature
13
+
14
+ - These are a full-stack end to end tests
15
+ - You can find features in `features/`. You'll need to write a `feature` and implement it's `steps`.
16
+ - Try to reuse as many matchers as possible
17
+ - This tests are slower because they're executing `xcpretty` command for each test
18
+
19
+ Here's an example feature for adding output without UTF8:
20
+
21
+ ``` gherkin
22
+ Scenario: Running tests without UTF-8 support
23
+ Given I have a passing test in my suite
24
+ And I pipe to xcpretty with "--no-utf"
25
+ Then I should see a non-utf prefixed output
26
+ ```
27
+
28
+ And the steps:
29
+
30
+ - `Given I have a passing test in my suite`
31
+
32
+ ``` ruby
33
+ Given(/^I have a passing test in my suite$/) do
34
+ add_run_input SAMPLE_OCUNIT_TEST
35
+ end
36
+ ```
37
+
38
+ - `And I pipe to xcpretty with "--no-utf"`
39
+
40
+ ``` ruby
41
+ When(/^I pipe to xcpretty with "(.*?)"$/) do |flags|
42
+ run_xcpretty(flags)
43
+ end
44
+ ```
45
+
46
+ - `Then I should see a non-utf prefixed output`
47
+
48
+ ``` ruby
49
+ Then(/^I should see a non-utf prefixed output$/) do
50
+ run_output.should start_with(".")
51
+ end
52
+ ```
53
+
54
+
55
+ #### 2. Write a failing BDD test
56
+
57
+ - These are unit tests, and they're very fast (below 200ms for the entire suite)
58
+ - You should be running them continuously with `kicker`, or your awesome Vim binding
59
+
60
+
61
+ #### 3. Implement your awesome contribution
62
+
63
+ - This should fix unit tests one-by-one, and finally your `feature` will be passing
64
+
data/Gemfile ADDED
@@ -0,0 +1,9 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in xcpretty.gemspec
4
+ gemspec
5
+
6
+ group :test do
7
+ gem 'kicker'
8
+ end
9
+
data/LICENSE.txt ADDED
@@ -0,0 +1,61 @@
1
+ Copyright (c) 2013 Marin Usalj
2
+
3
+ MIT License
4
+
5
+ ..,,,,,,,,,,,,. ......
6
+ .,,,,,,,,,,,,,,,,,,,,,,,,. ..,,,,,,,,,,
7
+ .,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,.
8
+ ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
9
+ .,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;1111111
10
+ ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,;i111111i,,,,,,,,11111111
11
+ ,,,,,,,,,,,.. .,,,,,,,,,,,,,,,,,,,.:11111111111iii11111111111
12
+ ,,,,,,,,:;i111111111111,,,,,,,,,,,,,,,:111. :1111111111111111111111
13
+ 11:,,,,,:111111111111111, i11,,,,,,,,,,,;111111 ;1111111111111111111
14
+ 1i,,,,i111111111111111: 11111;,,,,,,,,,11111111 11111111111111111
15
+ 11,:1111111111111111; .1111111,,,,,,,,,111111111. i11111111111111
16
+ 11111111111111111. i111111111,,,,,,,,11111111111. 11111111111
17
+ 111111111111111i .1111111111,,,,,,,,111111111111, .111111111
18
+ 11111111111111: 11111111111i,,,,,,,i11111111111.; 11111111
19
+ 1111111111111. :111111111111,,,,,,,:11111111111 ; 111111111
20
+ 111111111111 1111111111111,,,,,,,,11111111111 , ;1111111111
21
+ 11111111111 , :111111111111;,,,,,,,11111111111 ,11111111111
22
+ 1111111111 , i111111111111,,,,,,,1111111111; i111111111
23
+ 111111111 , 111111111111,,,,,,,1111111111. 11111111
24
+ 11111111111;.., 11111111111:,,,,,,i111111111 .111111
25
+ 111111111111i .11111111111,,,,,,;111111111 ;111111
26
+ 11111111111, .1111111111,,,,,,,111111111 1111111
27
+ 111111111i :111111111CCCCCCCt1111111: ,1111111
28
+ 11111111. ;1111111tCCCCCCCCt111111 11111111
29
+ 111111111. i111111CCCCCCCCCCt11111 11111111
30
+ 1111111111; 11111tCCCCCCCCCCCt111; i11111111
31
+ 111111111111 1111fCCCCCCCCCCCC111 111111111
32
+ 1111111111111 111LCCCCCCCCCCCCf11 ;111111111
33
+ 11111111111111: i1CCCCCCCCCCCCCCt. 1111111111
34
+ 111111111111111i ;CCCCCCCCCCCCCCL :1111111111
35
+ 11111111111111111 :CCCCCCCCCCCCC, 11111111111
36
+ 111111111111111111: .CCCCCCCCCCCC ,11111111111
37
+ 1111111111111111111i CCCCCCCCCC. 111111111111
38
+ 111111111111111111111 LCCCCCCCC :111111111111
39
+ 1111111111111111111111, 1CCCCCC. 1111111111111
40
+ 11111111111111111111111i ,CCCCL i1111111111111
41
+
42
+
43
+
44
+ Permission is hereby granted, free of charge, to any person obtaining
45
+ a copy of this software and associated documentation files (the
46
+ "Software"), to deal in the Software without restriction, including
47
+ without limitation the rights to use, copy, modify, merge, publish,
48
+ distribute, sublicense, and/or sell copies of the Software, and to
49
+ permit persons to whom the Software is furnished to do so, subject to
50
+ the following conditions:
51
+
52
+ The above copyright notice and this permission notice shall be
53
+ included in all copies or substantial portions of the Software.
54
+
55
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
56
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
57
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
58
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
59
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
60
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
61
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.