File Coverage

blib/lib/Data/Sah.pm
Criterion Covered Total %
statement 12858 12858 100.0
branch 8 20 40.0
condition 1 2 50.0
subroutine 4286 4286 100.0
pod 5 5 100.0
total 17158 17171 99.9


line stmt bran cond sub pod time code
1              
2             use 5.010001;
3 39     39   87406 use strict;
  39         119  
4 39     37   3072 use warnings;
  37         118  
  37         472  
5 37     37   2637 #use Log::ger;
  37         122  
  37         732  
6              
7             use Mo qw(build default);
8 37     37   11411  
  37         10826  
  37         137  
9             our $AUTHORITY = 'cpan:PERLANCAR'; # AUTHORITY
10             our $DATE = '2022-08-20'; # DATE
11             our $DIST = 'Data-Sah'; # DIST
12             our $VERSION = '0.912'; # VERSION
13              
14             our $Log_Validator_Code = $ENV{LOG_SAH_VALIDATOR_CODE} // 0;
15              
16             use Data::Sah::Normalize qw(
17 36         16690 $type_re
18             $clause_name_re
19             $clause_re
20             $attr_re
21             $funcset_re
22             $compiler_re
23             );
24 37     36   46764  
  36         33442  
25             require Exporter;
26             our @ISA = qw(Exporter);
27             our @EXPORT_OK = qw(normalize_schema gen_validator);
28              
29             # store Data::Sah::Compiler::* instances
30             has compilers => (is => 'rw', default => sub { {} });
31              
32             has _var_enumer => (
33             is => 'rw',
34             lazy => 1,
35             default => sub {
36             require Language::Expr::Interpreter::var_enumer;
37             Language::Expr::Interpreter::var_enumer->new;
38             },
39             );
40              
41             require Scalar::Util;
42              
43 9     9 1 2105 my $self;
44             if (Scalar::Util::blessed($_[0])) {
45 9         59 $self = shift;
46 9 0       17 } else {
47 9         1862 $self = __PACKAGE__->new;
48             }
49 9         62  
50             Data::Sah::Normalize::normalize_clset($_[0]);
51             }
52 9         17  
53             require Scalar::Util;
54              
55             my $self;
56 5410     5410 1 25240 if (Scalar::Util::blessed($_[0])) {
57             $self = shift;
58 5409         7764 } else {
59 5409 50       20963 $self = __PACKAGE__->new;
60 5409         10238 }
61             my ($s) = @_;
62 7         46  
63             Data::Sah::Normalize::normalize_schema($_[0]);
64 5408         10353 }
65              
66 5408         16811 require Scalar::Util;
67              
68             my $self;
69             if (Scalar::Util::blessed($_[0])) {
70 4730     4732 1 41293 $self = shift;
71             } else {
72 4730         7200 $self = __PACKAGE__->new;
73 4730 50       18181 }
74 6         39 my ($schema, $opts) = @_;
75             my %args = (schema => $schema, %{$opts // {}});
76 4730         17712 my $opt_source = delete $args{source};
77              
78 4730         172260 $args{log_result} = 1 if $Log_Validator_Code;
79 4728   50     7586  
  4728         20889  
80 4728         9785 my $pl = $self->get_compiler("perl");
81             my $code = $pl->expr_validator_sub(%args);
82 4727 50       9600 return $code if $opt_source;
83              
84 4727         11323 my $res = eval $code; ## no critic: BuiltinFunctions::ProhibitStringyEval
85 4727         16290 die "Can't compile validator: $@" if $@;
86 4694 50       19354 $res;
87             }
88 34     34   2739  
  34     26   108  
  34     6   4838  
  29     4   2746  
  26     3   101  
  26     3   2980  
  4694     3   373532  
  3     3   20  
  3     3   6  
  3     3   655  
  3     3   20  
  3     3   6  
  3     3   712  
  3     3   19  
  3     3   7  
  3     3   541  
  3     3   19  
  3     3   5  
  3     3   665  
  3     3   18  
  3     3   6  
  3     3   715  
  3     3   20  
  3     3   8  
  3     3   510  
  3     3   20  
  3     3   5  
  3     3   424  
  3     3   20  
  3     3   5  
  3     3   543  
  3     3   22  
  3     3   6  
  3     3   511  
  3     3   22  
  3     3   7  
  3     3   450  
  3     3   20  
  3     3   7  
  3     3   510  
  3     3   22  
  3     3   5  
  3     3   512  
  3     3   22  
  3     3   6  
  3     3   383  
  3     3   19  
  3     3   7  
  3     3   465  
  3     3   18  
  3     3   8  
  3     3   415  
  3     3   18  
  3     3   6  
  3     3   421  
  3     3   17  
  3     3   5  
  3     3   496  
  3     3   19  
  3     3   6  
  3     3   539  
  3     3   18  
  3     3   6  
  3     3   404  
  3     3   18  
  3     3   6  
  3     3   390  
  3     3   19  
  3     3   4  
  3     3   418  
  3     3   17  
  3     3   7  
  3     3   354  
  3     3   20  
  3     3   6  
  3     3   430  
  3     3   18  
  3     3   6  
  3     3   474  
  3     3   31  
  3     3   5  
  3     3   344  
  3     3   18  
  3     3   7  
  3     3   444  
  3     3   19  
  3     3   7  
  3     3   479  
  3     3   18  
  3     3   7  
  3     3   284  
  3     3   19  
  3     3   7  
  3     3   332  
  3     3   20  
  3     3   6  
  3     3   331  
  3     3   19  
  3     3   5  
  3     3   356  
  3     3   18  
  3     3   6  
  3     3   428  
  3     3   20  
  3     3   7  
  3     3   506  
  3     3   21  
  3     3   8  
  3     3   369  
  3     3   17  
  3     3   7  
  3     3   431  
  3     1   19  
  3     1   5  
  3     1   508  
  3     1   18  
  3     1   6  
  3     1   370  
  3     1   19  
  3     1   7  
  3     1   414  
  3     1   18  
  3     1   7  
  3     1   531  
  3     1   19  
  3     1   342  
  3     1   362  
  3     1   18  
  3     1   6  
  3     1   430  
  3     1   19  
  3     1   7  
  3     1   536  
  3     1   18  
  3     1   6  
  3     1   307  
  3     1   17  
  3     1   6  
  3     1   351  
  3     1   18  
  3     1   5  
  3     1   352  
  3     1   18  
  3     1   6  
  3     1   406  
  3     1   18  
  3     1   5  
  3     1   453  
  3     1   19  
  3     1   5  
  3     1   538  
  3     1   19  
  3     1   6  
  3     1   426  
  3     1   18  
  3     1   6  
  3     1   460  
  3     1   21  
  3     1   7  
  3     1   544  
  3     1   19  
  3     1   4  
  3     1   412  
  3     1   20  
  3     1   6  
  3     1   470  
  3     1   19  
  3     1   6  
  3     1   503  
  3     1   19  
  3     1   8  
  3     1   391  
  3     1   19  
  3     1   5  
  3     1   541  
  3     1   18  
  3     1   9  
  3     1   486  
  3     1   19  
  3     1   6  
  3     1   287  
  3     1   22  
  3     1   5  
  3     1   350  
  3     1   18  
  3     1   6  
  3     1   269  
  3     1   19  
  3     1   5  
  3     1   333  
  3     1   20  
  3     1   4  
  3     1   481  
  3     1   20  
  3     1   6  
  3     1   478  
  3     1   20  
  3     1   5  
  3     1   417  
  3     1   20  
  3     1   5  
  3     1   536  
  3     1   21  
  3     1   5  
  3     1   529  
  3     1   18  
  3     1   7  
  3     1   436  
  3     1   19  
  3     1   7  
  3     1   506  
  3     1   19  
  3     1   7  
  3     1   523  
  3     1   19  
  3     1   7  
  3     1   413  
  3     1   19  
  3     1   6  
  3     1   542  
  3     1   19  
  3     1   5  
  3     1   493  
  3     1   19  
  3     1   7  
  3     1   321  
  3     1   17  
  3     1   7  
  3     1   465  
  3     1   17  
  3     1   6  
  3     1   318  
  3     1   19  
  3     1   7  
  3     1   373  
  3     1   19  
  3     1   6  
  3     1   524  
  3     1   17  
  3     1   7  
  3     1   513  
  3     1   19  
  3     1   5  
  3     1   369  
  3     1   20  
  3     1   6  
  3     1   509  
  3     1   19  
  3     1   7  
  3     1   494  
  3     1   20  
  3     1   7  
  3     1   933  
  3     1   18  
  3     1   4  
  3     1   449  
  3     1   19  
  3     1   5  
  3     1   480  
  3     1   19  
  3     1   7  
  3     1   400  
  3     1   17  
  3     1   6  
  3     1   596  
  3     1   19  
  3     1   5  
  3     1   497  
  3     1   19  
  3     1   6  
  3     1   419  
  3     1   19  
  3     1   6  
  3     1   594  
  3     1   17  
  3     1   5  
  3     1   485  
  3     1   20  
  3     1   5  
  3     1   426  
  3     1   19  
  3     1   6  
  3     1   587  
  3     1   19  
  3     1   7  
  3     1   500  
  3     1   22  
  3     1   5  
  3     1   416  
  3     1   19  
  3     1   6  
  3     1   605  
  3     1   19  
  3     1   5  
  3     1   485  
  3     1   18  
  3     1   4  
  3     1   436  
  3     1   20  
  3     1   4  
  3     1   589  
  3     1   20  
  3     1   5  
  3     1   487  
  3     1   20  
  3     1   4  
  3     1   637  
  3     1   18  
  3     1   6  
  3     1   767  
  3     1   19  
  3     1   7  
  3     1   920  
  1     1   6  
  1     1   2  
  1     1   158  
  1     1   6  
  1     1   2  
  1     1   182  
  1     1   6  
  1     1   2  
  1     1   266  
  1     1   6  
  1     1   2  
  1     1   73  
  1     1   6  
  1     1   2  
  1     1   90  
  1     1   7  
  1     1   3  
  1     1   164  
  1     1   6  
  1     1   1  
  1     1   268  
  1     1   6  
  1     1   3  
  1     1   258  
  1     1   6  
  1     1   2  
  1     1   358  
  1     1   6  
  1     1   2  
  1     1   209  
  1     1   7  
  1     1   2  
  1     1   247  
  1     1   6  
  1     1   2  
  1     1   359  
  1     1   6  
  1     1   2  
  1     1   218  
  1     1   6  
  1     1   2  
  1     1   259  
  1     1   6  
  1     1   3  
  1     1   358  
  1     1   6  
  1     1   2  
  1     1   217  
  1     1   6  
  1     1   2  
  1     1   266  
  1     1   7  
  1     1   2  
  1     1   358  
  1     1   6  
  1     1   1  
  1     1   61  
  1     1   6  
  1     1   3  
  1     1   82  
  1     1   6  
  1     1   2  
  1     1   173  
  1     1   7  
  1     1   2  
  1     1   251  
  1     1   7  
  1     1   2  
  1     1   300  
  1     1   6  
  1     1   2  
  1     1   382  
  1     1   7  
  1     1   2  
  1     1   226  
  1     1   6  
  1     1   2  
  1     1   257  
  1     1   6  
  1     1   3  
  1     1   365  
  1     1   7  
  1     1   2  
  1     1   248  
  1     1   8  
  1     1   2  
  1     1   261  
  1     1   7  
  1     1   1  
  1     1   370  
  1     1   7  
  1     1   1  
  1     1   214  
  1     1   7  
  1     1   2  
  1     1   254  
  1     1   10  
  1     1   2  
  1     1   350  
  1     1   15  
  1     1   3  
  1     1   71  
  1     1   6  
  1     1   1  
  1     1   85  
  1     1   9  
  1     1   1  
  1     1   133  
  1     1   7  
  1     1   1  
  1     1   269  
  1     1   7  
  1     1   3  
  1     1   287  
  1     1   9  
  1     1   2  
  1     1   351  
  1     1   7  
  1     1   1  
  1     1   263  
  1     1   7  
  1     1   3  
  1     1   268  
  1     1   6  
  1     1   2  
  1     1   346  
  1     1   7  
  1     1   2  
  1     1   255  
  1     1   7  
  1     1   2  
  1     1   274  
  1     1   6  
  1     1   3  
  1     1   336  
  1     1   7  
  1     1   2  
  1     1   250  
  1     1   6  
  1     1   3  
  1     1   282  
  1     1   6  
  1     1   2  
  1     1   343  
  1     1   6  
  1     1   2  
  1     1   59  
  1     1   6  
  1     1   7  
  1     1   82  
  1     1   50  
  1     1   6  
  1     1   137  
  1     1   10  
  1     1   3  
  1     1   291  
  1     1   7  
  1     1   2  
  1     1   269  
  1     1   6  
  1     1   1  
  1     1   385  
  1     1   7  
  1     1   2  
  1     1   259  
  1     1   6  
  1     1   3  
  1     1   265  
  1     1   7  
  1     1   4  
  1     1   349  
  1     1   7  
  1     1   7  
  1     1   259  
  1     1   6  
  1     1   2  
  1     1   255  
  1     1   7  
  1     1   2  
  1     1   351  
  1     1   13  
  1     1   2  
  1     1   247  
  1     1   6  
  1     1   2  
  1     1   283  
  1     1   6  
  1     1   2  
  1     1   357  
  1     1   6  
  1     1   2  
  1     1   59  
  1     1   7  
  1     1   2  
  1     1   108  
  1     1   7  
  1     1   2  
  1     1   145  
  1     1   7  
  1     1   3  
  1     1   234  
  1     1   8  
  1     1   2  
  1     1   256  
  1     1   7  
  1     1   3  
  1     1   357  
  1     1   7  
  1     1   2  
  1     1   225  
  1     1   6  
  1     1   3  
  1     1   254  
  1     1   6  
  1     1   3  
  1     1   366  
  1     1   6  
  1     1   2  
  1     1   221  
  1     1   7  
  1     1   2  
  1     1   264  
  1     1   9  
  1     1   2  
  1     1   352  
  1     1   7  
  1     1   2  
  1     1   250  
  1     1   6  
  1     1   10  
  1     1   259  
  1     1   7  
  1     1   3  
  1     1   347  
  1     1   6  
  1     1   3  
  1     1   92  
  1     1   11  
  1     1   1  
  1     1   106  
  1     1   7  
  1     1   1  
  1     1   185  
  1     1   6  
  1     1   2  
  1     1   82  
  1     1   6  
  1     1   2  
  1     1   111  
  1     1   7  
  1     1   1  
  1     1   194  
  1     1   6  
  1     1   2  
  1     1   98  
  1     1   8  
  1     1   2  
  1     1   103  
  1     1   6  
  1     1   3  
  1     1   195  
  1     1   6  
  1     1   2  
  1     1   80  
  1     1   6  
  1     1   2  
  1     1   108  
  1     1   5  
  1     1   3  
  1     1   199  
  1     1   6  
  1     1   2  
  1     1   79  
  1     1   7  
  1     1   2  
  1     1   101  
  1     1   6  
  1     1   1  
  1     1   194  
  1     1   6  
  1     1   2  
  1     1   68  
  1     1   7  
  1     1   2  
  1     1   101  
  1     1   6  
  1     1   2  
  1     1   190  
  1     1   8  
  1     1   2  
  1     1   82  
  1     1   11  
  1     1   2  
  1     1   108  
  1     1   7  
  1     1   6  
  1     1   193  
  1     1   13  
  1     1   1  
  1     1   81  
  1     1   6  
  1     1   4  
  1     1   107  
  1     1   10  
  1     1   2  
  1     1   188  
  1     1   7  
  1     1   2  
  1     1   146  
  1     1   8  
  1     1   2  
  1     1   321  
  1     1   6  
  1     1   2  
  1     1   361  
  1     1   7  
  1     1   1  
  1     1   143  
  1     1   6  
  1     1   2  
  1     1   314  
  1     1   6  
  1     1   2  
  1     1   369  
  1     1   7  
  1     1   2  
  1     1   220  
  1     1   7  
  1     1   2  
  1     1   327  
  1     1   6  
  1     1   2  
  1     1   346  
  1     1   6  
  1     1   3  
  1     1   153  
  1     1   7  
  1     1   1  
  1     1   302  
  1     1   7  
  1     1   2  
  1     1   298  
  1     1   7  
  1     1   2  
  1     1   221  
  1     1   6  
  1     1   2  
  1     1   351  
  1     1   6  
  1     1   3  
  1     1   361  
  1     1   6  
  1     1   2  
  1     1   141  
  1     1   6  
  1     1   3  
  1     1   278  
  1     1   11  
  1     1   2  
  1     1   286  
  1     1   7  
  1     1   2  
  1     1   182  
  1     1   6  
  1     1   3  
  1     1   372  
  1     1   7  
  1     1   2  
  1     1   422  
  1     1   6  
  1     1   2  
  1     1   126  
  1     1   6  
  1     1   3  
  1     1   342  
  1     1   6  
  1     1   6  
  1     1   376  
  1     1   6  
  1     1   3  
  1     1   165  
  1     1   6  
  1     1   2  
  1     1   183  
  1     1   8  
  1     1   2  
  1     1   277  
  1     1   8  
  1     1   1  
  1     1   163  
  1     1   6  
  1     1   2  
  1     1   178  
  1     1   7  
  1     1   2  
  1     1   262  
  1     1   7  
  1     1   3  
  1     1   255  
  1     1   6  
  1     1   3  
  1     1   266  
  1     1   7  
  1     1   3  
  1     1   343  
  1     1   8  
  1     1   3  
  1     1   211  
  1     1   11  
  1     1   10  
  1     1   254  
  1     1   7  
  1     1   2  
  1     1   346  
  1     1   7  
  1     1   2  
  1     1   229  
  1     1   7  
  1     1   2  
  1     1   438  
  1     1   7  
  1     1   2  
  1     1   469  
  1     1   31  
  1     1   3  
  1     1   207  
  1     1   8  
  1     1   2  
  1     1   388  
  1     1   6  
  1     1   2  
  1     1   462  
  1     1   6  
  1     1   2  
  1     1   201  
  1     1   7  
  1     1   3  
  1     1   401  
  1     1   6  
  1     1   2  
  1     1   466  
  1     1   6  
  1     1   2  
  1     1   192  
  1     1   7  
  1     1   2  
  1     1   397  
  1     1   6  
  1     1   2  
  1     1   455  
  1     1   7  
  1     1   2  
  1     1   186  
  1     1   6  
  1     1   2  
  1     1   425  
  1     1   6  
  1     1   3  
  1     1   467  
  1     1   6  
  1     1   3  
  1     1   189  
  1     1   7  
  1     1   3  
  1     1   408  
  1     1   6  
  1     1   3  
  1     1   477  
  1     1   7  
  1     1   3  
  1     1   189  
  1     1   7  
  1     1   2  
  1     1   420  
  1     1   7  
  1     1   2  
  1     1   469  
  1     1   6  
  1     1   2  
  1     1   140  
  1     1   6  
  1     1   1  
  1     1   331  
  1     1   7  
  1     1   3  
  1     1   375  
  1     1   6  
  1     1   2  
  1     1   130  
  1     1   6  
  1     1   2  
  1     1   326  
  1     1   6  
  1     1   3  
  1     1   379  
  1     1   6  
  1     1   2  
  1     1   68  
  1     1   6  
  1     1   2  
  1     1   71  
  1     1   5  
  1     1   2  
  1     1   112  
  1     1   6  
  1     1   1  
  1     1   60  
  1     1   6  
  1     1   2  
  1     1   77  
  1     1   6  
  1     1   2  
  1     1   119  
  1     1   6  
  1     1   3  
  1     1   63  
  1     1   7  
  1     1   2  
  1     1   72  
  1     1   6  
  1     1   3  
  1     1   140  
  1     1   5  
  1     1   3  
  1     1   66  
  1     1   6  
  1     1   2  
  1     1   74  
  1     1   6  
  1     1   3  
  1     1   122  
  1     1   6  
  1     1   2  
  1     1   63  
  1     1   6  
  1     1   2  
  1     1   73  
  1     1   7  
  1     1   2  
  1     1   116  
  1     1   7  
  1     1   2  
  1     1   61  
  1     1   6  
  1     1   3  
  1     1   73  
  1     1   6  
  1     1   2  
  1     1   139  
  1     1   7  
  1     1   3  
  1     1   61  
  1     1   6  
  1     1   2  
  1     1   72  
  1     1   6  
  1     1   2  
  1     1   116  
  1     1   7  
  1     1   2  
  1     1   62  
  1     1   7  
  1     1   2  
  1     1   73  
  1     1   6  
  1     1   2  
  1     1   142  
  1     1   6  
  1     1   2  
  1     1   61  
  1     1   7  
  1     1   3  
  1     1   75  
  1     1   7  
  1     1   1  
  1     1   135  
  1     1   6  
  1     1   2  
  1     1   65  
  1     1   7  
  1     1   2  
  1     1   75  
  1     1   6  
  1     1   2  
  1     1   130  
  1     1   6  
  1     1   2  
  1     1   62  
  1     1   7  
  1     1   2  
  1     1   74  
  1     1   6  
  1     1   1  
  1     1   153  
  1     1   6  
  1     1   2  
  1     1   61  
  1     1   6  
  1     1   4  
  1     1   73  
  1     1   6  
  1     1   2  
  1     1   132  
  1     1   6  
  1     1   1  
  1     1   62  
  1     1   7  
  1     1   2  
  1     1   71  
  1     1   6  
  1     1   2  
  1     1   132  
  1     1   7  
  1     1   2  
  1     1   62  
  1     1   6  
  1     1   2  
  1     1   73  
  1     1   7  
  1     1   2  
  1     1   137  
  1     1   6  
  1     1   2  
  1     1   63  
  1     1   6  
  1     1   2  
  1     1   96  
  1     1   5  
  1     1   4  
  1     1   207  
  1     1   8  
  1     1   3  
  1     1   58  
  1     1   6  
  1     1   1  
  1     1   71  
  1     1   6  
  1     1   2  
  1     1   128  
  1     1   6  
  1     1   2  
  1     1   60  
  1     1   6  
  1     1   2  
  1     1   78  
  1     1   7  
  1     1   2  
  1     1   180  
  1     1   6  
  1     1   3  
  1     1   64  
  1     1   7  
  1     1   1  
  1     1   105  
  1     1   6  
  1     1   1  
  1     1   190  
  1     1   6  
  1     1   3  
  1     1   79  
  1     1   6  
  1     1   2  
  1     1   105  
  1     1   7  
  1     1   2  
  1     1   186  
  1     1   6  
  1     1   2  
  1     1   88  
  1     1   7  
  1     1   2  
  1     1   119  
  1     1   6  
  1     1   2  
  1     1   191  
  1     1   7  
  1     1   2  
  1     1   58  
  1     1   6  
  1     1   2  
  1     1   77  
  1     1   6  
  1     1   3  
  1     1   169  
  1     1   6  
  1     1   1  
  1     1   80  
  1     1   6  
  1     1   2  
  1     1   91  
  1     1   6  
  1     1   2  
  1     1   174  
  1     1   6  
  1     1   2  
  1     1   77  
  1     1   6  
  1     1   2  
  1     1   104  
  1     1   6  
  1     1   2  
  1     1   216  
  1     1   7  
  1     1   2  
  1     1   82  
  1     1   6  
  1     1   1  
  1     1   101  
  1     1   7  
  1     1   1  
  1     1   192  
  1     1   6  
  1     1   2  
  1     1   91  
  1     1   7  
  1     1   2  
  1     1   103  
  1     1   6  
  1     1   2  
  1     1   189  
  1     1   5  
  1     1   2  
  1     1   74  
  1     1   6  
  1     1   2  
  1     1   101  
  1     1   7  
  1     1   2  
  1     1   195  
  1     1   6  
  1     1   2  
  1     1   76  
  1     1   5  
  1     1   2  
  1     1   106  
  1     1   7  
  1     1   2  
  1     1   208  
  1     1   6  
  1     1   2  
  1     1   79  
  1     1   5  
  1     1   3  
  1     1   106  
  1     1   6  
  1     1   2  
  1     1   231  
  1     1   7  
  1     1   2  
  1     1   74  
  1     1   6  
  1     1   2  
  1     1   104  
  1     1   2224  
  1     1   4  
  1     1   191  
  1     1   6  
  1     1   2  
  1     1   64  
  1     1   6  
  1     1   2  
  1     1   81  
  1     1   7  
  1     1   2  
  1     1   147  
  1     1   6  
  1     1   2  
  1     1   64  
  1     1   6  
  1     1   1  
  1     1   80  
  1     1   6  
  1     1   1  
  1     1   162  
  1     1   6  
  1     1   2  
  1     1   65  
  1     1   6  
  1     1   2  
  1     1   81  
  1     1   6  
  1     1   2  
  1     1   150  
  1     1   7  
  1     1   3  
  1     1   65  
  1     1   6  
  1     1   2  
  1     1   82  
  1     1   6  
  1     1   2  
  1     1   150  
  1     1   6  
  1     1   1  
  1     1   60  
  1     1   6  
  1     1   2  
  1     1   71  
  1     1   6  
  1     1   2  
  1     1   114  
  1     1   6  
  1     1   2  
  1     1   74  
  1     1   5  
  1     1   2  
  1     1   87  
  1     1   6  
  1     1   2  
  1     1   233  
  1     1   6  
  1     1   2  
  1     1   67  
  1     1   7  
  1     1   2  
  1     1   106  
  1     1   7  
  1     1   2  
  1     1   228  
  1     1   7  
  1     1   2  
  1     1   65  
  1     1   7  
  1     1   2  
  1     1   111  
  1     1   6  
  1     1   2  
  1     1   229  
  1     1   6  
  1     1   3  
  1     1   66  
  1     1   7  
  1     1   2  
  1     1   109  
  1     1   6  
  1     1   2  
  1     1   233  
  1     1   6  
  1     1   2  
  1     1   56  
  1     1   6  
  1     1   1  
  1     1   81  
  1     1   6  
  1     1   2  
  1     1   135  
  1     1   6  
  1     1   2  
  1     1   68  
  1     1   7  
  1     1   2  
  1     1   108  
  1     1   6  
  1     1   2  
  1     1   220  
  1     1   7  
  1     1   2  
  1     1   83  
  1     1   6  
  1     1   3  
  1     1   108  
  1     1   7  
  1     1   2  
  1     1   213  
  1     1   6  
  1     1   2  
  1     1   81  
  1     1   6  
  1     1   1  
  1     1   108  
  1     1   8  
  1     1   2  
  1     1   212  
  1     1   6  
  1     1   2  
  1     1   80  
  1     1   6  
  1     1   2  
  1     1   109  
  1     1   6  
  1     1   2  
  1     1   214  
  1     1   6  
  1     1   2  
  1     1   58  
  1     1   5  
  1     1   2  
  1     1   84  
  1     1   6  
  1     1   2  
  1     1   135  
  1     1   6  
  1     1   2  
  1     1   101  
  1     1   6  
  1     1   2  
  1     1   136  
  1     1   6  
  1     1   2  
  1     1   217  
  1     1   6  
  1     1   2  
  1     1   105  
  1     1   6  
  1     1   2  
  1     1   149  
  1     1   6  
  1     1   2  
  1     1   215  
  1     1   6  
  1     1   3  
  1     1   103  
  1     1   7  
  1     1   2  
  1     1   135  
  1     1   7  
  1     1   2  
  1     1   212  
  1     1   6  
  1     1   2  
  1     1   101  
  1     1   7  
  1     1   2  
  1     1   134  
  1     1   7  
  1     1   2  
  1     1   201  
  1     1   6  
  1     1   2  
  1     1   58  
  1     1   8  
  1     1   2  
  1     1   83  
  1     1   6  
  1     1   2  
  1     1   181  
  1     1   8  
  1     1   2  
  1     1   104  
  1     1   7  
  1     1   3  
  1     1   139  
  1     1   7  
  1     1   2  
  1     1   213  
  1     1   6  
  1     1   2  
  1     1   110  
  1     1   6  
  1     1   2  
  1     1   135  
  1     1   6  
  1     1   2  
  1     1   204  
  1     1   6  
  1     1   3  
  1     1   106  
  1     1   6  
  1     1   2  
  1     1   134  
  1     1   7  
  1     1   2  
  1     1   215  
  1     1   6  
  1     1   2  
  1     1   103  
  1     1   6  
  1     1   2  
  1     1   134  
  1     1   7  
  1     1   2  
  1     1   211  
  1     1   6  
  1     1   3  
  1     1   58  
  1     1   7  
  1     1   1  
  1     1   90  
  1     1   7  
  1     1   1  
  1     1   132  
  1     1   6  
  1     1   2  
  1     1   79  
  1     1   7  
  1     1   2  
  1     1   108  
  1     1   7  
  1     1   2  
  1     1   213  
  1     1   7  
  1     1   2  
  1     1   81  
  1     1   7  
  1     1   2  
  1     1   108  
  1     1   7  
  1     1   2  
  1     1   218  
  1     1   6  
  1     1   4  
  1     1   80  
  1     1   6  
  1     1   2  
  1     1   114  
  1     1   7  
  1     1   2  
  1     1   207  
  1     1   6  
  1     1   3  
  1     1   76  
  1     1   7  
  1     1   2  
  1     1   110  
  1     1   6  
  1     1   2  
  1     1   218  
  1     1   6  
  1     1   1  
  1     1   97  
  1     1   6  
  1     1   2  
  1     1   122  
  1     1   7  
  1     1   2  
  1     1   193  
  1     1   7  
  1     1   2  
  1     1   95  
  1     1   7  
  1     1   1  
  1     1   114  
  1     1   6  
  1     1   2  
  1     1   196  
  1     1   7  
  1     1   2  
  1     1   111  
  1     1   6  
  1     1   2  
  1     1   114  
  1     1   7  
  1     1   2  
  1     1   191  
  1     1   7  
  1     1   2  
  1     1   103  
  1     1   7  
  1     1   2  
  1     1   113  
  1     1   7  
  1     1   2  
  1     1   193  
  1     1   6  
  1     1   2  
  1     1   92  
  1     1   6  
  1     1   2  
  1     1   113  
  1     1   7  
  1     1   2  
  1     1   207  
  1     1   7  
  1     1   2  
  1     1   89  
  1     1   7  
  1     1   2  
  1     1   112  
  1     1   7  
  1     1   2  
  1     1   193  
  1     1   6  
  1     1   2  
  1     1   56  
  1     1   6  
  1     1   2  
  1     1   82  
  1     1   6  
  1     1   2  
  1     1   144  
  1     1   6  
  1     1   1  
  1     1   112  
  1     1   7  
  1     1   1  
  1     1   146  
  1     1   6  
  1     1   2  
  1     1   250  
  1     1   7  
  1     1   3  
  1     1   110  
  1     1   6  
  1     1   3  
  1     1   151  
  1     1   7  
  1     1   2  
  1     1   267  
  1     1   6  
  1     1   2  
  1     1   111  
  1     1   6  
  1     1   2  
  1     1   141  
  1     1   6  
  1     1   2  
  1     1   248  
  1     1   6  
  1     1   2  
  1     1   108  
  1     1   6  
  1     1   3  
  1     1   143  
  1     1   7  
  1     1   2  
  1     1   262  
  1     1   6  
  1     1   2  
  1     1   57  
  1     1   10  
  1     1   1  
  1     1   87  
  1     1   6  
  1     1   9  
  1     1   138  
  1     1   6  
  1     1   2  
  1     1   113  
  1     1   6  
  1     1   4  
  1     1   146  
  1     1   7  
  1     1   1  
  1     1   253  
  1     1   8  
  1     1   5  
  1     1   101  
  1     1   6  
  1     1   3  
  1     1   169  
  1     1   7  
  1     1   2  
  1     1   262  
  1     1   7  
  1     1   3  
  1     1   110  
  1     1   6  
  1     1   3  
  1     1   147  
  1     1   6  
  1     1   2  
  1     1   245  
  1     1   7  
  1     1   3  
  1     1   110  
  1     1   7  
  1     1   2  
  1     1   151  
  1     1   7  
  1     1   2  
  1     1   292  
  1     1   6  
  1     1   2  
  1     1   68  
  1     1   7  
  1     1   2  
  1     1   88  
  1     1   7  
  1     1   2  
  1     1   126  
  1     1   6  
  1     1   3  
  1     1   164  
  1     1   7  
  1     1   2  
  1     1   167  
  1     1   8  
  1     1   2  
  1     1   253  
  1     1   7  
  1     1   3  
  1     1   145  
  1     1   6  
  1     1   2  
  1     1   158  
  1     1   6  
  1     1   3  
  1     1   249  
  1     1   9  
  1     1   2  
  1     1   143  
  1     1   6  
  1     1   2  
  1     1   167  
  1     1   6  
  1     1   3  
  1     1   266  
  1     1   6  
  1     1   2  
  1     1   143  
  1     1   6  
  1     1   16  
  1     1   167  
  1     1   9  
  1     1   2  
  1     1   276  
  1     1   6  
  1     1   1  
  1     1   57  
  1     1   7  
  1     1   2  
  1     1   82  
  1     1   6  
  1     1   2  
  1     1   132  
  1     1   14  
  1     1   4  
  1     1   153  
  1     1   6  
  1     1   2  
  1     1   189  
  1     1   6  
  1     1   2  
  1     1   245  
  1     1   7  
  1     1   2  
  1     1   136  
  1     1   6  
  1     1   9  
  1     1   157  
  1     1   6  
  1     1   3  
  1     1   255  
  1     1   7  
  1     1   1  
  1     1   152  
  1     1   6  
  1     1   2  
  1     1   158  
  1     1   9  
  1     1   2  
  1     1   251  
  1     1   7  
  1     1   2  
  1     1   145  
  1     1   6  
  1     1   2  
  1     1   155  
  1     1   7  
  1     1   2  
  1     1   269  
  1     1   7  
  1     1   2  
  1     1   69  
  1     1   6  
  1     1   2  
  1     1   83  
  1     1   7  
  1     1   2  
  1     1   133  
  1     1   6  
  1     1   3  
  1     1   110  
  1     1   7  
  1     1   2  
  1     1   143  
  1     1   7  
  1     1   8  
  1     1   253  
  1     1   6  
  1     1   3  
  1     1   108  
  1     1   6  
  1     1   2  
  1     1   146  
  1     1   6  
  1     1   3  
  1     1   256  
  1     1   6  
  1     1   2  
  1     1   114  
  1     1   6  
  1     1   4  
  1     1   151  
  1     1   7  
  1     1   9  
  1     1   265  
  1     1   6  
  1     1   2  
  1     1   111  
  1     1   7  
  1     1   2  
  1     1   145  
  1     1   7  
  1     1   2  
  1     1   257  
  1     1   6  
  1     1   3  
  1     1   74  
  1     1   7  
  1     1   2  
  1     1   101  
  1     1   6  
  1     1   2  
  1     1   183  
  1     1   10  
  1     1   2  
  1     1   79  
  1     1   6  
  1     1   2  
  1     1   100  
  1     1   7  
  1     1   1  
  1     1   183  
  1     1   7  
  1     1   2  
  1     1   62  
  1     1   7  
  1     1   2  
  1     1   102  
  1     1   6  
  1     1   2  
  1     1   200  
  1     1   7  
  1     1   2  
  1     1   74  
  1     1   7  
  1     1   2  
  1     1   98  
  1     1   6  
  1     1   2  
  1     1   187  
  1     1   8  
  1     1   2  
  1     1   76  
  1     1   6  
  1     1   2  
  1     1   97  
  1     1   7  
  1     1   3  
  1     1   182  
  1     1   6  
  1     1   2  
  1     1   74  
  1     1   7  
  1     1   2  
  1     1   101  
  1     1   7  
  1     1   3  
  1     1   178  
  1     1   6  
  1     1   2  
  1     1   76  
  1     1   6  
  1     1   3  
  1     1   97  
  1     1   6  
  1     1   4  
  1     1   180  
  1     1   6  
  1     1   4  
  1     1   87  
  1     1   7  
  1     1   3  
  1     1   108  
  1     1   6  
  1     1   2  
  1     1   181  
  1     1   7  
  1     1   1  
  1     1   77  
  1     1   5  
  1     1   2  
  1     1   102  
  1     1   6  
  1     1   2  
  1     1   182  
  1     1   7  
  1     1   2  
  1     1   76  
  1     1   8  
  1     1   2  
  1     1   115  
  1     1   7  
  1     1   2  
  1     1   179  
  1     1   14  
  1     1   2  
  1     1   72  
  1     1   7  
  1     1   5  
  1     1   98  
  1     1   7  
  1     1   2  
  1     1   185  
  1     1   7  
  1     1   2  
  1     1   76  
  1     1   6  
  1     1   2  
  1     1   106  
  1     1   6  
  1     1   3  
  1     1   179  
  1     1   6  
  1     1   3  
  1     1   81  
  1     1   7  
  1     1   2  
  1     1   342  
  1     1   7  
  1     1   2  
  1     1   206  
  1     1   10  
  1     1   3  
  1     1   79  
  1     1   10  
  1     1   3  
  1     1   102  
  1     1   15  
  1     1   3  
  1     1   189  
  1     1   6  
  1     1   7  
  1     1   84  
  1     1   7  
  1     1   2  
  1     1   103  
  1     1   6  
  1     1   2  
  1     1   188  
  1     1   6  
  1     1   4  
  1     1   80  
  1     1   6  
  1     1   2  
  1     1   105  
  1     1   7  
  1     1   2  
  1     1   187  
  1     1   9  
  1     1   3  
  1     1   77  
  1     1   10  
  1     1   13  
  1     1   106  
  1     1   7  
  1     1   2  
  1     1   196  
  1     1   7  
  1     1   2  
  1     1   75  
  1     1   6  
  1     1   2  
  1     1   104  
  1     1   7  
  1     1   3  
  1     1   194  
  1     1   8  
  1     1   2  
  1     1   75  
  1     1   10  
  1     1   2  
  1     1   118  
  1     1   6  
  1     1   1  
  1     1   186  
  1     1   6  
  1     1   3  
  1     1   79  
  1     1   7  
  1     1   2  
  1     1   103  
  1     1   7  
  1     1   5  
  1     1   201  
  1     1   6  
  1     1   2  
  1     1   71  
  1     1   11  
  1     1   3  
  1     1   99  
  1     1   6  
  1     1   3  
  1     1   135  
  1     1   7  
  1     1   3  
  1     1   84  
  1     1   6  
  1     1   4  
  1     1   112  
  1     1   7  
  1     1   2  
  1     1   190  
  1     1   6  
  1     1   2  
  1     1   78  
  1     1   7  
  1     1   1  
  1     1   104  
  1     1   8  
  1     1   2  
  1     1   198  
  1     1   6  
  1     1   2  
  1     1   87  
  1     1   7  
  1     1   1  
  1     1   99  
  1     1   7  
  1     1   2  
  1     1   180  
  1     1   7  
  1     1   1  
  1     1   74  
  1     1   33  
  1     1   3  
  1     1   106  
  1     1   7  
  1     1   1  
  1     1   182  
  1     1   7  
  1     1   2  
  1     1   78  
  1     1   7  
  1     1   1  
  1     1   104  
  1     1   7  
  1     1   2  
  1     1   184  
  1     1   6  
  1     1   2  
  1     1   79  
  1     1   6  
  1     1   1  
  1     1   123  
  1     1   7  
  1     1   1  
  1     1   185  
  1     1   7  
  1     1   2  
  1     1   71  
  1     1   6  
  1     1   2  
  1     1   74  
  1     1   6  
  1     1   3  
  1     1   119  
  1     1   6  
  1     1   3  
  1     1   66  
  1     1   6  
  1     1   1  
  1     1   74  
  1     1   5  
  1     1   2  
  1     1   120  
  1     1   6  
  1     1   2  
  1     1   72  
  1     1   7  
  1     1   1  
  1     1   73  
  1     1   7  
  1     1   1  
  1     1   118  
  1     1   7  
  1     1   3  
  1     1   62  
  1     1   6  
  1     1   2  
  1     1   74  
  1     1   6  
  1     1   3  
  1     1   117  
  1     1   7  
  1     1   2  
  1     1   61  
  1     1   7  
  1     1   2  
  1     1   71  
  1     1   7  
  1     1   2  
  1     1   117  
  1     1   7  
  1     1   2  
  1     1   59  
  1     1   6  
  1     1   2  
  1     1   73  
  1     1   7  
  1     1   3  
  1     1   114  
  1     1   7  
  1     1   3  
  1     1   60  
  1     1   6  
  1     1   2  
  1     1   73  
  1     1   5  
  1     1   4  
  1     1   116  
  1     1   7  
  1     1   1  
  1     1   81  
  1     1   5  
  1     1   3  
  1     1   73  
  1     1   6  
  1     1   3  
  1     1   118  
  1     1   6  
  1     1   2  
  1     1   66  
  1     1   7  
  1     1   2  
  1     1   75  
  1     1   7  
  1     1   3  
  1     1   125  
  1     1   6  
  1     1   14  
  1     1   64  
  1     1   7  
  1     1   2  
  1     1   74  
  1     1   6  
  1     1   3  
  1     1   116  
  1     1   5  
  1     1   4  
  1     1   61  
  1     1   7  
  1     1   2  
  1     1   72  
  1     1   7  
  1     1   1  
  1     1   113  
  1     1   6  
  1     1   3  
  1     1   60  
  1     1   7  
  1     1   2  
  1     1   71  
  1     1   6  
  1     1   2  
  1     1   116  
  1     1   6  
  1     1   2  
  1     1   61  
  1     1   6  
  1     1   1  
  1     1   72  
  1     1   7  
  1     1   3  
  1     1   118  
  1     1   7  
  1     1   1  
  1     1   61  
  1     1   6  
  1     1   2  
  1     1   73  
  1     1   7  
  1     1   2  
  1     1   113  
  1     1   6  
  1     1   2  
  1     1   60  
  1     1   6  
  1     1   2  
  1     1   71  
  1     1   6  
  1     1   1  
  1     1   115  
  1     1   6  
  1     1   2  
  1     1   59  
  1     1   6  
  1     1   2  
  1     1   72  
  1     1   6  
  1     1   4  
  1     1   134  
  1     1   7  
  1     1   2  
  1     1   58  
  1     1   6  
  1     1   2  
  1     1   92  
  1     1   6  
  1     1   2  
  1     1   183  
  1     1   6  
  1     1   2  
  1     1   73  
  1     1   6  
  1     1   2  
  1     1   84  
  1     1   7  
  1     1   2  
  1     1   138  
  1     1   7  
  1     1   2  
  1     1   73  
  1     1   7  
  1     1   2  
  1     1   96  
  1     1   6  
  1     1   2  
  1     1   187  
  1     1   7  
  1     1   2  
  1     1   78  
  1     1   6  
  1     1   2  
  1     1   119  
  1     1   7  
  1     1   2  
  1     1   184  
  1     1   6  
  1     1   1  
  1     1   77  
  1     1   6  
  1     1   2  
  1     1   104  
  1     1   6  
  1     1   3  
  1     1   190  
  1     1   7  
  1     1   2  
  1     1   78  
  1     1   6  
  1     1   3  
  1     1   116  
  1     1   6  
  1     1   3  
  1     1   229  
  1     1   7  
  1     1   2  
  1     1   93  
  1     1   7  
  1     1   2  
  1     1   138  
  1     1   7  
  1     1   3  
  1     1   283  
  1     1   7  
  1     1   3  
  1     1   75  
  1     1   7  
  1     1   2  
  1     1   156  
  1     1   6  
  1     1   2  
  1     1   230  
  1     1   6  
  1     1   3  
  1     1   82  
  1     1   7  
  1     1   2  
  1     1   120  
  1     1   6  
  1     1   2  
  1     1   187  
  1     1   6  
  1     1   3  
  1     1   56  
  1     1   6  
  1     1   1  
  1     1   89  
  1     1   7  
  1     1   2  
  1     1   212  
  1     1   7  
  1     1   2  
  1     1   85  
  1     1   8  
  1     1   2  
  1     1   129  
  1     1   7  
  1     1   3  
  1     1   280  
  1     1   6  
  1     1   2  
  1     1   80  
  1     1   6  
  1     1   2  
  1     1   131  
  1     1   7  
  1     1   2  
  1     1   285  
  1     1   6  
  1     1   3  
  1     1   81  
  1     1   7  
  1     1   2  
  1     1   131  
  1     1   6  
  1     1   2  
  1     1   320  
  1     1   8  
  1     1   2  
  1     1   81  
  1     1   7  
  1     1   2  
  1     1   129  
  1     1   6  
  1     1   2  
  1     1   297  
  1     1   5  
  1     1   3  
  1     1   111  
  1     1   7  
  1     1   2  
  1     1   131  
  1     1   6  
  1     1   2  
  1     1   313  
  1     1   7  
  1     1   2  
  1     1   70  
  1     1   6  
  1     1   1  
  1     1   87  
  1     1   6  
  1     1   2  
  1     1   167  
  1     1   6  
  1     1   2  
  1     1   89  
  1     1   7  
  1     1   2  
  1     1   100  
  1     1   5  
  1     1   3  
  1     1   185  
  1     1   6  
  1     1   2  
  1     1   76  
  1     1   5  
  1     1   2  
  1     1   101  
  1     1   7  
  1     1   2  
  1     1   183  
  1     1   6  
  1     1   2  
  1     1   64  
  1     1   6  
  1     1   2  
  1     1   94  
  1     1   6  
  1     1   3  
  1     1   195  
  1     1   6  
  1     1   2  
  1     1   75  
  1     1   7  
  1     1   2  
  1     1   94  
  1     1   9  
  1     1   2  
  1     1   216  
  1     1   7  
  1     1   2  
  1     1   72  
  1     1   7  
  1     1   2  
  1     1   100  
  1     1   7  
  1     1   1  
  1     1   211  
  1     1   6  
  1     1   2  
  1     1   76  
  1     1   6  
  1     1   3  
  1     1   102  
  1     1   6  
  1     1   3  
  1     1   180  
  1     1   7  
  1     1   1  
  1     1   81  
  1     1   6  
  1     1   2  
  1     1   98  
  1     1   6  
  1     1   2  
  1     1   192  
  1     1   7  
  1     1   2  
  1     1   62  
  1     1   6  
  1     1   2  
  1     1   126  
  1     1   6  
  1     1   3  
  1     1   180  
  1     1   7  
  1     1   2  
  1     1   76  
  1     1   7  
  1     1   2  
  1     1   109  
  1     1   6  
  1     1   3  
  1     1   185  
  1     1   7  
  1     1   2  
  1     1   77  
  1     1   7  
  1     1   2  
  1     1   97  
  1     1   6  
  1     1   2  
  1     1   192  
  1     1   6  
  1     1   2  
  1     1   76  
  1     1   7  
  1     1   2  
  1     1   101  
  1     1   7  
  1     1   2  
  1     1   177  
  1     1   7  
  1     1   2  
  1     1   68  
  1     1   6  
  1     1   2  
  1     1   89  
  1     1   6  
  1     1   2  
  1     1   134  
  1     1   7  
  1     1   2  
  1     1   79  
  1     1   7  
  1     1   2  
  1     1   105  
  1     1   7  
  1     1   2  
  1     1   207  
  1     1   7  
  1     1   2  
  1     1   77  
  1     1   6  
  1     1   2  
  1     1   112  
  1     1   7  
  1     1   2  
  1     1   204  
  1     1   7  
  1     1   2  
  1     1   76  
  1     1   7  
  1     1   3  
  1     1   111  
  1     1   6  
  1     1   3  
  1     1   213  
  1     1   6  
  1     1   2  
  1     1   74  
  1     1   7  
  1     1   3  
  1     1   105  
  1     1   7  
  1     1   2  
  1     1   217  
  1     1   6  
  1     1   2  
  1     1   56  
  1     1   6  
  1     1   1  
  1     1   82  
  1     1   6  
  1     1   3  
  1     1   134  
  1     1   8  
  1     1   2  
  1     1   78  
  1     1   7  
  1     1   2  
  1     1   108  
  1     1   6  
  1     1   2  
  1     1   221  
  1     1   6  
  1     1   3  
  1     1   80  
  1     1   7  
  1     1   2  
  1     1   106  
  1     1   7  
  1     1   2  
  1     1   210  
  1     1   7  
  1     1   2  
  1     1   67  
  1     1   6  
  1     1   4  
  1     1   104  
  1     1   6  
  1     1   2  
  1     1   214  
  1     1   7  
  1     1   3  
  1     1   79  
  1     1   7  
  1     1   2  
  1     1   102  
  1     1   7  
  1     1   2  
  1     1   210  
  1     1   7  
  1     1   2  
  1     1   77  
  1     1   7  
  1     1   2  
  1     1   85  
  1     1   7  
  1     1   2  
  1     1   138  
  1     1   7  
  1     1   1  
  1     1   113  
  1     1   7  
  1     1   3  
  1     1   105  
  1     1   6  
  1     1   2  
  1     1   210  
  1     1   6  
  1     1   2  
  1     1   117  
  1     1   6  
  1     1   2  
  1     1   122  
  1     1   6  
  1     1   2  
  1     1   210  
  1     1   6  
  1     1   2  
  1     1   101  
  1     1   6  
  1     1   2  
  1     1   121  
  1     1   6  
  1     1   2  
  1     1   222  
  1     1   7  
  1     1   2  
  1     1   107  
  1     1   7  
  1     1   1  
  1     1   136  
  1     1   6  
  1     1   1  
  1     1   212  
  1     1   6  
  1     1   1  
  1     1   58  
  1     1   6  
  1     1   2  
  1     1   82  
  1     1   8  
  1     1   2  
  1     1   136  
  1     1   7  
  1     1   2  
  1     1   153  
  1     1   6  
  1     1   2  
  1     1   122  
  1     1   7  
  1     1   3  
  1     1   213  
  1     1   8  
  1     1   3  
  1     1   116  
  1     1   6  
  1     1   3  
  1     1   120  
  1     1   7  
  1     1   2  
  1     1   209  
  1     1   7  
  1     1   2  
  1     1   104  
  1     1   6  
  1     1   2  
  1     1   127  
  1     1   6  
  1     1   2  
  1     1   213  
  1     1   7  
  1     1   2  
  1     1   103  
  1     1   7  
  1     1   3  
  1     1   122  
  1     1   7  
  1     1   2  
  1     1   210  
  1     1   6  
  1     1   2  
  1     1   56  
  1     1   8  
  1     1   2  
  1     1   88  
  1     1   6  
  1     1   2  
  1     1   134  
  1     1   6  
  1     1   2  
  1     1   79  
  1     1   6  
  1     1   2  
  1     1   112  
  1     1   6  
  1     1   2  
  1     1   211  
  1     1   6  
  1     1   2  
  1     1   79  
  1     1   8  
  1     1   2  
  1     1   108  
  1     1   7  
  1     1   2  
  1     1   211  
  1     1   6  
  1     1   3  
  1     1   76  
  1     1   7  
  1     1   2  
  1     1   109  
  1     1   7  
  1     1   2  
  1     1   213  
  1     1   6  
  1     1   3  
  1     1   79  
  1     1   6  
  1     1   3  
  1     1   113  
  1     1   6  
  1     1   2  
  1     1   213  
  1     1   6  
  1     1   1  
  1     1   87  
  1     1   7  
  1     1   3  
  1     1   114  
  1     1   6  
  1     1   2  
  1     1   193  
  1     1   6  
  1     1   2  
  1     1   82  
  1     1   7  
  1     1   2  
  1     1   107  
  1     1   6  
  1     1   3  
  1     1   193  
  1     1   6  
  1     1   2  
  1     1   89  
  1     1   7  
  1     1   2  
  1     1   111  
  1     1   7  
  1     1   1  
  1     1   225  
  1     1   6  
  1     1   2  
  1     1   84  
  1     1   6  
  1     1   2  
  1     1   111  
  1     1   7  
  1     1   2  
  1     1   207  
  1     1   7  
  1     1   3  
  1     1   99  
  1     1   6  
  1     1   4  
  1     1   112  
  1     1   6  
  1     1   1  
  1     1   200  
  1     1   9  
  1     1   2  
  1     1   87  
  1     1   7  
  1     1   2  
  1     1   112  
  1     1   7  
  1     1   1  
  1     1   199  
  1     1   6  
  1     1   2  
  1     1   71  
  1     1   6  
  1     1   2  
  1     1   82  
  1     1   7  
  1     1   2  
  1     1   136  
  1     1   6  
  1     1   2  
  1     1   107  
  1     1   6  
  1     1   2  
  1     1   142  
  1     1   6  
  1     1   2  
  1     1   247  
  1     1   7  
  1     1   3  
  1     1   107  
  1     1   8  
  1     1   2  
  1     1   130  
  1     1   6  
  1     1   2  
  1     1   251  
  1     1   7  
  1     1   2  
  1     1   118  
  1     1   7  
  1     1   2  
  1     1   131  
  1     1   5  
  1     1   3  
  1     1   267  
  1     1   7  
  1     1   2  
  1     1   109  
  1     1   7  
  1     1   3  
  1     1   139  
  1     1   7  
  1     1   2  
  1     1   256  
  1     1   6  
  1     1   2  
  1     1   59  
  1     1   5  
  1     1   2  
  1     1   84  
  1     1   6  
  1     1   4  
  1     1   132  
  1     1   7  
  1     1   3  
  1     1   113  
  1     1   7  
  1     1   2  
  1     1   141  
  1     1   9  
  1     1   3  
  1     1   250  
  1     1   11  
  1     1   1  
  1     1   111  
  1     1   14  
  1     1   4  
  1     1   129  
  1     1   7  
  1     1   2  
  1     1   258  
  1     1   6  
  1     1   3  
  1     1   106  
  1     1   7  
  1     1   2  
  1     1   129  
  1     1   8  
  1     1   1  
  1     1   257  
  1     1   8  
  1     1   4  
  1     1   102  
  1     1   8  
  1     1   2  
  1     1   128  
  1     1   8  
  1     1   2  
  1     1   249  
  1     1   15  
  1     1   4  
  1     1   57  
  1     1   6  
  1     1   2  
  1     1   83  
  1     1   7  
  1     1   2  
  1     1   139  
  1     1   8  
  1     1   2  
  1     1   130  
  1     1   8  
  1     1   3  
  1     1   163  
  1     1   7  
  1     1   1  
  1     1   253  
  1     1   10  
  1     1   2  
  1     1   153  
  1     1   7  
  1     1   2  
  1     1   176  
  1     1   7  
  1     1   1  
  1     1   251  
  1     1   9  
  1     1   2  
  1     1   136  
  1     1   8  
  1     1   2  
  1     1   158  
  1     1   7  
  1     1   2  
  1     1   248  
  1     1   9  
  1     1   5  
  1     1   125  
  1     1   9  
  1     1   2  
  1     1   148  
  1     1   8  
  1     1   1  
  1     1   253  
  1     1   6  
  1     1   2  
  1     1   74  
  1     1   9  
  1     1   2  
  1     1   85  
  1     1   7  
  1     1   2  
  1     1   140  
  1     1   7  
  1     1   1  
  1     1   132  
  1     1   8  
  1     1   1  
  1     1   157  
  1     1   6  
  1     1   3  
  1     1   289  
  1     1   7  
  1     1   2  
  1     1   122  
  1     1   7  
  1     1   4  
  1     1   164  
  1     1   8  
  1     1   2  
  1     1   246  
  1     1   6  
  1     1   2  
  1     1   126  
  1     1   7  
  1     1   2  
  1     1   166  
  1     1   8  
  1     1   3  
  1     1   251  
  1     1   7  
  1     1   2  
  1     1   122  
  1     1   6  
  1     1   2  
  1     1   154  
  1     1   8  
  1     1   4  
  1     1   242  
  1     1   6  
  1     1   3  
  1     1   56  
  1     1   6  
  1     1   2  
  1     1   83  
  1     1   6  
  1     1   13  
  1     1   134  
  1     1   7  
  1     1   2  
  1     1   112  
  1     1   7  
  1     1   4  
  1     1   131  
  1     1   7  
  1     1   2  
  1     1   249  
  1     1   6  
  1     1   3  
  1     1   113  
  1     1   7  
  1     1   2  
  1     1   146  
  1     1   7  
  1     1   2  
  1     1   253  
  1     1   7  
  1     1   3  
  1     1   118  
  1     1   6  
  1     1   6  
  1     1   156  
  1     1   6  
  1     1   2  
  1     1   263  
  1     1   6  
  1     1   1  
  1     1   115  
  1     1   7  
  1     1   3  
  1     1   149  
  1     1   7  
  1     1   3  
  1     1   270  
  1     1   7  
  1     1   3  
  1     1   87  
  1     1   6  
  1     1   2  
  1     1   113  
  1     1   6  
  1     1   3  
  1     1   195  
  1     1   6  
  1     1   2  
  1     1   81  
  1     1   6  
  1     1   3  
  1     1   99  
  1     1   6  
  1     1   3  
  1     1   203  
  1     1   11  
  1     1   2  
  1     1   73  
  1     1   11  
  1     1   3  
  1     1   99  
  1     1   12  
  1     1   3  
  1     1   193  
  1     1   6  
  1     1   2  
  1     1   76  
  1     1   8  
  1     1   2  
  1     1   105  
  1     1   12  
  1     1   2  
  1     1   202  
  1     1   7  
  1     1   2  
  1     1   72  
  1     1   6  
  1     1   2  
  1     1   110  
  1     1   6  
  1     1   2  
  1     1   182  
  1     1   7  
  1     1   3  
  1     1   77  
  1     1   6  
  1     1   4  
  1     1   101  
  1     1   7  
  1     1   3  
  1     1   187  
  1     1   6  
  1     1   2  
  1     1   101  
  1     1   6  
  1     1   2  
  1     1   99  
  1     1   7  
  1     1   3  
  1     1   184  
  1     1   7  
  1     1   4  
  1     1   73  
  1     1   7  
  1     1   2  
  1     1   109  
  1     1   7  
  1     1   3  
  1     1   180  
  1     1   7  
  1     1   2  
  1     1   64  
  1     1   6  
  1     1   3  
  1     1   110  
  1     1   7  
  1     1   2  
  1     1   182  
  1     1   8  
  1     1   2  
  1     1   81  
  1     1   7  
  1     1   2  
  1     1   114  
  1     1   6  
  1     1   3  
  1     1   216  
  1     1   6  
  1     1   2  
  1     1   61  
  1     1   7  
  1     1   4  
  1     1   101  
  1     1   8  
  1     1   3  
  1     1   179  
  1     1   6  
  1     1   3  
  1     1   73  
  1     1   7  
  1     1   3  
  1     1   109  
  1     1   6  
  1     1   2  
  1     1   177  
  1     1   6  
  1     1   2  
  1     1   82  
  1     1   9  
  1     1   2  
  1     1   102  
  1     1   6  
  1     1   2  
  1     1   206  
  1     1   6  
  1     1   2  
  1     1   65  
  1     1   8  
  1     1   4  
  1     1   117  
  1     1   7  
  1     1   2  
  1     1   194  
  1     1   6  
  1     1   3  
  1     1   80  
  1     1   19  
  1     1   2  
  1     1   128  
  1     1   7  
  1     1   3  
  1     1   193  
  1     1   6  
  1     1   2  
  1     1   78  
  1     1   7  
  1     1   2  
  1     1   84  
  1     1   6  
  1     1   3  
  1     1   197  
  1     1   7  
  1     1   2  
  1     1   81  
  1     1   7  
  1     1   2  
  1     1   113  
  1     1   7  
  1     1   5  
  1     1   199  
  1     1   7  
  1     1   2  
  1     1   78  
  1     1   6  
  1     1   2  
  1     1   124  
  1     1   6  
  1     1   2  
  1     1   189  
  1     1   6  
  1     1   2  
  1     1   64  
  1     1   6  
  1     1   3  
  1     1   109  
  1     1   6  
  1     1   2  
  1     1   193  
  1     1   6  
  1     1   3  
  1     1   82  
  1     1   6  
  1     1   2  
  1     1   103  
  1     1   6  
  1     1   3  
  1     1   182  
  1     1   6  
  1     1   1  
  1     1   81  
  1     1   7  
  1     1   2  
  1     1   112  
  1     1   7  
  1     1   2  
  1     1   194  
  1     1   11  
  1     1   2  
  1     1   84  
  1     1   11  
  1     1   2  
  1     1   102  
  1     1   6  
  1     1   2  
  1     1   183  
  1     1   6  
  1     1   3  
  1     1   82  
  1     1   6  
  1     1   3  
  1     1   100  
  1     1   7  
  1     1   2  
  1     1   184  
  1     1   8  
  1     1   2  
  1     1   91  
  1     1   7  
  1     1   3  
  1     1   139  
  1     1   8  
  1     1   2  
  1     1   227  
  1     1   7  
  1     1   2  
  1     1   105  
  1     1   8  
  1     1   2  
  1     1   116  
  1     1   54  
  1     1   3  
  1     1   202  
  1     1   10  
  1     1   3  
  1     1   116  
  1     1   9  
  1     1   2  
  1     1   194  
  1     1   11  
  1     1   2  
  1     1   272  
  1     1   9  
  1     1   4  
  1     1   137  
  1     1   10  
  1     1   1  
  1     1   148  
  1     1   9  
  1     1   2  
  1     1   266  
  1     1   11  
  1     1   3  
  1     1   132  
  1     1   9  
  1     1   2  
  1     1   145  
  1     1   9  
  1     1   3  
  1     1   264  
  1     1   10  
  1     1   2  
  1     1   122  
  1     1   9  
  1     1   2  
  1     1   172  
  1     1   9  
  1     1   2  
  1     1   266  
  1     1   8  
  1     1   1  
  1     1   106  
  1     1   7  
  1     1   2  
  1     1   123  
  1     1   8  
  1     1   2  
  1     1   181  
  1     1   10  
  1     1   3  
  1     1   182  
  1     1   9  
  1     1   3  
  1     1   152  
  1     1   10  
  1     1   2  
  1     1   263  
  1     1   9  
  1     1   2  
  1     1   128  
  1     1   10  
  1     1   2  
  1     1   146  
  1     1   11  
  1     1   2  
  1     1   261  
  1     1   8  
  1     1   2  
  1     1   109  
  1     1   10  
  1     1   2  
  1     1   165  
  1     1   10  
  1     1   3  
  1     1   261  
  1     1   9  
  1     1   1  
  1     1   124  
  1     1   9  
  1     1   2  
  1     1   169  
  1     1   8  
  1     1   4  
  1     1   313  
  1     1   8  
  1     1   3  
  1     1   91  
  1     1   9  
  1     1   2  
  1     1   119  
  1     1   8  
  1     1   2  
  1     1   185  
  1     1   10  
  1     1   2  
  1     1   149  
  1     1   11  
  1     1   1  
  1     1   192  
  1     1   11  
  1     1   3  
  1     1   257  
  1     1   11  
  1     1   3  
  1     1   147  
  1     1   10  
  1     1   3  
  1     1   179  
  1     1   9  
  1     1   2  
  1     1   276  
  1     1   9  
  1     1   2  
  1     1   146  
  1     1   9  
  1     1   3  
  1     1   181  
  1     1   10  
  1     1   2  
  1     1   313  
  1     1   9  
  1     1   2  
  1     1   148  
  1     1   10  
  1     1   1  
  1     1   180  
  1     1   10  
  1     1   2  
  1     1   259  
  1     1   52  
  1     1   3  
  1     1   110  
  1     1   8  
  1     1   2  
  1     1   121  
  1     1   8  
  1     1   2  
  1     1   175  
  1     1   10  
  1     1   3  
  1     1   149  
  1     1   10  
  1     1   3  
  1     1   185  
  1     1   11  
  1     1   3  
  1     1   280  
  1     1   12  
  1     1   3  
  1     1   156  
  1     1   11  
  1     1   2  
  1     1   183  
  1     1   11  
  1     1   3  
  1     1   264  
  1     1   10  
  1     1   3  
  1     1   200  
  1     1   12  
  1     1   2  
  1     1   185  
  1     1   9  
  1     1   3  
  1     1   311  
  1     1   9  
  1     1   2  
  1     1   145  
  1     1   9  
  1     1   3  
  1     1   175  
  1     1   8  
  1     1   3  
  1     1   267  
  1     1   9  
  1     1   2  
  1     1   91  
  1     1   7  
  1     1   4  
  1     1   116  
  1     1   8  
  1     1   2  
  1     1   207  
  1     1   12  
  1     1   2  
  1     1   130  
  1     1   9  
  1     1   3  
  1     1   152  
  1     1   9  
  1     1   2  
  1     1   264  
  1     1   9  
  1     1   2  
  1     1   109  
  1     1   9  
  1     1   2  
  1     1   132  
  1     1   9  
  1     1   2  
  1     1   227  
  1     1   24  
  1     1   2  
  1     1   109  
  1     1   11  
  1     1   2  
  1     1   130  
  1     1   9  
  1     1   2  
  1     1   225  
  1     1   10  
  1     1   1  
  1     1   106  
  1     1   10  
  1     1   2  
  1     1   127  
  1     1   9  
  1     1   3  
  1     1   230  
  1     1   9  
  1     1   2  
  1     1   96  
  1     1   7  
  1     1   2  
  1     1   116  
  1     1   8  
  1     1   1  
  1     1   228  
  1     1   7  
  1     1   3  
  1     1   158  
  1     1   7  
  1     1   3  
  1     1   145  
  1     1   8  
  1     1   2  
  1     1   242  
  1     1   9  
  1     1   2  
  1     1   115  
  1     1   8  
  1     1   2  
  1     1   138  
  1     1   9  
  1     1   2  
  1     1   248  
  1     1   8  
  1     1   2  
  1     1   113  
  1     1   7  
  1     1   2  
  1     1   138  
  1     1   9  
  1     1   2  
  1     1   245  
  1     1   9  
  1     1   2  
  1     1   116  
  1     1   7  
  1     1   2  
  1     1   138  
  1     1   9  
  1     1   2  
  1     1   247  
  1     1   9  
  1     1   2  
  1     1   113  
  1     1   7  
  1     1   2  
  1     1   138  
  1     1   10  
  1     1   2  
  1     1   246  
  1     1   8  
  1     1   2  
  1     1   112  
  1     1   8  
  1     1   2  
  1     1   140  
  1     1   9  
  1     1   1  
  1     1   254  
  1     1   9  
  1     1   2  
  1     1   121  
  1     1   9  
  1     1   1  
  1     1   122  
  1     1   7  
  1     1   3  
  1     1   244  
  1     1   10  
  1     1   2  
  1     1   187  
  1     1   9  
  1     1   2  
  1     1   373  
  1     1   10  
  1     1   2  
  1     1   402  
  1     1   10  
  1     1   2  
  1     1   170  
  1     1   11  
  1     1   2  
  1     1   379  
  1     1   10  
  1     1   2  
  1     1   407  
  1     1   8  
  1     1   2  
  1     1   181  
  1     1   8  
  1     1   2  
  1     1   375  
  1     1   10  
  1     1   2  
  1     1   360  
  1     1   9  
  1     1   2  
  1     1   264  
  1     1   10  
  1     1   1  
  1     1   415  
  1     1   10  
  1     1   2  
  1     1   469  
  1     1   8  
  1     1   4  
  1     1   104  
  1     1   8  
  1     1   1  
  1     1   138  
  1     1   7  
  1     1   3  
  1     1   284  
  1     1   7  
  1     1   3  
  1     1   119  
  1     1   7  
  1     1   3  
  1     1   144  
  1     1   8  
  1     1   2  
  1     1   229  
  1     1   10  
  1     1   3  
  1     1   152  
  1     1   9  
  1     1   2  
  1     1   172  
  1     1   9  
  1     1   2  
  1     1   266  
  1     1   9  
  1     1   2  
  1     1   124  
  1     1   7  
  1     1   2  
  1     1   149  
  1     1   9  
  1     1   2  
  1     1   279  
  1     1   7  
  1     1   2  
  1     1   109  
  1     1   8  
  1     1   2  
  1     1   135  
  1     1   8  
  1     1   3  
  1     1   181  
  1     1   57  
  1     1   5  
  1     1   144  
  1     1   7  
  1     1   2  
  1     1   176  
  1     1   8  
  1     1   2  
  1     1   266  
  1     1   8  
  1     1   2  
  1     1   153  
  1     1   7  
  1     1   2  
  1     1   224  
  1     1   9  
  1     1   3  
  1     1   267  
  1     1   7  
  1     1   4  
  1     1   131  
  1     1   8  
  1     1   2  
  1     1   165  
  1     1   8  
  1     1   2  
  1     1   261  
  1     1   7  
  1     1   2  
  1     1   136  
  1     1   9  
  1     1   2  
  1     1   158  
  1     1   7  
  1     1   2  
  1     1   252  
  1     1   8  
  1     1   3  
  1     1   140  
  1     1   9  
  1     1   3  
  1     1   169  
  1     1   9  
  1     1   3  
  1     1   244  
  1     1   9  
  1     1   2  
  1     1   128  
  1     1   8  
  1     1   3  
  1     1   156  
  1     1   9  
  1     1   3  
  1     1   245  
  1     1   8  
  1     1   3  
  1     1   123  
  1     1   7  
  1     1   5  
  1     1   158  
  1     1   7  
  1     1   2  
  1     1   188  
  1     1   7  
  1     1   2  
  1     1   126  
  1     1   8  
  1     1   3  
  1     1   136  
  1     1   7  
  1     1   2  
  1     1   221  
  1     1   8  
  1     1   2  
  1     1   148  
  1     1   8  
  1     1   2  
  1     1   175  
  1     1   8  
  1     1   2  
  1     1   225  
  1     1   9  
  1     1   2  
  1     1   150  
  1     1   8  
  1     1   2  
  1     1   162  
  1     1   8  
  1     1   3  
  1     1   230  
  1     1   8  
  1     1   2  
  1     1   153  
  1     1   8  
  1     1   3  
  1     1   163  
  1     1   7  
  1     1   2  
  1     1   231  
  1     1   7  
  1     1   3  
  1     1   151  
  1     1   8  
  1     1   3  
  1     1   166  
  1     1   8  
  1     1   2  
  1     1   223  
  1     1   8  
  1     1   2  
  1     1   151  
  1     1   8  
  1     1   2  
  1     1   162  
  1     1   8  
  1     1   2  
  1     1   233  
  1     1   9  
  1     1   2  
  1     1   151  
  1     1   8  
  1     1   2  
  1     1   169  
  1     1   7  
  1     1   2  
  1     1   224  
  1     1   8  
  1     1   2  
  1     1   153  
  1     1   7  
  1     1   3  
  1     1   166  
  1     1   7  
  1     1   2  
  1     1   227  
  1     1   8  
  1     1   3  
  1     1   150  
  1     1   9  
  1     1   2  
  1     1   165  
  1     1   8  
  1     1   2  
  1     1   233  
  1     1   9  
  1     1   2  
  1     1   149  
  1     1   9  
  1     1   2  
  1     1   164  
  1     1   8  
  1     1   2  
  1     1   231  
  1     1   9  
  1     1   2  
  1     1   149  
  1     1   8  
  1     1   2  
  1     1   162  
  1     1   8  
  1     1   3  
  1     1   237  
  1     1   7  
  1     1   2  
  1     1   99  
  1     1   14  
  1     1   2  
  1     1   113  
  1     1   6  
  1     1   4  
  1     1   182  
  1     1   8  
  1     1   2  
  1     1   105  
  1     1   6  
  1     1   3  
  1     1   124  
  1     1   7  
  1     1   2  
  1     1   179  
  1     1   6  
  1     1   2  
  1     1   99  
  1     1   6  
  1     1   4  
  1     1   112  
  1     1   6  
  1     1   2  
  1     1   176  
  1     1   8  
  1     1   2  
  1     1   103  
  1     1   7  
  1     1   2  
  1     1   124  
  1     1   7  
  1     1   3  
  1     1   174  
  1     1   6  
  1     1   3  
  1     1   100  
  1     1   8  
  1     1   2  
  1     1   126  
  1     1   9  
  1     1   2  
  1     1   213  
  1     1   9  
  1     1   1  
  1     1   102  
  1     1   6  
  1     1   3  
  1     1   96  
  1     1   6  
  1     1   3  
  1     1   163  
  1     1   6  
  1     1   3  
  1     1   81  
  1     1   6  
  1     1   3  
  1     1   97  
  1     1   7  
  1     1   2  
  1     1   221  
  1     1   8  
  1     1   2  
  1     1   93  
  1     1   6  
  1     1   2  
  1     1   101  
  1     1   7  
  1     1   2  
  1     1   180  
  1     1   9  
  1     1   3  
  1     1   89  
  1     1   6  
  1     1   3  
  1     1   109  
  1     1   9  
  1     1   5  
  1     1   178  
  1     1   10  
  1     1   2  
  1     1   109  
  1     1   7  
  1     1   2  
  1     1   122  
  1     1   8  
  1     1   2  
  1     1   267  
  1     1   7  
  1     1   2  
  1     1   123  
  1     1   7  
  1     1   3  
  1     1   168  
  1     1   9  
  1     1   2  
  1     1   343  
  1     1   8  
  1     1   2  
  1     1   119  
  1     1   8  
  1     1   2  
  1     1   148  
  1     1   7  
  1     1   3  
  1     1   272  
  1     1   6  
  1     1   2  
  1     1   97  
  1     1   7  
  1     1   2  
  1     1   129  
  1     1   7  
  1     1   3  
  1     1   201  
  1     1   6  
  1     1   3  
  1     1   108  
  1     1   11  
  1     1   3  
  1     1   128  
  1     1   7  
  1     1   3  
  1     1   198  
  1     1   6  
  1     1   3  
  1     1   156  
  1     1   7  
  1     1   3  
  1     1   166  
  1     1   7  
  1     1   3  
  1     1   320  
  1     1   11  
  1     1   2  
  1     1   123  
  1     1   6  
  1     1   5  
  1     1   171  
  1     1   11  
  1     1   2  
  1     1   313  
  1     1   6  
  1     1   3  
  1     1   121  
  1     1   7  
  1     1   2  
  1     1   170  
  1     1   7  
  1     1   1  
  1     1   304  
  1     1   8  
  1     1   2  
  1     1   129  
  1     1   8  
  1     1   2  
  1     1   167  
  1     1   7  
  1     1   2  
  1     1   316  
  1     1   6  
  1     1   2  
  1     1   127  
  1     1   6  
  1     1   3  
  1     1   169  
  1     1   8  
  1     1   3  
  1     1   321  
  1     1   6  
  1     1   1  
  1     1   102  
  1     1   6  
  1     1   2  
  1     1   117  
  1     1   6  
  1     1   2  
  1     1   217  
  1     1   5  
  1     1   2  
  1     1   117  
  1     1   6  
  1     1   3  
  1     1   126  
  1     1   8  
  1     1   4  
  1     1   205  
  1     1   7  
  1     1   2  
  1     1   120  
  1     1   6  
  1     1   2  
  1     1   146  
  1     1   6  
  1     1   2  
  1     1   209  
  1     1   7  
  1     1   2  
  1     1   124  
  1     1   10  
  1     1   2  
  1     1   134  
  1     1   6  
  1     1   2  
  1     1   203  
  1     1   7  
  1     1   2  
  1     1   104  
  1     1   7  
  1     1   2  
  1     1   137  
  1     1   6  
  1     1   5  
  1     1   204  
  1     1   8  
  1     1   2  
  1     1   111  
  1     1   7  
  1     1   1  
  1     1   121  
  1     1   6  
  1     1   2  
  1     1   277  
  1     1   8  
  1     1   2  
  1     1   115  
  1     1   6  
  1     1   2  
  1     1   132  
  1     1   6  
  1     1   2  
  1     1   245  
  1     1   7  
  1     1   2  
  1     1   134  
  1     1   8  
  1     1   2  
  1     1   129  
  1     1   6  
  1     1   3  
  1     1   210  
  1     1   6  
  1     1   2  
  1     1   134  
  1     1   7  
  1     1   1  
  1     1   121  
  1     1   7  
  1     1   2  
  1     1   200  
  1     1   6  
  1     1   2  
  1     1   104  
  1     1   6  
  1     1   2  
  1     1   148  
  1     1   6  
  1     1   3  
  1     1   222  
  1     1   6  
  1     1   2  
  1     1   104  
  1     1   6  
  1     1   3  
  1     1   145  
  1     1   6  
  1     1   2  
  1     1   220  
  1     1   6  
  1     1   2  
  1     1   113  
  1     1   6  
  1     1   3  
  1     1   131  
  1     1   7  
  1     1   2  
  1     1   229  
  1     1   7  
  1     1   3  
  1     1   120  
  1     1   7  
  1     1   2  
  1     1   107  
  1     1   9  
  1     1   1  
  1     1   171  
  1     1   6  
  1     1   3  
  1     1   119  
  1     1   8  
  1     1   2  
  1     1   152  
  1     1   6  
  1     1   2  
  1     1   273  
  1     1   7  
  1     1   2  
  1     1   110  
  1     1   6  
  1     1   2  
  1     1   150  
  1     1   7  
  1     1   2  
  1     1   264  
  1     1   6  
  1     1   2  
  1     1   108  
  1     1   7  
  1     1   4  
  1     1   164  
  1     1   7  
  1     1   2  
  1     1   298  
  1     1   6  
  1     1   2  
  1     1   108  
  1     1   7  
  1     1   3  
  1     1   146  
  1     1   7  
  1     1   2  
  1     1   265  
  1     1   7  
  1     1   3  
  1     1   94  
  1     1   6  
  1     1   4  
  1     1   106  
  1     1   6  
  1     1   3  
  1     1   168  
  1     1   5  
  1     1   2  
  1     1   128  
  1     1   7  
  1     1   1  
  1     1   175  
  1     1   6  
  1     1   3  
  1     1   261  
  1     1   6  
  1     1   1  
  1     1   118  
  1     1   7  
  1     1   2  
  1     1   147  
  1     1   7  
  1     1   2  
  1     1   254  
  1     1   6  
  1     1   2  
  1     1   115  
  1     1   6  
  1     1   2  
  1     1   150  
  1     1   8  
  1     1   2  
  1     1   266  
  1     1   7  
  1     1   2  
  1     1   120  
  1     1   7  
  1     1   3  
  1     1   146  
  1     1   6  
  1     1   3  
  1     1   264  
  1     1   6  
  1     1   2  
  1     1   98  
  1     1   6  
  1     1   2  
  1     1   115  
  1     1   6  
  1     1   2  
  1     1   169  
  1     1   7  
  1     1   3  
  1     1   132  
  1     1   6  
  1     1   2  
  1     1   177  
  1     1   7  
  1     1   2  
  1     1   264  
  1     1   6  
  1     1   2  
  1     1   133  
  1     1   6  
  1     1   2  
  1     1   169  
  1     1   6  
  1     1   2  
  1     1   271  
  1     1   6  
  1     1   3  
  1     1   148  
  1     1   8  
  1     1   2  
  1     1   173  
  1     1   7  
  1     1   1  
  1     1   272  
  1     1   5  
  1     1   3  
  1     1   135  
  1     1   6  
  1     1   1  
  1     1   169  
  1     1   7  
  1     1   2  
  1     1   269  
  1     1   7  
  1     1   1  
  1     1   87  
  1     1   6  
  1     1   2  
  1     1   121  
  1     1   7  
  1     1   2  
  1     1   174  
  1     1   7  
  1     1   2  
  1     1   139  
  1     1   7  
  1     1   3  
  1     1   165  
  1     1   7  
  1     1   2  
  1     1   279  
  1     1   7  
  1     1   3  
  1     1   142  
  1     1   7  
  1     1   3  
  1     1   171  
  1     1   8  
  1     1   3  
  1     1   267  
  1     1   6  
  1     1   3  
  1     1   136  
  1     1   6  
  1     1   2  
  1     1   201  
  1     1   6  
  1     1   1  
  1     1   250  
  1     1   6  
  1     1   2  
  1     1   144  
  1     1   7  
  1     1   2  
  1     1   172  
  1     1   6  
  1     1   3  
  1     1   251  
  1     1   7  
  1     1   2  
  1     1   99  
  1     1   6  
  1     1   2  
  1     1   114  
  1     1   6  
  1     1   3  
  1     1   177  
  1     1   6  
  1     1   2  
  1     1   122  
  1     1   8  
  1     1   2  
  1     1   154  
  1     1   7  
  1     1   1  
  1     1   269  
  1     1   6  
  1     1   2  
  1     1   130  
  1     1   6  
  1     1   2  
  1     1   169  
  1     1   8  
  1     1   1  
  1     1   275  
  1     1   6  
  1     1   2  
  1     1   110  
  1     1   7  
  1     1   2  
  1     1   148  
  1     1   7  
  1     1   2  
  1     1   270  
  1     1   5  
  1     1   2  
  1     1   121  
  1     1   7  
  1     1   3  
  1     1   163  
  1     1   6  
  1     1   2  
  1     1   261  
  1     1   6  
  1     1   2  
  1     1   129  
  1     1   7  
  1     1   2  
  1     1   152  
  1     1   6  
  1     1   3  
  1     1   213  
  1     1   6  
  1     1   2  
  1     1   152  
  1     1   6  
  1     1   2  
  1     1   134  
  1     1   7  
  1     1   2  
  1     1   222  
  1     1   6  
  1     1   2  
  1     1   120  
  1     1   6  
  1     1   2  
  1     1   151  
  1     1   6  
  1     1   3  
  1     1   241  
  1     1   6  
  1     1   2  
  1     1   116  
  1     1   7  
  1     1   2  
  1     1   146  
  1     1   7  
  1     1   2  
  1     1   218  
  1     1   6  
  1     1   2  
  1     1   123  
  1     1   7  
  1     1   2  
  1     1   147  
  1     1   7  
  1     1   2  
  1     1   216  
  1     1   6  
  1     1   2  
  1     1   139  
  1     1   7  
  1     1   2  
  1     1   176  
  1     1   7  
  1     1   2  
  1     1   219  
  1     1   6  
  1     1   2  
  1     1   114  
  1     1   7  
  1     1   1  
  1     1   113  
  1     1   6  
  1     1   2  
  1     1   181  
  1     1   6  
  1     1   3  
  1     1   134  
  1     1   6  
  1     1   2  
  1     1   163  
  1     1   6  
  1     1   3  
  1     1   277  
  1     1   7  
  1     1   1  
  1     1   130  
  1     1   8  
  1     1   3  
  1     1   179  
  1     1   6  
  1     1   2  
  1     1   302  
  1     1   6  
  1     1   3  
  1     1   161  
  1     1   7  
  1     1   2  
  1     1   168  
  1     1   6  
  1     1   2  
  1     1   280  
  1     1   6  
  1     1   2  
  1     1   136  
  1     1   7  
  1     1   2  
  1     1   167  
  1     1   6  
  1     1   2  
  1     1   288  
  1     1   6  
  1     1   2  
  1     1   96  
  1     1   7  
  1     1   2  
  1     1   113  
  1     1   7  
  1     1   2  
  1     1   165  
  1     1   6  
  1     1   2  
  1     1   135  
  1     1   6  
  1     1   3  
  1     1   176  
  1     1   7  
  1     1   3  
  1     1   278  
  1     1   6  
  1     1   2  
  1     1   139  
  1     1   6  
  1     1   2  
  1     1   166  
  1     1   6  
  1     1   2  
  1     1   275  
  1     1   6  
  1     1   2  
  1     1   132  
  1     1   7  
  1     1   2  
  1     1   172  
  1     1   6  
  1     1   2  
  1     1   270  
  1     1   6  
  1     1   2  
  1     1   138  
  1     1   7  
  1     1   2  
  1     1   166  
  1     1   7  
  1     1   3  
  1     1   276  
  1     1   6  
  1     1   3  
  1     1   97  
  1     1   6  
  1     1   2  
  1     1   118  
  1     1   6  
  1     1   2  
  1     1   175  
  1     1   6  
  1     1   2  
  1     1   179  
  1     1   7  
  1     1   2  
  1     1   185  
  1     1   7  
  1     1   1  
  1     1   270  
  1     1   6  
  1     1   2  
  1     1   161  
  1     1   6  
  1     1   3  
  1     1   183  
  1     1   7  
  1     1   5  
  1     1   270  
  1     1   7  
  1     1   2  
  1     1   165  
  1     1   6  
  1     1   2  
  1     1   184  
  1     1   8  
  1     1   2  
  1     1   281  
  1     1   6  
  1     1   2  
  1     1   160  
  1     1   6  
  1     1   2  
  1     1   197  
  1     1   7  
  1     1   2  
  1     1   260  
  1     1   6  
  1     1   2  
  1     1   100  
  1     1   8  
  1     1   2  
  1     1   116  
  1     1   7  
  1     1   2  
  1     1   164  
  1     1   6  
  1     1   2  
  1     1   164  
  1     1   6  
  1     1   3  
  1     1   191  
  1     1   7  
  1     1   3  
  1     1   267  
  1     1   6  
  1     1   3  
  1     1   164  
  1     1   7  
  1     1   2  
  1     1   190  
  1     1   6  
  1     1   2  
  1     1   270  
  1     1   6  
  1     1   2  
  1     1   163  
  1     1   6  
  1     1   2  
  1     1   181  
  1     1   6  
  1     1   2  
  1     1   281  
  1     1   6  
  1     1   1  
  1     1   167  
  1     1   7  
  1     1   2  
  1     1   177  
  1     1   7  
  1     1   1  
  1     1   262  
  1     1   6  
  1     1   2  
  1     1   103  
  1     1   6  
  1     1   2  
  1     1   115  
  1     1   6  
  1     1   3  
  1     1   174  
  1     1   8  
  1     1   1  
  1     1   138  
  1     1   7  
  1     1   3  
  1     1   185  
  1     1   6  
  1     1   2  
  1     1   271  
  1     1   7  
  1     1   2  
  1     1   132  
  1     1   7  
  1     1   1  
  1     1   169  
  1     1   7  
  1     1   1  
  1     1   275  
  1     1   6  
  1     1   2  
  1     1   132  
  1     1   6  
  1     1   2  
  1     1   166  
  1     1   7  
  1     1   2  
  1     1   286  
  1     1   6  
  1     1   2  
  1     1   138  
  1         7  
  1         2  
  1         177  
  1         6  
  1         2  
  1         317  
  1         6  
  1         2  
  1         108  
  1         7  
  1         2  
  1         124  
  1         8  
  1         2  
  1         206  
  1         7  
  1         2  
  1         110  
  1         6  
  1         2  
  1         125  
  1         6  
  1         3  
  1         202  
  1         6  
  1         1  
  1         107  
  1         8  
  1         2  
  1         129  
  1         7  
  1         1  
  1         201  
  1         6  
  1         2  
  1         115  
  1         8  
  1         2  
  1         125  
  1         6  
  1         2  
  1         202  
  1         8  
  1         2  
  1         109  
  1         7  
  1         3  
  1         126  
  1         7  
  1         2  
  1         210  
  1         7  
  1         2  
  1         110  
  1         7  
  1         1  
  1         124  
  1         6  
  1         2  
  1         204  
  1         7  
  1         1  
  1         106  
  1         6  
  1         2  
  1         124  
  1         7  
  1         1  
  1         203  
  1         7  
  1         1  
  1         90  
  1         6  
  1         2  
  1         125  
  1         6  
  1         2  
  1         200  
  1         7  
  1         2  
  1         108  
  1         7  
  1         2  
  1         124  
  1         7  
  1         2  
  1         207  
  1         7  
  1         1  
  1         113  
  1         7  
  1         3  
  1         133  
  1         7  
  1         2  
  1         194  
  1         5  
  1         2  
  1         116  
  1         7  
  1         2  
  1         124  
  1         6  
  1         2  
  1         201  
  1         6  
  1         2  
  1         108  
  1         7  
  1         2  
  1         132  
  1         6  
  1         2  
  1         204  
  1         7  
  1         2  
  1         111  
  1         7  
  1         2  
  1         156  
  1         7  
  1         3  
  1         206  
  1         8  
  1         3  
  1         115  
  1         6  
  1         2  
  1         131  
  1         7  
  1         2  
  1         206  
  1         6  
  1         3  
  1         111  
  1         7  
  1         2  
  1         140  
  1         6  
  1         2  
  1         205  
  1         6  
  1         2  
  1         109  
  1         7  
  1         2  
  1         136  
  1         7  
  1         2  
  1         208  
  1         8  
  1         2  
  1         114  
  1         6  
  1         3  
  1         125  
  1         6  
  1         1  
  1         206  
  1         6  
  1         2  
  1         114  
  1         8  
  1         2  
  1         124  
  1         7  
  1         28  
  1         207  
  1         6  
  1         2  
  1         109  
  1         7  
  1         2  
  1         127  
  1         6  
  1         2  
  1         208  
  1         6  
  1         3  
  1         111  
  1         7  
  1         3  
  1         131  
  1         7  
  1         2  
  1         197  
  1         7  
  1         2  
  1         110  
  1         7  
  1         2  
  1         129  
  1         6  
  1         2  
  1         202  
  1         6  
  1         4  
  1         111  
  1         8  
  1         2  
  1         130  
  1         8  
  1         2  
  1         207  
  1         6  
  1         2  
  1         115  
  1         6  
  1         2  
  1         126  
  1         6  
  1         2  
  1         211  
  1         6  
  1         2  
  1         109  
  1         7  
  1         2  
  1         157  
  1         7  
  1         2  
  1         201  
  1         7  
  1         2  
  1         99  
  1         6  
  1         2  
  1         117  
  1         6  
  1         2  
  1         171  
  1         6  
  1         2  
  1         119  
  1         7  
  1         2  
  1         148  
  1         7  
  1         1  
  1         246  
  1         6  
  1         3  
  1         120  
  1         7  
  1         1  
  1         161  
  1         7  
  1         2  
  1         265  
  1         6  
  1         2  
  1         117  
  1         11  
  1         1  
  1         163  
  1         7  
  1         2  
  1         268  
  1         6  
  1         3  
  1         118  
  1         6  
  1         2  
  1         162  
  1         6  
  1         3  
  1         248  
  1         7  
  1         2  
  1         98  
  1         6  
  1         2  
  1         147  
  1         6  
  1         2  
  1         163  
  1         6  
  1         2  
  1         118  
  1         7  
  1         2  
  1         153  
  1         6  
  1         2  
  1         260  
  1         7  
  1         4  
  1         122  
  1         8  
  1         1  
  1         153  
  1         11  
  1         2  
  1         262  
  1         6  
  1         2  
  1         116  
  1         13  
  1         5  
  1         147  
  1         9  
  1         3  
  1         259  
  1         7  
  1         2  
  1         108  
  1         8  
  1         2  
  1         149  
  1         10  
  1         3  
  1         271  
  1         8  
  1         4  
  1         100  
  1         8  
  1         3  
  1         117  
  1         7  
  1         3  
  1         169  
  1         7  
  1         3  
  1         148  
  1         6  
  1         3  
  1         172  
  1         7  
  1         2  
  1         257  
  1         7  
  1         2  
  1         167  
  1         7  
  1         2  
  1         159  
  1         6  
  1         6  
  1         261  
  1         8  
  1         2  
  1         149  
  1         12  
  1         4  
  1         164  
  1         7  
  1         2  
  1         248  
  1         6  
  1         2  
  1         145  
  1         9  
  1         5  
  1         167  
  1         7  
  1         1  
  1         280  
  1         7  
  1         1  
  1         103  
  1         6  
  1         3  
  1         113  
  1         8  
  1         2  
  1         177  
  1         6  
  1         5  
  1         152  
  1         6  
  1         2  
  1         165  
  1         13  
  1         2  
  1         259  
  1         7  
  1         2  
  1         147  
  1         8  
  1         1  
  1         165  
  1         7  
  1         5  
  1         252  
  1         6  
  1         1  
  1         160  
  1         15  
  1         7  
  1         161  
  1         6  
  1         2  
  1         262  
  1         7  
  1         5  
  1         154  
  1         7  
  1         1  
  1         173  
  1         6  
  1         3  
  1         275  
  1         6  
  1         2  
  1         104  
  1         7  
  1         2  
  1         119  
  1         7  
  1         2  
  1         176  
  1         6  
  1         1  
  1         121  
  1         6  
  1         2  
  1         154  
  1         7  
  1         2  
  1         264  
  1         7  
  1         3  
  1         124  
  1         10  
  1         4  
  1         152  
  1         7  
  1         4  
  1         263  
  1         7  
  1         2  
  1         112  
  1         6  
  1         2  
  1         156  
  1         12  
  1         2  
  1         265  
  1         7  
  1         2  
  1         133  
  1         6  
  1         8  
  1         166  
  1         6  
  1         2  
  1         257  
  1         7  
  1         2  
  1         108  
  1         7  
  1         2  
  1         124  
  1         7  
  1         1  
  1         215  
  1         8  
  1         2  
  1         114  
  1         6  
  1         2  
  1         126  
  1         7  
  1         3  
  1         217  
  1         10  
  1         2  
  1         107  
  1         7  
  1         2  
  1         137  
  1         6  
  1         3  
  1         205  
  1         11  
  1         1  
  1         109  
  1         8  
  1         2  
  1         122  
  1         7  
  1         2  
  1         203  
  1         6  
  1         9  
  1         138  
  1         6  
  1         3  
  1         121  
  1         7  
  1         2  
  1         214  
  1         6  
  1         2  
  1         106  
  1         6  
  1         3  
  1         128  
  1         7  
  1         1  
  1         207  
  1         6  
  1         2  
  1         116  
  1         6  
  1         4  
  1         130  
  1         7  
  1         2  
  1         196  
  1         7  
  1         1  
  1         116  
  1         6  
  1         3  
  1         137  
  1         6  
  1         2  
  1         225  
  1         7  
  1         2  
  1         176  
  1         7  
  1         1  
  1         345  
  1         7  
  1         2  
  1         378  
  1         13  
  1         3  
  1         172  
  1         6  
  1         2  
  1         347  
  1         11  
  1         2  
  1         388  
  1         7  
  1         2  
  1         202  
  1         8  
  1         1  
  1         341  
  1         8  
  1         2  
  1         373  
  1         6  
  1         5  
  1         268  
  1         8  
  1         2  
  1         422  
  1         7  
  1         3  
  1         411  
  1         10  
  1         7  
  1         149  
  1         7  
  1         2  
  1         147  
  1         9  
  1         2  
  1         212  
  1         14  
  1         3  
  1         132  
  1         7  
  1         2  
  1         133  
  1         7  
  1         2  
  1         223  
  1         6  
  1         2  
  1         156  
  1         7  
  1         2  
  1         192  
  1         7  
  1         7  
  1         271  
  1         8  
  1         3  
  1         128  
  1         8  
  1         3  
  1         169  
  1         7  
  1         2  
  1         274  
  1         7  
  1         2  
  1         111  
  1         7  
  1         2  
  1         113  
  1         7  
  1         2  
  1         201  
  1         7  
  1         2  
  1         179  
  1         6  
  1         3  
  1         149  
  1         7  
  1         2  
  1         297  
  1         8  
  1         1  
  1         185  
  1         7  
  1         2  
  1         183  
  1         7  
  1         1  
  1         230  
  1         10  
  1         2  
  1         171  
  1         8  
  1         2  
  1         173  
  1         6  
  1         2  
  1         278  
  1         7  
  1         2  
  1         167  
  1         10  
  1         2  
  1         191  
  1         8  
  1         30  
  1         272  
  1         8  
  1         2  
  1         177  
  1         12  
  1         2  
  1         194  
  1         6  
  1         3  
  1         249  
  1         7  
  1         2  
  1         159  
  1         6  
  1         2  
  1         202  
  1         9  
  1         2  
  1         316  
  1         7  
  1         2  
  1         172  
  1         8  
  1         2  
  1         189  
  1         8  
  1         1  
  1         245  
  1         8  
  1         3  
  1         225  
  1         7  
  1         2  
  1         190  
  1         8  
  1         3  
  1         255  
  1         9  
  1         2  
  1         173  
  1         7  
  1         3  
  1         188  
  1         7  
  1         3  
  1         238  
  1         7  
  1         3  
  1         174  
  1         7  
  1         2  
  1         186  
  1         8  
  1         2  
  1         291  
  1         8  
  1         2  
  1         174  
  1         7  
  1         2  
  1         187  
  1         7  
  1         3  
  1         237  
  1         8  
  1         2  
  1         173  
  1         7  
  1         3  
  1         185  
  1         8  
  1         2  
  1         267  
  1         8  
  1         2  
  1         170  
  1         8  
  1         2  
  1         210  
  1         9  
  1         3  
  1         333  
  1         7  
  1         2  
  1         173  
  1         9  
  1         3  
  1         214  
  1         7  
  1         3  
  1         276  
  1         8  
  1         2  
  1         172  
  1         8  
  1         2  
  1         211  
  1         8  
  1         2  
  1         279  
  1         8  
  1         2  
  1         175  
  1         7  
  1         3  
  1         211  
  1         9  
  1         3  
  1         294  
  1         9  
  1         2  
  1         176  
  1         7  
  1         3  
  1         319  
  1         10  
  1         2  
  1         285  
  1         8  
  1         2  
  1         170  
  1         7  
  1         3  
  1         227  
  1         7  
  1         5  
  1         284  
  1         8  
  1         2  
  1         177  
  1         9  
  1         2  
  1         214  
  1         7  
  1         3  
  1         288  
  1         9  
  1         2  
  1         176  
  1         8  
  1         3  
  1         216  
  1         8  
  1         3  
  1         295  
  1         7  
  1         2  
  1         177  
  1         10  
  1         3  
  1         227  
  1         7  
  1         3  
  1         282  
  1         9  
  1         3  
  1         175  
  1         9  
  1         3  
  1         213  
  1         7  
  1         3  
  1         280  
  1         8  
  1         3  
  1         178  
  1         9  
  1         2  
  1         220  
  1         9  
  1         4  
  1         283  
  1         8  
  1         2  
  1         177  
  1         8  
  1         3  
  1         218  
  1         8  
  1         2  
  1         285  
  1         9  
  1         3  
  1         173  
  1         8  
  1         4  
  1         222  
  1         8  
  1         2  
  1         328  
  1         8  
  1         2  
  1         172  
  1         7  
  1         2  
  1         215  
  1         7  
  1         2  
  1         273  
  1         8  
  1         2  
  1         174  
  1         7  
  1         2  
  1         224  
  1         7  
  1         2  
  1         330  
  1         8  
  1         3  
  1         223  
  1         8  
  1         2  
  1         225  
  1         8  
  1         3  
  1         318  
  1         8  
  1         3  
  1         208  
  1         8  
  1         2  
  1         233  
  1         7  
  1         3  
  1         330  
  1         10  
  1         2  
  1         176  
  1         8  
  1         1  
  1         235  
  1         10  
  1         2  
  1         398  
  1         10  
  1         2  
  1         200  
  1         9  
  1         2  
  1         227  
  1         10  
  1         2  
  1         415  
  1         11  
  1         2  
  1         177  
  1         9  
  1         2  
  1         237  
  1         10  
  1         2  
  1         354  
  1         10  
  1         2  
  1         177  
  1         10  
  1         2  
  1         237  
  1         8  
  1         3  
  1         319  
  1         9  
  1         3  
  1         204  
  1         8  
  1         3  
  1         237  
  1         8  
  1         2  
  1         347  
  1         10  
  1         2  
  1         214  
  1         10  
  1         1  
  1         244  
  1         11  
  1         3  
  1         422  
  1         10  
  1         2  
  1         219  
  1         10  
  1         4  
  1         249  
  1         11  
  1         3  
  1         406  
  1         11  
  1         3  
  1         200  
  1         11  
  1         2  
  1         224  
  1         11  
  1         3  
  1         388  
  1         10  
  1         3  
  1         203  
  1         10  
  1         4  
  1         224  
  1         10  
  1         3  
  1         392  
  1         10  
  1         3  
  1         202  
  1         12  
  1         2  
  1         228  
  1         11  
  1         3  
  1         382  
  1         9  
  1         2  
  1         205  
  1         8  
  1         2  
  1         235  
  1         8  
  1         2  
  1         310  
  1         11  
  1         3  
  1         206  
  1         8  
  1         2  
  1         236  
  1         8  
  1         3  
  1         327  
  1         9  
  1         2  
  1         206  
  1         9  
  1         2  
  1         235  
  1         9  
  1         2  
  1         364  
  1         8  
  1         3  
  1         196  
  1         10  
  1         2  
  1         230  
  1         9  
  1         2  
  1         323  
  1         9  
  1         2  
  1         176  
  1         8  
  1         3  
  1         227  
  1         8  
  1         3  
  1         306  
  1         8  
  1         2  
  1         199  
  1         10  
  1         2  
  1         240  
  1         9  
  1         3  
  1         340  
  1         8  
  1         3  
  1         192  
  1         7  
  1         3  
  1         228  
  1         9  
  1         2  
  1         321  
  1         8  
  1         2  
  1         199  
  1         8  
  1         3  
  1         247  
  1         8  
  1         3  
  1         329  
  1         10  
  1         2  
  1         208  
  1         9  
  1         2  
  1         240  
  1         9  
  1         1  
  1         349  
  1         9  
  1         3  
  1         208  
  1         9  
  1         2  
  1         290  
  1         9  
  1         2  
  1         341  
  1         10  
  1         2  
  1         212  
  1         10  
  1         2  
  1         225  
  1         21  
  1         4  
  1         328  
  1         9  
  1         3  
  1         209  
  1         8  
  1         2  
  1         254  
  1         8  
  1         2  
  1         319  
  1         8  
  1         3  
  1         172  
  1         9  
  1         2  
  1         222  
  1         8  
  1         2  
  1         270  
  1         8  
  1         4  
  1         214  
  1         11  
  1         2  
  1         227  
  1         10  
  1         2  
  1         342  
  1         10  
  1         2  
  1         207  
  1         8  
  1         2  
  1         224  
  1         9  
  1         2  
  1         376  
  1         8  
  1         2  
  1         180  
  1         8  
  1         2  
  1         223  
  1         9  
  1         1  
  1         335  
  1         10  
  1         3  
  1         200  
  1         10  
  1         2  
  1         279  
  1         8  
  1         2  
  1         299  
  1         9  
  1         2  
  1         166  
  1         8  
  1         3  
  1         232  
  1         7  
  1         2  
  1         268  
  1         9  
  1         2  
  1         210  
  1         8  
  1         3  
  1         231  
  1         9  
  1         2  
  1         328  
  1         8  
  1         3  
  1         207  
  1         8  
  1         2  
  1         224  
  1         8  
  1         2  
  1         358  
  1         9  
  1         3  
  1         189  
  1         6  
  1         3  
  1         225  
  1         7  
  1         2  
  1         267  
  1         6  
  1         3  
  1         145  
  1         12  
  1         2  
  1         159  
  1         6  
  1         3  
  1         274  
  1         6  
  1         2  
  1         120  
  1         6  
  1         2  
  1         149  
  1         7  
  1         5  
  1         200  
  1         7  
  1         2  
  1         154  
  1         9  
  1         2  
  1         188  
  1         6  
  1         3  
  1         267  
  1         6  
  1         2  
  1         149  
  1         7  
  1         2  
  1         193  
  1         6  
  1         2  
  1         251  
  1         8  
  1         4  
  1         159  
  1         8  
  1         2  
  1         185  
  1         6  
  1         2  
  1         268  
  1         6  
  1         3  
  1         155  
  1         7  
  1         3  
  1         192  
  1         7  
  1         2  
  1         287  
  1         6  
  1         1  
  1         118  
  1         7  
  1         2  
  1         148  
  1         6  
  1         2  
  1         200  
  1         7  
  1         3  
  1         151  
  1         6  
  1         3  
  1         183  
  1         7  
  1         2  
  1         265  
  1         6  
  1         2  
  1         173  
  1         8  
  1         2  
  1         201  
  1         6  
  1         2  
  1         261  
  1         8  
  1         2  
  1         165  
  1         7  
  1         3  
  1         185  
  1         7  
  1         3  
  1         279  
  1         6  
  1         2  
  1         177  
  1         8  
  1         1  
  1         191  
  1         9  
  1         2  
  1         314  
  1         10  
  1         2  
  1         120  
  1         8  
  1         2  
  1         176  
  1         6  
  1         3  
  1         209  
  1         6  
  1         2  
  1         147  
  1         7  
  1         1  
  1         163  
  1         7  
  1         2  
  1         272  
  1         7  
  1         2  
  1         146  
  1         7  
  1         2  
  1         163  
  1         7  
  1         1  
  1         265  
  1         9  
  1         3  
  1         156  
  1         7  
  1         2  
  1         168  
  1         8  
  1         3  
  1         265  
  1         7  
  1         2  
  1         148  
  1         6  
  1         3  
  1         166  
  1         7  
  1         2  
  1         263  
  1         5  
  1         4  
  1         159  
  1         7  
  1         2  
  1         166  
  1         7  
  1         2  
  1         250  
  1         7  
  1         2  
  1         164  
  1         7  
  1         2  
  1         163  
  1         8  
  1         2  
  1         259  
  1         5  
  1         3  
  1         146  
  1         8  
  1         2  
  1         168  
  1         6  
  1         2  
  1         265  
  1         6  
  1         2  
  1         157  
  1         9  
  1         2  
  1         173  
  1         16  
  1         5  
  1         286  
  1         6  
  1         3  
  1         156  
  1         7  
  1         3  
  1         170  
  1         8  
  1         1  
  1         243  
  1         7  
  1         3  
  1         146  
  1         14  
  1         2  
  1         180  
  1         8  
  1         3  
  1         248  
  1         6  
  1         3  
  1         118  
  1         6  
  1         2  
  1         152  
  1         6  
  1         2  
  1         202  
  1         9  
  1         3  
  1         171  
  1         6  
  1         4  
  1         200  
  1         6  
  1         2  
  1         300  
  1         7  
  1         3  
  1         170  
  1         7  
  1         2  
  1         208  
  1         7  
  1         2  
  1         295  
  1         9  
  1         2  
  1         164  
  1         7  
  1         2  
  1         195  
  1         7  
  1         2  
  1         336  
  1         6  
  1         2  
  1         127  
  1         6  
  1         2  
  1         201  
  1         7  
  1         2  
  1         303  
  1         6  
  1         5  
  1         120  
  1         6  
  1         2  
  1         146  
  1         7  
  1         3  
  1         209  
  1         7  
  1         2  
  1         168  
  1         6  
  1         3  
  1         202  
  1         8  
  1         2  
  1         318  
  1         7  
  1         3  
  1         158  
  1         6  
  1         3  
  1         201  
  1         6  
  1         2  
  1         310  
  1         7  
  1         2  
  1         168  
  1         6  
  1         2  
  1         209  
  1         7  
  1         2  
  1         302  
  1         7  
  1         1  
  1         157  
  1         7  
  1         2  
  1         198  
  1         6  
  1         2  
  1         304  
  1         7  
  1         4  
  1         135  
  1         6  
  1         2  
  1         152  
  1         8  
  1         3  
  1         204  
  1         7  
  1         3  
  1         213  
  1         7  
  1         2  
  1         239  
  1         7  
  1         4  
  1         329  
  1         7  
  1         2  
  1         187  
  1         9  
  1         8  
  1         214  
  1         6  
  1         2  
  1         312  
  1         6  
  1         2  
  1         193  
  1         8  
  1         2  
  1         239  
  1         7  
  1         2  
  1         300  
  1         6  
  1         2  
  1         188  
  1         7  
  1         2  
  1         201  
  1         6  
  1         2  
  1         305  
  1         16  
  1         2  
  1         121  
  1         7  
  1         2  
  1         150  
  1         7  
  1         2  
  1         204  
  1         9  
  1         3  
  1         248  
  1         11  
  1         2  
  1         276  
  1         9  
  1         3  
  1         386  
  1         11  
  1         1  
  1         278  
  1         10  
  1         2  
  1         293  
  1         9  
  1         2  
  1         374  
  1         10  
  1         1  
  1         273  
  1         10  
  1         1  
  1         278  
  1         9  
  1         2  
  1         391  
  1         9  
  1         2  
  1         258  
  1         9  
  1         2  
  1         267  
  1         10  
  1         3  
  1         360  
  1         8  
  1         2  
  1         182  
  1         7  
  1         1  
  1         209  
  1         7  
  1         2  
  1         273  
  1         8  
  1         3  
  1         238  
  1         10  
  1         2  
  1         276  
  1         10  
  1         3  
  1         445  
  1         9  
  1         2  
  1         250  
  1         10  
  1         4  
  1         266  
  1         9  
  1         2  
  1         376  
  1         10  
  1         2  
  1         220  
  1         9  
  1         2  
  1         287  
  1         8  
  1         3  
  1         394  
  1         8  
  1         2  
  1         235  
  1         11  
  1         2  
  1         283  
  1         9  
  1         2  
  1         381  
  1         8  
  1         2  
  1         209  
  1         8  
  1         18  
  1         233  
  1         9  
  1         2  
  1         315  
  1         8  
  1         2  
  1         201  
  1         8  
  1         3  
  1         270  
  1         8  
  1         2  
  1         312  
  1         8  
  1         2  
  1         194  
  1         8  
  1         2  
  1         228  
  1         9  
  1         2  
  1         358  
  1         10  
  1         3  
  1         220  
  1         10  
  1         3  
  1         227  
  1         11  
  1         4  
  1         316  
  1         7  
  1         2  
  1         216  
  1         8  
  1         2  
  1         228  
  1         8  
  1         1  
  1         321  
  1         8  
  1         1  
  1         191  
  1         10  
  1         2  
  1         219  
  1         8  
  1         2  
  1         319  
  1         10  
  1         2  
  1         203  
  1         9  
  1         2  
  1         233  
  1         7  
  1         2  
  1         323  
  1         10  
  1         2  
  1         194  
  1         8  
  1         4  
  1         221  
  1         9  
  1         2  
  1         300  
  1         9  
  1         2  
  1         183  
  1         10  
  1         3  
  1         218  
  1         8  
  1         2  
  1         309  
  1         9  
  1         3  
  1         215  
  1         9  
  1         3  
  1         226  
  1         8  
  1         2  
  1         321  
  1         8  
  1         2  
  1         190  
  1         8  
  1         2  
  1         243  
  1         8  
  1         3  
  1         307  
  1         8  
  1         2  
  1         199  
  1         9  
  1         3  
  1         238  
  1         7  
  1         2  
  1         302  
  1         8  
  1         2  
  1         208  
  1         8  
  1         3  
  1         242  
  1         9  
  1         2  
  1         317  
  1         9  
  1         1  
  1         221  
  1         9  
  1         3  
  1         249  
  1         10  
  1         2  
  1         332  
  1         8  
  1         2  
  1         217  
  1         7  
  1         3  
  1         285  
  1         8  
  1         1  
  1         339  
  1         10  
  1         2  
  1         215  
  1         10  
  1         2  
  1         238  
  1         23  
  1         2  
  1         319  
  1         8  
  1         3  
  1         270  
  1         26  
  1         2  
  1         234  
  1         11  
  1         2  
  1         320  
  1         8  
  1         3  
  1         229  
  1         9  
  1         2  
  1         229  
  1         8  
  1         2  
  1         326  
  1         10  
  1         2  
  1         209  
  1         8  
  1         2  
  1         225  
  1         9  
  1         2  
  1         314  
  1         7  
  1         2  
  1         211  
  1         10  
  1         3  
  1         224  
  1         9  
  1         2  
  1         318  
  1         9  
  1         1  
  1         210  
  1         9  
  1         3  
  1         243  
  1         8  
  1         2  
  1         321  
  1         8  
  1         1  
  1         219  
  1         9  
  1         3  
  1         230  
  1         9  
  1         3  
  1         318  
  1         8  
  1         2  
  1         223  
  1         8  
  1         2  
  1         236  
  1         8  
  1         2  
  1         373  
  1         9  
  1         2  
  1         205  
  1         9  
  1         2  
  1         244  
  1         9  
  1         2  
  1         306  
  1         7  
  1         2  
  1         188  
  1         8  
  1         3  
  1         215  
  1         7  
  1         3  
  1         289  
  1         9  
  1         1  
  1         223  
  1         10  
  1         3  
  1         239  
  1         8  
  1         3  
  1         371  
  1         11  
  1         1  
  1         216  
  1         9  
  1         2  
  1         234  
  1         10  
  1         2  
  1         363  
  1         10  
  1         2  
  1         221  
  1         56  
  1         3  
  1         235  
  1         10  
  1         2  
  1         359  
  1         9  
  1         2  
  1         223  
  1         9  
  1         1  
  1         231  
  1         10  
  1         2  
  1         393  
  1         8  
  1         2  
  1         194  
  1         8  
  1         47  
  1         220  
  1         8  
  1         2  
  1         291  
  1         10  
  1         3  
  1         218  
  1         10  
  1         2  
  1         233  
  1         9  
  1         1  
  1         367  
  1         9  
  1         3  
  1         212  
  1         9  
  1         2  
  1         231  
  1         9  
  1         3  
  1         364  
  1         10  
  1         1  
  1         243  
  1         10  
  1         2  
  1         229  
  1         9  
  1         3  
  1         364  
  1         10  
  1         3  
  1         212  
  1         9  
  1         1  
  1         236  
  1         9  
  1         1  
  1         372  
  1         7  
  1         1  
  1         182  
  1         7  
  1         2  
  1         204  
  1         7  
  1         2  
  1         266  
  1         9  
  1         2  
  1         257  
  1         10  
  1         3  
  1         280  
  1         10  
  1         2  
  1         357  
  1         11  
  1         2  
  1         237  
  1         9  
  1         2  
  1         261  
  1         9  
  1         2  
  1         345  
  1         8  
  1         3  
  1         240  
  1         11  
  1         3  
  1         268  
  1         9  
  1         2  
  1         372  
  1         10  
  1         2  
  1         251  
  1         10  
  1         3  
  1         259  
  1         12  
  1         3  
  1         348  
  1         8  
  1         2  
  1         182  
  1         8  
  1         2  
  1         213  
  1         9  
  1         2  
  1         276  
  1         10  
  1         1  
  1         250  
  1         11  
  1         1  
  1         276  
  1         11  
  1         1  
  1         340  
  1         11  
  1         2  
  1         237  
  1         10  
  1         2  
  1         266  
  1         11  
  1         3  
  1         340  
  1         9  
  1         3  
  1         233  
  1         10  
  1         3  
  1         264  
  1         10  
  1         2  
  1         342  
  1         10  
  1         2  
  1         233  
  1         10  
  1         2  
  1         264  
  1         10  
  1         15  
  1         360  
  1         9  
  1         2  
  1         987  
  1         7  
  1         2  
  1         229  
  1         9  
  1         2  
  1         295  
  1         10  
  1         1  
  1         227  
  1         10  
  1         5  
  1         223  
  1         10  
  1         1  
  1         367  
  1         9  
  1         3  
  1         210  
  1         9  
  1         2  
  1         284  
  1         8  
  1         3  
  1         368  
  1         9  
  1         2  
  1         229  
  1         10  
  1         3  
  1         294  
  1         9  
  1         2  
  1         370  
  1         9  
  1         2  
  1         224  
  1         9  
  1         2  
  1         237  
  1         10  
  1         3  
  1         385  
  1         7  
  1         4  
  1         73  
  1         8  
  1         2  
  1         79  
  1         11  
  1         2  
  1         129  
  1         6  
  1         2  
  1         83  
  1         7  
  1         3  
  1         81  
  1         7  
  1         5  
  1         145  
  1         6  
  1         2  
  1         72  
  1         6  
  1         3  
  1         94  
  1         8  
  1         2  
  1         141  
  1         6  
  1         3  
  1         84  
  1         7  
  1         2  
  1         81  
  1         9  
  1         2  
  1         134  
  1         13  
  1         2  
  1         71  
  1         7  
  1         2  
  1         78  
  1         6  
  1         3  
  1         151  
  1         8  
  1         3  
  1         72  
  1         9  
  1         4  
  1         82  
  1         6  
  1         2  
  1         154  
  1         8  
  1         3  
  1         72  
  1         8  
  1         2  
  1         79  
  1         7  
  1         2  
  1         145  
  1         7  
  1         2  
  1         67  
  1         7  
  1         3  
  1         83  
  1         8  
  1         4  
  1         145  
  1         8  
  1         4  
  1         85  
  1         10  
  1         3  
  1         83  
  1         6  
  1         3  
  1         161  
  1         12  
  1         3  
  1         77  
  1         6  
  1         3  
  1         101  
  1         6  
  1         2  
  1         153  
  1         6  
  1         3  
  1         80  
  1         9  
  1         4  
  1         83  
  1         6  
  1         2  
  1         167  
  1         9  
  1         4  
  1         70  
  1         7  
  1         2  
  1         79  
  1         5  
  1         2  
  1         151  
  1         6  
  1         2  
  1         100  
  1         6  
  1         4  
  1         95  
  1         7  
  1         3  
  1         177  
  1         6  
  1         3  
  1         93  
  1         8  
  1         2  
  1         100  
  1         7  
  1         3  
  1         152  
  1         7  
  1         4  
  1         70  
  1         6  
  1         3  
  1         83  
  1         6  
  1         4  
  1         129  
  1         6  
  1         2  
  1         65  
  1         6  
  1         3  
  1         89  
  1         8  
  1         2  
  1         138  
  1         7  
  1         4  
  1         59  
  1         6  
  1         2  
  1         105  
  1         7  
  1         3  
  1         211  
  1         7  
  1         4  
  1         107  
  1         6  
  1         2  
  1         89  
  1         6  
  1         3  
  1         156  
  1         6  
  1         3  
  1         76  
  1         8  
  1         3  
  1         107  
  1         6  
  1         2  
  1         194  
  1         6  
  1         4  
  1         73  
  1         7  
  1         1  
  1         84  
  1         7  
  1         3  
  1         218  
  1         7  
  1         2  
  1         79  
  1         6  
  1         2  
  1         130  
  1         8  
  1         3  
  1         208  
  1         12  
  1         2  
  1         85  
  1         9  
  1         2  
  1         122  
  1         6  
  1         2  
  1         271  
  1         6  
  1         2  
  1         80  
  1         7  
  1         3  
  1         137  
  1         7  
  1         2  
  1         312  
  1         6  
  1         2  
  1         73  
  1         9  
  1         2  
  1         126  
  1         6  
  1         2  
  1         232  
  1         7  
  1         2  
  1         61  
  1         7  
  1         6  
  1         103  
  1         7  
  1         2  
  1         194  
  1         7  
  1         2  
  1         70  
  1         6  
  1         3  
  1         109  
  1         7  
  1         2  
  1         208  
  1         7  
  1         3  
  1         83  
  1         11  
  1         1  
  1         170  
  1         14  
  1         2  
  1         259  
  1         7  
  1         2  
  1         82  
  1         8  
  1         2  
  1         137  
  1         9  
  1         2  
  1         293  
  1         6  
  1         3  
  1         76  
  1         6  
  1         2  
  1         136  
  1         9  
  1         2  
  1         295  
  1         7  
  1         2  
  1         79  
  1         9  
  1         3  
  1         138  
  1         7  
  1         2  
  1         292  
  1         6  
  1         3  
  1         76  
  1         11  
  1         2  
  1         139  
  1         9  
  1         2  
  1         273  
  1         7  
  1         3  
  1         80  
  1         7  
  1         3  
  1         97  
  1         7  
  1         2  
  1         264  
  1         14  
  1         2  
  1         63  
  1         6  
  1         8  
  1         119  
  1         11  
  1         2  
  1         177  
  1         6  
  1         4  
  1         126  
  1         6  
  1         3  
  1         140  
  1         6  
  1         2  
  1         240  
  1         6  
  1         2  
  1         115  
  1         6  
  1         4  
  1         140  
  1         6  
  1         3  
  1         226  
  1         7  
  1         1  
  1         67  
  1         6  
  1         2  
  1         135  
  1         7  
  1         2  
  1         240  
  1         9  
  1         11  
  1         67  
  1         10  
  1         2  
  1         160  
  1         7  
  1         2  
  1         312  
  1         23  
  1         3  
  1         113  
  1         7  
  1         2  
  1         147  
  1         6  
  1         2  
  1         259  
  1         8  
  1         2  
  1         113  
  1         6  
  1         3  
  1         147  
  1         6  
  1         2  
  1         224  
  1         6  
  1         2  
  1         115  
  1         7  
  1         3  
  1         151  
  1         7  
  1         4  
  1         245  
  1         6  
  1         3  
  1         114  
  1         7  
  1         3  
  1         140  
  1         7  
  1         3  
  1         245  
  1         6  
  1         3  
  1         116  
  1         6  
  1         4  
  1         135  
  1         7  
  1         3  
  1         220  
  1         7  
  1         2  
  1         131  
  1         7  
  1         3  
  1         137  
  1         7  
  1         2  
  1         223  
  1         8  
  1         2  
  1         79  
  1         7  
  1         3  
  1         100  
  1         6  
  1         2  
  1         145  
  1         7  
  1         2  
  1         169  
  1         6  
  1         2  
  1         179  
  1         7  
  1         3  
  1         298  
  1         7  
  1         3  
  1         177  
  1         6  
  1         2  
  1         191  
  1         7  
  1         2  
  1         315  
  1         6  
  1         3  
  1         165  
  1         7  
  1         3  
  1         188  
  1         7  
  1         2  
  1         286  
  1         6  
  1         2  
  1         173  
  1         8  
  1         3  
  1         180  
  1         6  
  1         3  
  1         295  
  1         6  
  1         2  
  1         74  
  1         8  
  1         2  
  1         96  
  1         8  
  1         1  
  1         137  
  1         6  
  1         2  
  1         152  
  1         6  
  1         2  
  1         176  
  1         7  
  1         2  
  1         288  
  1         6  
  1         2  
  1         154  
  1         8  
  1         2  
  1         184  
  1         8  
  1         2  
  1         284  
  1         7  
  1         1  
  1         165  
  1         7  
  1         2  
  1         172  
  1         7  
  1         3  
  1         318  
  1         7  
  1         2  
  1         155  
  1         7  
  1         2  
  1         179  
  1         7  
  1         2  
  1         290  
  1         6  
  1         2  
  1         60  
  1         6  
  1         2  
  1         86  
  1         7  
  1         2  
  1         145  
  1         7  
  1         3  
  1         172  
  1         6  
  1         3  
  1         197  
  1         6  
  1         2  
  1         294  
  1         7  
  1         2  
  1         177  
  1         6  
  1         3  
  1         196  
  1         8  
  1         2  
  1         294  
  1         7  
  1         2  
  1         178  
  1         6  
  1         3  
  1         197  
  1         8  
  1         2  
  1         305  
  1         7  
  1         2  
  1         182  
  1         6  
  1         3  
  1         196  
  1         34  
  1         2  
  1         303  
  1         5  
  1         2  
  1         63  
  1         6  
  1         2  
  1         100  
  1         6  
  1         3  
  1         139  
  1         7  
  1         3  
  1         184  
  1         7  
  1         2  
  1         211  
  1         8  
  1         2  
  1         297  
  1         7  
  1         2  
  1         211  
  1         6  
  1         2  
  1         249  
  1         7  
  1         2  
  1         296  
  1         7  
  1         2  
  1         218  
  1         6  
  1         2  
  1         195  
  1         6  
  1         2  
  1         306  
  1         7  
  1         2  
  1         181  
  1         6  
  1         2  
  1         197  
  1         6  
  1         2  
  1         313  
  1         8  
  1         2  
  1         65  
  1         7  
  1         1  
  1         93  
  1         6  
  1         4  
  1         137  
  1         7  
  1         3  
  1         165  
  1         8  
  1         2  
  1         175  
  1         6  
  1         3  
  1         294  
  1         7  
  1         2  
  1         154  
  1         7  
  1         3  
  1         179  
  1         6  
  1         3  
  1         279  
  1         6  
  1         3  
  1         167  
  1         7  
  1         2  
  1         198  
  1         7  
  1         2  
  1         288  
  1         6  
  1         2  
  1         203  
  1         6  
  1         3  
  1         180  
  1         7  
  1         3  
  1         314  
  1         7  
  1         3  
  1         187  
  1         7  
  1         2  
  1         197  
  1         8  
  1         2  
  1         293  
  1         7  
  1         2  
  1         194  
  1         8  
  1         2  
  1         190  
  1         7  
  1         1  
  1         289  
  1         14  
  1         3  
  1         181  
  1         7  
  1         3  
  1         190  
  1         6  
  1         3  
  1         298  
  1         7  
  1         2  
  1         170  
  1         7  
  1         2  
  1         194  
  1         7  
  1         2  
  1         277  
  1         6  
  1         3  
  1         183  
  1         8  
  1         2  
  1         185  
  1         7  
  1         2  
  1         274  
  1         6  
  1         2  
  1         179  
  1         7  
  1         3  
  1         209  
  1         6  
  1         2  
  1         334  
  1         6  
  1         2  
  1         85  
  1         7  
  1         2  
  1         88  
  1         6  
  1         2  
  1         136  
  1         7  
  1         2  
  1         266  
  1         7  
  1         3  
  1         274  
  1         6  
  1         3  
  1         412  
  1         7  
  1         2  
  1         243  
  1         7  
  1         2  
  1         260  
  1         7  
  1         2  
  1         372  
  1         7  
  1         2  
  1         230  
  1         7  
  1         2  
  1         281  
  1         8  
  1         2  
  1         378  
  1         7  
  1         2  
  1         230  
  1         7  
  1         3  
  1         267  
  1         8  
  1         2  
  1         365  
  1         6  
  1         4  
  1         63  
  1         6  
  1         2  
  1         87  
  1         6  
  1         2  
  1         153  
  1         8  
  1         3  
  1         241  
  1         7  
  1         2  
  1         266  
  1         6  
  1         2  
  1         390  
  1         9  
  1         2  
  1         220  
  1         8  
  1         2  
  1         265  
  1         7  
  1         2  
  1         362  
  1         7  
  1         2  
  1         232  
  1         7  
  1         3  
  1         307  
  1         10  
  1         2  
  1         368  
  1         6  
  1         2  
  1         227  
  1         9  
  1         3  
  1         282  
  1         7  
  1         2  
  1         350  
  1         6  
  1         2  
  1         64  
  1         6  
  1         3  
  1         88  
  1         7  
  1         3  
  1         176  
  1         8  
  1         2  
  1         281  
  1         6  
  1         2  
  1         274  
  1         6  
  1         2  
  1         358  
  1         6  
  1         3  
  1         260  
  1         7  
  1         2  
  1         263  
  1         6  
  1         2  
  1         364  
  1         8  
  1         3  
  1         263  
  1         6  
  1         2  
  1         294  
  1         8  
  1         3  
  1         358  
  1         7  
  1         2  
  1         253  
  1         8  
  1         4  
  1         267  
  1         7  
  1         2  
  1         359  
  1         5  
  1         3  
  1         63  
  1         9  
  1         1  
  1         88  
  1         9  
  1         2  
  1         139  
  1         6  
  1         2  
  1         260  
  1         7  
  1         2  
  1         270  
  1         8  
  1         2  
  1         349  
  1         6  
  1         2  
  1         229  
  1         7  
  1         2  
  1         219  
  1         6  
  1         2  
  1         305  
  1         6  
  1         2  
  1         220  
  1         7  
  1         3  
  1         238  
  1         6  
  1         1  
  1         338  
  1         7  
  1         3  
  1         198  
  1         6  
  1         1  
  1         397  
  1         6  
  1         2  
  1         286  
  1         8  
  1         2  
  1         60  
  1         7  
  1         2  
  1         73  
  1         6  
  1         3  
  1         114  
  1         6  
  1         3  
  1         181  
  1         7  
  1         2  
  1         202  
  1         7  
  1         2  
  1         338  
  1         7  
  1         2  
  1         227  
  1         6  
  1         2  
  1         270  
  1         6  
  1         2  
  1         366  
  1         6  
  1         2  
  1         217  
  1         7  
  1         2  
  1         259  
  1         7  
  1         2  
  1         369  
  1         7  
  1         1  
  1         241  
  1         7  
  1         2  
  1         292  
  1         8  
  1         2  
  1         362  
  1         8  
  1         2  
  1         70  
  1         7  
  1         2  
  1         110  
  1         6  
  1         3  
  1         187  
  1         7  
  1         2  
  1         87  
  1         6  
  1         2  
  1         108  
  1         7  
  1         2  
  1         190  
  1         7  
  1         2  
  1         80  
  1         7  
  1         2  
  1         111  
  1         7  
  1         2  
  1         189  
  1         7  
  1         2  
  1         85  
  1         5  
  1         2  
  1         107  
  1         6  
  1         2  
  1         204  
  1         6  
  1         2  
  1         84  
  1         7  
  1         2  
  1         105  
  1         5  
  1         2  
  1         200  
  1         6  
  1         2  
  1         84  
  1         7  
  1         1  
  1         105  
  1         7  
  1         2  
  1         204  
  1         7  
  1         2  
  1         85  
  1         7  
  1         2  
  1         111  
  1         8  
  1         2  
  1         231  
  1         6  
  1         1  
  1         91  
  1         7  
  1         2  
  1         121  
  1         7  
  1         1  
  1         197  
  1         6  
  1         3  
  1         135  
  1         7  
  1         2  
  1         320  
  1         7  
  1         3  
  1         346  
  1         7  
  1         2  
  1         133  
  1         6  
  1         4  
  1         356  
  1         6  
  1         2  
  1         352  
  1         6  
  1         3  
  1         122  
  1         6  
  1         2  
  1         333  
  1         7  
  1         2  
  1         345  
  1         6  
  1         2  
  1         129  
  1         6  
  1         2  
  1         331  
  1         7  
  1         2  
  1         340  
  1         6  
  1         2  
  1         221  
  1         7  
  1         2  
  1         327  
  1         7  
  1         1  
  1         377  
  1         7  
  1         3  
  1         444  
  1         7  
  1         2  
  1         296  
  1         6  
  1         2  
  1         304  
  1         7  
  1         2  
  1         203  
  1         7  
  1         2  
  1         338  
  1         7  
  1         3  
  1         368  
  1         6  
  1         3  
  1         125  
  1         7  
  1         1  
  1         295  
  1         7  
  1         2  
  1         314  
  1         6  
  1         3  
  1         209  
  1         6  
  1         10  
  1         365  
  1         7  
  1         3  
  1         362  
  1         6  
  1         2  
  1         142  
  1         6  
  1         2  
  1         302  
  1         7  
  1         3  
  1         344  
  1         6  
  1         2  
  1         173  
  1         8  
  1         6  
  1         200  
  1         9  
  1         2  
  1         305  
  1         8  
  1         2  
  1         183  
  1         7  
  1         2  
  1         205  
  1         11  
  1         3  
  1         285  
  1         6  
  1         8  
  1         262  
  1         6  
  1         2  
  1         322  
  1         7  
  1         12  
  1         353  
  1         6  
  1         2  
  1         220  
  1         6  
  1         3  
  1         284  
  1         10  
  1         2  
  1         363  
  1         7  
  1         1  
  1         269  
  1         8  
  1         3  
  1         561  
  1         7  
  1         2  
  1         655  
  1         7  
  1         7  
  1         225  
  1         10  
  1         2  
  1         578  
  1         7  
  1         2  
  1         607  
  1         16  
  1         2  
  1         221  
  1         7  
  1         2  
  1         556  
  1         6  
  1         3  
  1         568  
  1         7  
  1         3  
  1         228  
  1         7  
  1         3  
  1         574  
  1         7  
  1         3  
  1         609  
  1         6  
  1         2  
  1         229  
  1         7  
  1         2  
  1         534  
  1         7  
  1         3  
  1         574  
  1         7  
  1         12  
  1         229  
  1         7  
  1         2  
  1         542  
  1         6  
  1         2  
  1         593  
  1         7  
  1         3  
  1         239  
  1         7  
  1         5  
  1         554  
  1         6  
  1         2  
  1         587  
  1         10  
  1         2  
  1         229  
  1         7  
  1         2  
  1         573  
  1         7  
  1         2  
  1         602  
  1         9  
  1         2  
  1         286  
  1         6  
  1         2  
  1         542  
  1         7  
  1         16  
  1         586  
  1         7  
  1         2  
  1         237  
  1         6  
  1         3  
  1         514  
  1         7  
  1         2  
  1         595  
  1         17  
  1         2  
  1         235  
  1         8  
  1         2  
  1         542  
  1         7  
  1         3  
  1         585  
  1         9  
  1         2  
  1         187  
  1         8  
  1         5  
  1         486  
  1         20  
  1         3  
  1         515  
  1         10  
  1         4  
  1         176  
  1         7  
  1         3  
  1         487  
  1         7  
  1         2  
  1         532  
  1         9  
  1         2  
  1         200  
  1         7  
  1         2  
  1         513  
  1         7  
  1         3  
  1         500  
  1         9  
  1         7  
  1         199  
  1         7  
  1         2  
  1         469  
  1         7  
  1         2  
  1         522  
  1         6  
  1         2  
  1         217  
  1         7  
  1         2  
  1         486  
  1         7  
  1         2  
  1         510  
  1         6  
  1         2  
  1         165  
  1         8  
  1         3  
  1         362  
  1         17  
  1         4  
  1         402  
  1         7  
  1         2  
  1         315  
  1         8  
  1         2  
  1         625  
  1         6  
  1         5  
  1         1017  
  1         8  
  1         3  
  1         125  
  1         7  
  1         3  
  1         191  
  1         10  
  1         3  
  1         284  
  1         6  
  1         3  
  1         136  
  1         6  
  1         2  
  1         184  
  1         7  
  1         1  
  1         291  
  1         6  
  1         2  
  1         135  
  1         8  
  1         4  
  1         194  
  1         6  
  1         2  
  1         272  
  1         7  
  1         3  
  1         138  
  1         7  
  1         2  
  1         195  
  1         9  
  1         2  
  1         255  
  1         6  
  1         2  
  1         137  
  1         6  
  1         2  
  1         207  
  1         8  
  1         1  
  1         260  
  1         7  
  1         2  
  1         125  
  1         7  
  1         1  
  1         190  
  1         7  
  1         2  
  1         269  
  1         6  
  1         2  
  1         139  
  1         7  
  1         2  
  1         187  
  1         8  
  1         2  
  1         271  
  1         6  
  1         2  
  1         141  
  1         7  
  1         3  
  1         200  
  1         7  
  1         3  
  1         253  
  1         7  
  1         2  
  1         158  
  1         7  
  1         3  
  1         189  
  1         7  
  1         1  
  1         251  
  1         8  
  1         2  
  1         149  
  1         7  
  1         2  
  1         197  
  1         7  
  1         2  
  1         253  
  1         6  
  1         2  
  1         129  
  1         7  
  1         2  
  1         185  
  1         6  
  1         3  
  1         283  
  1         7  
  1         3  
  1         123  
  1         6  
  1         2  
  1         180  
  1         7  
  1         2  
  1         249  
  1         6  
  1         5  
  1         132  
  1         7  
  1         2  
  1         203  
  1         7  
  1         3  
  1         282  
  1         8  
  1         2  
  1         139  
  1         8  
  1         2  
  1         185  
  1         7  
  1         2  
  1         255  
  1         7  
  1         2  
  1         125  
  1         9  
  1         25  
  1         205  
  1         10  
  1         3  
  1         256  
  1         7  
  1         2  
  1         118  
  1         7  
  1         2  
  1         184  
  1         7  
  1         4  
  1         266  
  1         7  
  1         14  
  1         121  
  1         10  
  1         3  
  1         175  
  1         7  
  1         2  
  1         290  
  1         6  
  1         2  
  1         119  
  1         7  
  1         1  
  1         177  
  1         8  
  1         1  
  1         270  
  1         6  
  1         2  
  1         116  
  1         7  
  1         3  
  1         183  
  1         7  
  1         6  
  1         280  
  1         7  
  1         2  
  1         117  
  1         34  
  1         4  
  1         190  
  1         7  
  1         2  
  1         282  
  1         6  
  1         2  
  1         117  
  1         8  
  1         3  
  1         195  
  1         6  
  1         3  
  1         278  
  1         6  
  1         2  
  1         123  
  1         7  
  1         2  
  1         190  
  1         9  
  1         3  
  1         269  
  1         6  
  1         2  
  1         116  
  1         6  
  1         2  
  1         179  
  1         10  
  1         3  
  1         274  
  1         7  
  1         2  
  1         118  
  1         6  
  1         2  
  1         181  
  1         7  
  1         4  
  1         276  
  1         6  
  1         2  
  1         117  
  1         7  
  1         2  
  1         186  
  1         7  
  1         2  
  1         267  
  1         6  
  1         2  
  1         114  
  1         7  
  1         2  
  1         183  
  1         6  
  1         2  
  1         271  
  1         5  
  1         3  
  1         118  
  1         8  
  1         2  
  1         195  
  1         7  
  1         2  
  1         263  
  1         7  
  1         3  
  1         129  
  1         6  
  1         3  
  1         156  
  1         6  
  1         3  
  1         222  
  1         7  
  1         1  
  1         123  
  1         7  
  1         2  
  1         141  
  1         7  
  1         2  
  1         225  
  1         7  
  1         2  
  1         124  
  1         7  
  1         1  
  1         144  
  1         8  
  1         2  
  1         232  
  1         6  
  1         3  
  1         136  
  1         7  
  1         2  
  1         138  
  1         7  
  1         3  
  1         221  
  1         7  
  1         3  
  1         128  
  1         7  
  1         2  
  1         140  
  1         7  
  1         3  
  1         232  
  1         6  
  1         2  
  1         133  
  1         6  
  1         2  
  1         148  
  1         6  
  1         2  
  1         221  
  1         6  
  1         3  
  1         122  
  1         8  
  1         2  
  1         119  
  1         7  
  1         1  
  1         232  
  1         8  
  1         2  
  1         130  
  1         6  
  1         2  
  1         139  
  1         6  
  1         4  
  1         224  
  1         7  
  1         3  
  1         132  
  1         7  
  1         2  
  1         150  
  1         6  
  1         2  
  1         216  
  1         7  
  1         2  
  1         126  
  1         8  
  1         2  
  1         140  
  1         8  
  1         2  
  1         224  
  1         7  
  1         4  
  1         123  
  1         7  
  1         3  
  1         196  
  1         6  
  1         2  
  1         209  
  1         7  
  1         2  
  1         122  
  1         6  
  1         2  
  1         138  
  1         6  
  1         4  
  1         224  
  1         6  
  1         2  
  1         131  
  1         6  
  1         2  
  1         157  
  1         7  
  1         3  
  1         225  
  1         7  
  1         2  
  1         133  
  1         8  
  1         2  
  1         184  
  1         6  
  1         2  
  1         256  
  1         6  
  1         2  
  1         133  
  1         6  
  1         2  
  1         164  
  1         6  
  1         3  
  1         228  
  1         7  
  1         2  
  1         140  
  1         6  
  1         2  
  1         161  
  1         6  
  1         2  
  1         231  
  1         6  
  1         1  
  1         136  
  1         7  
  1         2  
  1         158  
  1         7  
  1         7  
  1         247  
  1         6  
  1         3  
  1         132  
  1         7  
  1         2  
  1         160  
  1         9  
  1         3  
  1         226  
  1         7  
  1         3  
  1         129  
  1         6  
  1         2  
  1         165  
  1         8  
  1         2  
  1         226  
  1         11  
  1         3  
  1         129  
  1         6  
  1         3  
  1         189  
  1         8  
  1         3  
  1         236  
  1         8  
  1         2  
  1         141  
  1         6  
  1         2  
  1         160  
  1         8  
  1         2  
  1         249  
  1         7  
  1         2  
  1         133  
  1         8  
  1         3  
  1         192  
  1         7  
  1         2  
  1         228  
  1         7  
  1         2  
  1         131  
  1         7  
  1         2  
  1         190  
  1         6  
  1         3  
  1         227  
  1         8  
  1         2  
  1         131  
  1         6  
  1         6  
  1         158  
  1         7  
  1         2  
  1         229  
  1         6  
  1         2  
  1         122  
  1         6  
  1         2  
  1         140  
  1         6  
  1         2  
  1         226  
  1         6  
  1         3  
  1         121  
  1         7  
  1         2  
  1         139  
  1         6  
  1         3  
  1         230  
  1         6  
  1         2  
  1         127  
  1         6  
  1         2  
  1         150  
  1         7  
  1         1  
  1         223  
  1         7  
  1         2  
  1         132  
  1         7  
  1         1  
  1         141  
  1         7  
  1         3  
  1         218  
  1         6  
  1         2  
  1         142  
  1         7  
  1         2  
  1         147  
  1         8  
  1         1  
  1         225  
  1         7  
  1         3  
  1         123  
  1         7  
  1         2  
  1         140  
  1         7  
  1         1  
  1         245  
  1         7  
  1         3  
  1         142  
  1         7  
  1         2  
  1         140  
  1         7  
  1         1  
  1         232  
  1         6  
  1         2  
  1         149  
  1         8  
  1         2  
  1         137  
  1         7  
  1         2  
  1         237  
  1         6  
  1         2  
  1         134  
  1         8  
  1         3  
  1         158  
  1         7  
  1         2  
  1         230  
  1         7  
  1         2  
  1         144  
  1         6  
  1         3  
  1         157  
  1         7  
  1         4  
  1         230  
  1         7  
  1         2  
  1         143  
  1         7  
  1         2  
  1         193  
  1         6  
  1         3  
  1         233  
  1         8  
  1         2  
  1         134  
  1         6  
  1         3  
  1         157  
  1         10  
  1         4  
  1         225  
  1         11  
  1         2  
  1         128  
  1         6  
  1         2  
  1         174  
  1         6  
  1         2  
  1         239  
  1         6  
  1         2  
  1         135  
  1         6  
  1         2  
  1         158  
  1         7  
  1         3  
  1         225  
  1         9  
  1         2  
  1         131  
  1         6  
  1         2  
  1         165  
  1         8  
  1         2  
  1         228  
  1         6  
  1         2  
  1         130  
  1         7  
  1         2  
  1         163  
  1         6  
  1         4  
  1         232  
  1         6  
  1         2  
  1         133  
  1         7  
  1         4  
  1         158  
  1         6  
  1         5  
  1         228  
  1         7  
  1         3  
  1         131  
  1         6  
  1         2  
  1         158  
  1         7  
  1         3  
  1         237  
  1         7  
  1         1  
  1         145  
  1         7  
  1         3  
  1         161  
  1         6  
  1         2  
  1         262  
  1         7  
  1         2  
  1         129  
  1         7  
  1         2  
  1         163  
  1         7  
  1         2  
  1         231  
  1         7  
  1         2  
  1         130  
  1         6  
  1         2  
  1         158  
  1         6  
  1         3  
  1         238  
  1         7  
  1         4  
  1         149  
  1         6  
  1         3  
  1         159  
  1         7  
  1         2  
  1         224  
  1         7  
  1         2  
  1         129  
  1         7  
  1         2  
  1         157  
  1         6  
  1         3  
  1         229  
  1         6  
  1         2  
  1         131  
  1         6  
  1         4  
  1         174  
  1         7  
  1         3  
  1         243  
  1         6  
  1         2  
  1         125  
  1         7  
  1         2  
  1         157  
  1         7  
  1         2  
  1         223  
  1         6  
  1         3  
  1         129  
  1         6  
  1         4  
  1         155  
  1         6  
  1         4  
  1         229  
  1         6  
  1         2  
  1         137  
  1         6  
  1         1  
  1         157  
  1         6  
  1         2  
  1         226  
  1         7  
  1         2  
  1         143  
  1         7  
  1         3  
  1         157  
  1         6  
  1         3  
  1         241  
  1         8  
  1         2  
  1         186  
  1         7  
  1         2  
  1         225  
  1         7  
  1         3  
  1         272  
  1         7  
  1         1  
  1         183  
  1         7  
  1         3  
  1         227  
  1         7  
  1         1  
  1         292  
  1         8  
  1         2  
  1         183  
  1         8  
  1         2  
  1         199  
  1         7  
  1         2  
  1         294  
  1         6  
  1         3  
  1         178  
  1         8  
  1         2  
  1         201  
  1         7  
  1         2  
  1         299  
  1         7  
  1         5  
  1         193  
  1         9  
  1         2  
  1         200  
  1         7  
  1         3  
  1         297  
  1         6  
  1         3  
  1         187  
  1         6  
  1         2  
  1         220  
  1         6  
  1         2  
  1         297  
  1         6  
  1         3  
  1         178  
  1         7  
  1         2  
  1         212  
  1         7  
  1         2  
  1         354  
  1         7  
  1         2  
  1         235  
  1         6  
  1         3  
  1         210  
  1         17  
  1         3  
  1         305  
  1         7  
  1         3  
  1         190  
  1         7  
  1         1  
  1         218  
  1         8  
  1         3  
  1         302  
  1         7  
  1         2  
  1         210  
  1         8  
  1         2  
  1         205  
  1         6  
  1         4  
  1         296  
  1         8  
  1         2  
  1         205  
  1         6  
  1         2  
  1         233  
  1         8  
  1         2  
  1         295  
  1         7  
  1         2  
  1         203  
  1         7  
  1         2  
  1         209  
  1         9  
  1         2  
  1         305  
  1         12  
  1         6  
  1         195  
  1         8  
  1         11  
  1         240  
  1         7  
  1         5  
  1         312  
  1         6  
  1         3  
  1         183  
  1         9  
  1         3  
  1         206  
  1         12  
  1         2  
  1         297  
  1         7  
  1         2  
  1         202  
  1         7  
  1         3  
  1         210  
  1         9  
  1         2  
  1         305  
  1         7  
  1         1  
  1         218  
  1         6  
  1         2  
  1         197  
  1         8  
  1         9  
  1         294  
  1         10  
  1         2  
  1         192  
  1         6  
  1         1  
  1         212  
  1         9  
  1         3  
  1         287  
  1         7  
  1         3  
  1         190  
  1         10  
  1         2  
  1         217  
  1         7  
  1         3  
  1         295  
  1         7  
  1         3  
  1         195  
  1         18  
  1         2  
  1         213  
  1         10  
  1         3  
  1         293  
  1         8  
  1         2  
  1         181  
  1         7  
  1         1  
  1         197  
  1         6  
  1         3  
  1         288  
  1         7  
  1         2  
  1         191  
  1         7  
  1         1  
  1         207  
  1         6  
  1         11  
  1         293  
  1         9  
  1         11  
  1         209  
  1         6  
  1         5  
  1         228  
  1         13  
  1         2  
  1         293  
  1         6  
  1         8  
  1         201  
  1         13  
  1         1  
  1         230  
  1         18  
  1         2  
  1         310  
  1         10  
  1         2  
  1         192  
  1         7  
  1         2  
  1         215  
  1         6  
  1         2  
  1         288  
  1         8  
  1         3  
  1         203  
  1         10  
  1         3  
  1         205  
  1         6  
  1         2  
  1         299  
  1         7  
  1         2  
  1         191  
  1         6  
  1         3  
  1         213  
  1         6  
  1         2  
  1         295  
  1         24  
  1         3  
  1         197  
  1         6  
  1         2  
  1         227  
  1         6  
  1         2  
  1         292  
  1         9  
  1         2  
  1         195  
  1         7  
  1         4  
  1         201  
  1         7  
  1         10  
  1         298  
  1         9  
  1         2  
  1         98  
  1         6  
  1         3  
  1         80  
  1         9  
  1         3  
  1         130  
  1         9  
  1         1  
  1         74  
  1         7  
  1         2  
  1         82  
  1         6  
  1         3  
  1         126  
  1         6  
  1         2  
  1         77  
  1         6  
  1         3  
  1         95  
  1         6  
  1         3  
  1         136  
  1         6  
  1         8  
  1         72  
  1         13  
  1         3  
  1         81  
  1         6  
  1         2  
  1         130  
  1         6  
  1         10  
  1         105  
  1         9  
  1         6  
  1         89  
  1         8  
  1         2  
  1         137  
  1         6  
  1         3  
  1         77  
  1         7  
  1         2  
  1         121  
  1         9  
  1         2  
  1         136  
  1         17  
  1         2  
  1         76  
  1         6  
  1         2  
  1         84  
  1         23  
  1         3  
  1         139  
  1         9  
  1         2  
  1         72  
  1         7  
  1         1  
  1         93  
  1         6  
  1         3  
  1         153  
  1         19  
  1         3  
  1         81  
  1         8  
  1         2  
  1         85  
  1         14  
  1         2  
  1         137  
  1         8  
  1         2  
  1         84  
  1         6  
  1         2  
  1         93  
  1         11  
  1         11  
  1         149  
  1         6  
  1         2  
  1         78  
  1         6  
  1         2  
  1         88  
  1         7  
  1         2  
  1         151  
  1         15  
  1         3  
  1         80  
  1         6  
  1         2  
  1         82  
  1         6  
  1         2  
  1         128  
  1         8  
  1         2  
  1         69  
  1         7  
  1         2  
  1         85  
  1         6  
  1         3  
  1         125  
  1         7  
  1         2  
  1         72  
  1         7  
  1         2  
  1         83  
  1         35  
  1         3  
  1         134  
  1         8  
  1         4  
  1         70  
  1         7  
  1         2  
  1         83  
  1         6  
  1         3  
  1         144  
  1         6  
  1         2  
  1         69  
  1         7  
  1         3  
  1         97  
  1         6  
  1         2  
  1         146  
  1         6  
  1         2  
  1         70  
  1         7  
  1         2  
  1         84  
  1         7  
  1         2  
  1         156  
  1         6  
  1         3  
  1         68  
  1         6  
  1         2  
  1         105  
  1         6  
  1         4  
  1         196  
  1         7  
  1         2  
  1         72  
  1         7  
  1         2  
  1         82  
  1         7  
  1         2  
  1         144  
  1         6  
  1         3  
  1         70  
  1         7  
  1         3  
  1         107  
  1         8  
  1         2  
  1         203  
  1         7  
  1         1  
  1         74  
  1         7  
  1         3  
  1         111  
  1         7  
  1         3  
  1         212  
  1         7  
  1         2  
  1         78  
  1         7  
  1         2  
  1         121  
  1         6  
  1         4  
  1         204  
  1         7  
  1         2  
  1         87  
  1         6  
  1         2  
  1         125  
  1         6  
  1         2  
  1         261  
  1         7  
  1         4  
  1         76  
  1         7  
  1         2  
  1         125  
  1         7  
  1         2  
  1         298  
  1         7  
  1         2  
  1         71  
  1         6  
  1         3  
  1         113  
  1         7  
  1         1  
  1         227  
  1         6  
  1         3  
  1         75  
  1         8  
  1         3  
  1         110  
  1         6  
  1         2  
  1         203  
  1         6  
  1         3  
  1         70  
  1         6  
  1         2  
  1         112  
  1         7  
  1         2  
  1         192  
  1         7  
  1         2  
  1         74  
  1         7  
  1         2  
  1         117  
  1         7  
  1         3  
  1         284  
  1         8  
  1         1  
  1         73  
  1         7  
  1         2  
  1         118  
  1         7  
  1         2  
  1         296  
  1         8  
  1         2  
  1         76  
  1         7  
  1         2  
  1         120  
  1         7  
  1         2  
  1         285  
  1         6  
  1         2  
  1         81  
  1         7  
  1         2  
  1         151  
  1         6  
  1         3  
  1         299  
  1         6  
  1         2  
  1         77  
  1         7  
  1         3  
  1         121  
  1         7  
  1         2  
  1         287  
  1         7  
  1         2  
  1         78  
  1         6  
  1         3  
  1         90  
  1         7  
  1         2  
  1         179  
  1         7  
  1         3  
  1         77  
  1         6  
  1         3  
  1         120  
  1         8  
  1         2  
  1         197  
  1         6  
  1         3  
  1         74  
  1         7  
  1         4  
  1         109  
  1         6  
  1         2  
  1         203  
  1         6  
  1         2  
  1         74  
  1         7  
  1         3  
  1         108  
  1         6  
  1         2  
  1         205  
  1         6  
  1         2  
  1         71  
  1         7  
  1         2  
  1         122  
  1         7  
  1         2  
  1         196  
  1         7  
  1         2  
  1         87  
  1         7  
  1         2  
  1         118  
  1         7  
  1         2  
  1         244  
  1         8  
  1         2  
  1         87  
  1         6  
  1         2  
  1         113  
  1         7  
  1         3  
  1         197  
  1         6  
  1         3  
  1         93  
  1         8  
  1         2  
  1         114  
  1         7  
  1         3  
  1         203  
  1         7  
  1         2  
  1         85  
  1         6  
  1         3  
  1         114  
  1         6  
  1         3  
  1         206  
  1         6  
  1         3  
  1         89  
  1         6  
  1         2  
  1         115  
  1         7  
  1         2  
  1         200  
  1         8  
  1         2  
  1         84  
  1         7  
  1         2  
  1         119  
  1         7  
  1         2  
  1         207  
  1         7  
  1         2  
  1         90  
  1         7  
  1         1  
  1         115  
  1         7  
  1         2  
  1         203  
  1         6  
  1         2  
  1         87  
  1         6  
  1         2  
  1         95  
  1         5  
  1         3  
  1         153  
  1         6  
  1         2  
  1         74  
  1         8  
  1         2  
  1         119  
  1         7  
  1         2  
  1         247  
  1         6  
  1         3  
  1         72  
  1         6  
  1         3  
  1         119  
  1         7  
  1         3  
  1         235  
  1         7  
  1         4  
  1         73  
  1         6  
  1         3  
  1         120  
  1         8  
  1         2  
  1         231  
  1         7  
  1         2  
  1         90  
  1         7  
  1         2  
  1         116  
  1         6  
  1         2  
  1         231  
  1         6  
  1         3  
  1         80  
  1         6  
  1         2  
  1         100  
  1         7  
  1         2  
  1         170  
  1         7  
  1         2  
  1         121  
  1         7  
  1         1  
  1         123  
  1         7  
  1         2  
  1         250  
  1         7  
  1         2  
  1         104  
  1         6  
  1         2  
  1         119  
  1         6  
  1         2  
  1         268  
  1         7  
  1         2  
  1         79  
  1         6  
  1         3  
  1         120  
  1         7  
  1         2  
  1         244  
  1         8  
  1         2  
  1         87  
  1         6  
  1         3  
  1         163  
  1         6  
  1         3  
  1         284  
  1         6  
  1         2  
  1         69  
  1         6  
  1         3  
  1         110  
  1         6  
  1         3  
  1         150  
  1         6  
  1         2  
  1         104  
  1         7  
  1         3  
  1         135  
  1         8  
  1         2  
  1         230  
  1         6  
  1         3  
  1         103  
  1         8  
  1         2  
  1         123  
  1         6  
  1         2  
  1         229  
  1         6  
  1         2  
  1         118  
  1         7  
  1         2  
  1         132  
  1         7  
  1         2  
  1         218  
  1         9  
  1         2  
  1         102  
  1         7  
  1         1  
  1         133  
  1         7  
  1         2  
  1         230  
  1         7  
  1         2  
  1         80  
  1         8  
  1         2  
  1         95  
  1         6  
  1         3  
  1         160  
  1         6  
  1         2  
  1         131  
  1         6  
  1         2  
  1         130  
  1         6  
  1         3  
  1         224  
  1         8  
  1         2  
  1         112  
  1         6  
  1         2  
  1         134  
  1         7  
  1         3  
  1         242  
  1         7  
  1         2  
  1         87  
  1         6  
  1         3  
  1         107  
  1         6  
  1         3  
  1         184  
  1         6  
  1         1  
  1         88  
  1         6  
  1         2  
  1         135  
  1         7  
  1         2  
  1         230  
  1         6  
  1         2  
  1         69  
  1         6  
  1         2  
  1         78  
  1         6  
  1         2  
  1         149  
  1         10  
  1         2  
  1         90  
  1         6  
  1         1  
  1         117  
  1         8  
  1         3  
  1         261  
  1         6  
  1         3  
  1         84  
  1         7  
  1         2  
  1         109  
  1         6  
  1         3  
  1         230  
  1         7  
  1         2  
  1         74  
  1         6  
  1         3  
  1         93  
  1         6  
  1         2  
  1         237  
  1         7  
  1         3  
  1         73  
  1         6  
  1         2  
  1         124  
  1         7  
  1         2  
  1         227  
  1         7  
  1         2  
  1         109  
  1         7  
  1         2  
  1         116  
  1         6  
  1         2  
  1         222  
  1         6  
  1         3  
  1         81  
  1         7  
  1         2  
  1         126  
  1         6  
  1         2  
  1         209  
  1         7  
  1         2  
  1         96  
  1         6  
  1         2  
  1         129  
  1         6  
  1         3  
  1         220  
  1         7  
  1         2  
  1         97  
  1         6  
  1         2  
  1         129  
  1         8  
  1         2  
  1         207  
  1         7  
  1         2  
  1         109  
  1         6  
  1         2  
  1         122  
  1         6  
  1         3  
  1         209  
  1         7  
  1         2  
  1         99  
  1         8  
  1         2  
  1         125  
  1         8  
  1         2  
  1         194  
  1         7  
  1         2  
  1         70  
  1         7  
  1         2  
  1         124  
  1         6  
  1         3  
  1         155  
  1         7  
  1         2  
  1         116  
  1         7  
  1         2  
  1         160  
  1         7  
  1         2  
  1         308  
  1         5  
  1         3  
  1         105  
  1         7  
  1         3  
  1         153  
  1         7  
  1         2  
  1         282  
  1         6  
  1         2  
  1         116  
  1         9  
  1         2  
  1         158  
  1         7  
  1         2  
  1         285  
  1         6  
  1         2  
  1         105  
  1         7  
  1         2  
  1         152  
  1         7  
  1         2  
  1         277  
  1         8  
  1         3  
  1         67  
  1         6  
  1         3  
  1         94  
  1         8  
  1         2  
  1         150  
  1         7  
  1         2  
  1         115  
  1         7  
  1         3  
  1         166  
  1         6  
  1         2  
  1         267  
  1         6  
  1         1  
  1         116  
  1         6  
  1         2  
  1         155  
  1         8  
  1         3  
  1         256  
  1         6  
  1         2  
  1         116  
  1         7  
  1         2  
  1         154  
  1         6  
  1         2  
  1         266  
  1         7  
  1         2  
  1         118  
  1         7  
  1         1  
  1         155  
  1         6  
  1         3  
  1         261  
  1         7  
  1         2  
  1         84  
  1         6  
  1         2  
  1         92  
  1         6  
  1         2  
  1         146  
  1         7  
  1         2  
  1         133  
  1         8  
  1         3  
  1         173  
  1         7  
  1         2  
  1         253  
  1         7  
  1         3  
  1         145  
  1         6  
  1         3  
  1         169  
  1         7  
  1         3  
  1         295  
  1         6  
  1         3  
  1         137  
  1         8  
  1         2  
  1         176  
  1         6  
  1         2  
  1         263  
  1         7  
  1         2  
  1         134  
  1         7  
  1         2  
  1         173  
  1         6  
  1         3  
  1         271  
  1         7  
  1         3  
  1         66  
  1         6  
  1         2  
  1         94  
  1         7  
  1         3  
  1         148  
  1         8  
  1         2  
  1         134  
  1         7  
  1         4  
  1         162  
  1         6  
  1         2  
  1         261  
  1         8  
  1         6  
  1         148  
  1         6  
  1         2  
  1         172  
  1         6  
  1         2  
  1         268  
  1         7  
  1         4  
  1         175  
  1         7  
  1         2  
  1         192  
  1         12  
  1         2  
  1         291  
  1         8  
  1         2  
  1         138  
  1         9  
  1         3  
  1         187  
  1         6  
  1         4  
  1         270  
  1         9  
  1         3  
  1         67  
  1         9  
  1         2  
  1         99  
  1         7  
  1         4  
  1         154  
  1         13  
  1         1  
  1         126  
  1         7  
  1         2  
  1         158  
  1         9  
  1         2  
  1         270  
  1         8  
  1         1  
  1         128  
  1         7  
  1         1  
  1         156  
  1         6  
  1         3  
  1         274  
  1         6  
  1         4  
  1         123  
  1         7  
  1         2  
  1         155  
  1         9  
  1         2  
  1         289  
  1         8  
  1         7  
  1         133  
  1         11  
  1         6  
  1         177  
  1         7  
  1         5  
  1         276  
  1         16  
  1         8  
  1         99  
  1         8  
  1         2  
  1         135  
  1         7  
  1         6  
  1         210  
  1         8  
  1         3  
  1         93  
  1         7  
  1         4  
  1         113  
  1         11  
  1         2  
  1         205  
  1         8  
  1         2  
  1         86  
  1         9  
  1         3  
  1         116  
  1         7  
  1         3  
  1         209  
  1         7  
  1         2  
  1         97  
  1         8  
  1         2  
  1         119  
  1         7  
  1         2  
  1         199  
  1         9  
  1         4  
  1         100  
  1         8  
  1         2  
  1         116  
  1         10  
  1         3  
  1         197  
  1         7  
  1         2  
  1         86  
  1         13  
  1         2  
  1         111  
  1         10  
  1         2  
  1         200  
  1         9  
  1         3  
  1         98  
  1         8  
  1         7  
  1         116  
  1         7  
  1         3  
  1         205  
  1         8  
  1         3  
  1         91  
  1         7  
  1         4  
  1         106  
  1         16  
  1         3  
  1         205  
  1         12  
  1         9  
  1         112  
  1         7  
  1         3  
  1         116  
  1         8  
  1         2  
  1         208  
  1         14  
  1         3  
  1         84  
  1         10  
  1         3  
  1         136  
  1         7  
  1         2  
  1         202  
  1         7  
  1         3  
  1         86  
  1         19  
  1         6  
  1         123  
  1         8  
  1         1  
  1         182  
  1         7  
  1         4  
  1         86  
  1         9  
  1         5  
  1         121  
  1         6  
  1         3  
  1         227  
  1         9  
  1         4  
  1         87  
  1         7  
  1         2  
  1         117  
  1         10  
  1         2  
  1         232  
  1         6  
  1         4  
  1         105  
  1         11  
  1         3  
  1         119  
  1         7  
  1         5  
  1         202  
  1         15  
  1         3  
  1         115  
  1         19  
  1         3  
  1         111  
  1         8  
  1         1  
  1         208  
  1         7  
  1         17  
  1         98  
  1         7  
  1         2  
  1         128  
  1         7  
  1         4  
  1         197  
  1         9  
  1         4  
  1         88  
  1         6  
  1         4  
  1         121  
  1         11  
  1         3  
  1         208  
  1         6  
  1         2  
  1         87  
  1         7  
  1         4  
  1         131  
  1         8  
  1         2  
  1         208  
  1         7  
  1         3  
  1         86  
  1         6  
  1         4  
  1         127  
  1         10  
  1         2  
  1         208  
  1         8  
  1         2  
  1         83  
  1         8  
  1         6  
  1         119  
  1         7  
  1         6  
  1         199  
  1         7  
  1         2  
  1         87  
  1         6  
  1         4  
  1         122  
  1         7  
  1         2  
  1         197  
  1         6  
  1         2  
  1         72  
  1         6  
  1         5  
  1         105  
  1         7  
  1         2  
  1         202  
  1         8  
  1         3  
  1         112  
  1         6  
  1         5  
  1         120  
  1         9  
  1         2  
  1         242  
  1         6  
  1         2  
  1         73  
  1         8  
  1         3  
  1         113  
  1         8  
  1         7  
  1         239  
  1         7  
  1         5  
  1         100  
  1         11  
  1         2  
  1         96  
  1         7  
  1         4  
  1         155  
  1         33  
  1         4  
  1         104  
  1         9  
  1         3  
  1         123  
  1         21  
  1         13  
  1         248  
  1         10  
  1         5  
  1         100  
  1         9  
  1         4  
  1         133  
  1         7  
  1         4  
  1         235  
  1         6  
  1         2  
  1         112  
  1         10  
  1         6  
  1         128  
  1         7  
  1         5  
  1         229  
  1         8  
  1         3  
  1         98  
  1         8  
  1         4  
  1         120  
  1         7  
  1         5  
  1         231  
  1         7  
  1         5  
  1         91  
  1         9  
  1         3  
  1         108  
  1         12  
  1         3  
  1         153  
  1         9  
  1         3  
  1         102  
  1         8  
  1         5  
  1         130  
  1         6  
  1         8  
  1         241  
  1         6  
  1         3  
  1         115  
  1         6  
  1         3  
  1         120  
  1         7  
  1         3  
  1         245  
  1         8  
  1         2  
  1         136  
  1         10  
  1         3  
  1         208  
  1         9  
  1         2  
  1         281  
  1         11  
  1         2  
  1         129  
  1         8  
  1         3  
  1         165  
  1         9  
  1         3  
  1         273  
  1         8  
  1         3  
  1         118  
  1         7  
  1         2  
  1         129  
  1         7  
  1         2  
  1         191  
  1         7  
  1         3  
  1         150  
  1         7  
  1         2  
  1         158  
  1         7  
  1         2  
  1         238  
  1         8  
  1         3  
  1         121  
  1         6  
  1         3  
  1         159  
  1         7  
  1         2  
  1         343  
  1         9  
  1         2  
  1         158  
  1         10  
  1         3  
  1         219  
  1         9  
  1         3  
  1         283  
  1         10  
  1         3  
  1         155  
  1         11  
  1         3  
  1         188  
  1         9  
  1         4  
  1         282  
  1         7  
  1         2  
  1         107  
  1         9  
  1         2  
  1         148  
  1         8  
  1         3  
  1         190  
  1         11  
  1         2  
  1         161  
  1         11  
  1         2  
  1         211  
  1         11  
  1         2  
  1         290  
  1         10  
  1         4  
  1         159  
  1         10  
  1         2  
  1         205  
  1         9  
  1         3  
  1         287  
  1         11  
  1         3  
  1         169  
  1         11  
  1         2  
  1         198  
  1         10  
  1         1  
  1         270  
  1         10  
  1         3  
  1         164  
  1         9  
  1         3  
  1         191  
  1         9  
  1         3  
  1         325  
  1         8  
  1         2  
  1         125  
  1         7  
  1         2  
  1         141  
  1         8  
  1         1  
  1         189  
  1         11  
  1         3  
  1         136  
  1         9  
  1         3  
  1         156  
  1         10  
  1         2  
  1         275  
  1         10  
  1         1  
  1         142  
  1         9  
  1         2  
  1         128  
  1         10  
  1         3  
  1         232  
  1         8  
  1         2  
  1         107  
  1         12  
  1         3  
  1         118  
  1         6  
  1         7  
  1         224  
  1         9  
  1         2  
  1         112  
  1         8  
  1         2  
  1         122  
  1         8  
  1         2  
  1         239  
  1         5  
  1         2  
  1         91  
  1         8  
  1         2  
  1         117  
  1         8  
  1         2  
  1         224  
  1         7  
  1         2  
  1         111  
  1         7  
  1         3  
  1         118  
  1         6  
  1         3  
  1         197  
  1         9  
  1         2  
  1         114  
  1         6  
  1         3  
  1         106  
  1         7  
  1         4  
  1         202  
  1         6  
  1         1  
  1         92  
  1         7  
  1         3  
  1         118  
  1         7  
  1         3  
  1         215  
  1         5  
  1         3  
  1         153  
  1         6  
  1         3  
  1         122  
  1         7  
  1         2  
  1         172  
  1         7  
  1         3  
  1         113  
  1         7  
  1         2  
  1         138  
  1         7  
  1         2  
  1         169  
  1         6  
  1         3  
  1         113  
  1         7  
  1         2  
  1         128  
  1         6  
  1         2  
  1         175  
  1         7  
  1         4  
  1         114  
  1         6  
  1         3  
  1         168  
  1         8  
  1         3  
  1         176  
  1         6  
  1         3  
  1         118  
  1         7  
  1         4  
  1         127  
  1         9  
  1         3  
  1         177  
  1         7  
  1         3  
  1         122  
  1         7  
  1         2  
  1         128  
  1         8  
  1         2  
  1         195  
  1         7  
  1         3  
  1         117  
  1         9  
  1         1  
  1         187  
  1         6  
  1         4  
  1         217  
  1         6  
  1         4  
  1         150  
  1         8  
  1         3  
  1         146  
  1         6  
  1         2  
  1         209  
  1         7  
  1         2  
  1         155  
  1         8  
  1         2  
  1         155  
  1         7  
  1         2  
  1         226  
  1         8  
  1         4  
  1         155  
  1         6  
  1         3  
  1         146  
  1         7  
  1         2  
  1         219  
  1         9  
  1         3  
  1         116  
  1         9  
  1         2  
  1         144  
  1         7  
  1         2  
  1         208  
  1         6  
  1         3  
  1         143  
  1         8  
  1         3  
  1         145  
  1         7  
  1         3  
  1         204  
  1         7  
  1         12  
  1         120  
  1         9  
  1         3  
  1         165  
  1         7  
  1         3  
  1         206  
  1         8  
  1         3  
  1         117  
  1         8  
  1         3  
  1         148  
  1         6  
  1         3  
  1         226  
  1         8  
  1         3  
  1         133  
  1         8  
  1         2  
  1         149  
  1         7  
  1         2  
  1         205  
  1         6  
  1         2  
  1         126  
  1         7  
  1         4  
  1         156  
  1         6  
  1         3  
  1         203  
  1         7  
  1         2  
  1         130  
  1         6  
  1         3  
  1         152  
  1         6  
  1         3  
  1         215  
  1         7  
  1         1  
  1         115  
  1         8  
  1         2  
  1         161  
  1         8  
  1         2  
  1         205  
  1         9  
  1         2  
  1         115  
  1         6  
  1         2  
  1         146  
  1         6  
  1         2  
  1         267  
  1         7  
  1         2  
  1         119  
  1         9  
  1         3  
  1         177  
  1         8  
  1         3  
  1         200  
  1         8  
  1         4  
  1         132  
  1         9  
  1         2  
  1         154  
  1         6  
  1         3  
  1         245  
  1         6  
  1         3  
  1         132  
  1         6  
  1         2  
  1         160  
  1         6  
  1         3  
  1         238  
  1         7  
  1         2  
  1         134  
  1         6  
  1         3  
  1         149  
  1         8  
  1         3  
  1         246  
  1         7  
  1         2  
  1         118  
  1         7  
  1         3  
  1         157  
  1         6  
  1         2  
  1         278  
  1         7  
  1         2  
  1         139  
  1         7  
  1         2  
  1         158  
  1         7  
  1         2  
  1         342  
  1         7  
  1         3  
  1         152  
  1         9  
  1         3  
  1         161  
  1         6  
  1         3  
  1         292  
  1         7  
  1         2  
  1         109  
  1         7  
  1         3  
  1         167  
  1         6  
  1         2  
  1         243  
  1         6  
  1         3  
  1         123  
  1         8  
  1         2  
  1         176  
  1         9  
  1         2  
  1         263  
  1         8  
  1         5  
  1         138  
  1         9  
  1         2  
  1         198  
  1         10  
  1         3  
  1         330  
  1         8  
  1         2  
  1         144  
  1         9  
  1         2  
  1         173  
  1         8  
  1         3  
  1         341  
  1         6  
  1         3  
  1         137  
  1         7  
  1         3  
  1         159  
  1         7  
  1         3  
  1         388  
  1         7  
  1         3  
  1         161  
  1         7  
  1         1  
  1         168  
  1         7  
  1         4  
  1         370  
  1         6  
  1         4  
  1         162  
  1         6  
  1         4  
  1         168  
  1         6  
  1         3  
  1         340  
  1         9  
  1         2  
  1         138  
  1         6  
  1         2  
  1         150  
  1         7  
  1         1  
  1         264  
  1         7  
  1         2  
  1         129  
  1         7  
  1         1  
  1         157  
  1         6  
  1         3  
  1         238  
  1         7  
  1         2  
  1         123  
  1         7  
  1         3  
  1         154  
  1         8  
  1         2  
  1         245  
  1         7  
  1         3  
  1         118  
  1         8  
  1         3  
  1         164  
  1         6  
  1         5  
  1         248  
  1         8  
  1         3  
  1         120  
  1         6  
  1         3  
  1         150  
  1         7  
  1         3  
  1         253  
  1         7  
  1         3  
  1         129  
  1         7  
  1         3  
  1         161  
  1         7  
  1         3  
  1         270  
  1         6  
  1         3  
  1         110  
  1         8  
  1         3  
  1         167  
  1         8  
  1         4  
  1         245  
  1         8  
  1         3  
  1         125  
  1         8  
  1         3  
  1         152  
  1         7  
  1         3  
  1         247  
  1         6  
  1         2  
  1         132  
  1         7  
  1         3  
  1         150  
  1         10  
  1         1  
  1         267  
  1         7  
  1         2  
  1         132  
  1         7  
  1         2  
  1         182  
  1         6  
  1         3  
  1         236  
  1         6  
  1         4  
  1         123  
  1         8  
  1         2  
  1         152  
  1         6  
  1         3  
  1         235  
  1         8  
  1         1  
  1         121  
  1         7  
  1         3  
  1         154  
  1         6  
  1         2  
  1         235  
  1         8  
  1         3  
  1         125  
  1         7  
  1         4  
  1         139  
  1         6  
  1         2  
  1         196  
  1         6  
  1         4  
  1         138  
  1         9  
  1         2  
  1         164  
  1         6  
  1         5  
  1         277  
  1         7  
  1         4  
  1         135  
  1         7  
  1         2  
  1         211  
  1         16  
  1         4  
  1         267  
  1         7  
  1         2  
  1         137  
  1         15  
  1         3  
  1         189  
  1         7  
  1         2  
  1         266  
  1         9  
  1         2  
  1         176  
  1         7  
  1         2  
  1         164  
  1         7  
  1         3  
  1         269  
  1         14  
  1         3  
  1         121  
  1         6  
  1         5  
  1         141  
  1         7  
  1         4  
  1         194  
  1         7  
  1         1  
  1         134  
  1         14  
  1         3  
  1         157  
  1         6  
  1         2  
  1         269  
  1         6  
  1         3  
  1         131  
  1         7  
  1         3  
  1         241  
  1         7  
  1         6  
  1         273  
  1         9  
  1         3  
  1         147  
  1         17  
  1         7  
  1         161  
  1         7  
  1         5  
  1         261  
  1         6  
  1         2  
  1         137  
  1         11  
  1         3  
  1         173  
  1         17  
  1         4  
  1         305  
  1         8  
  1         2  
  1         119  
  1         10  
  1         2  
  1         149  
  1         13  
  1         3  
  1         201  
  1         8  
  1         4  
  1         169  
  1         6  
  1         4  
  1         188  
  1         17  
  1         2  
  1         278  
  1         8  
  1         2  
  1         168  
  1         7  
  1         3  
  1         210  
  1         7  
  1         2  
  1         262  
  1         13  
  1         2  
  1         162  
  1         6  
  1         2  
  1         193  
  1         7  
  1         2  
  1         264  
  1         7  
  1         1  
  1         168  
  1         8  
  1         4  
  1         186  
  1         12  
  1         2  
  1         251  
  1         7  
  1         2  
  1         119  
  1         7  
  1         7  
  1         144  
  1         9  
  1         4  
  1         223  
  1         14  
  1         3  
  1         166  
  1         8  
  1         2  
  1         189  
  1         8  
  1         2  
  1         270  
  1         9  
  1         6  
  1         181  
  1         7  
  1         5  
  1         184  
  1         9  
  1         2  
  1         277  
  1         6  
  1         2  
  1         165  
  1         13  
  1         2  
  1         196  
  1         13  
  1         3  
  1         272  
  1         6  
  1         3  
  1         164  
  1         6  
  1         3  
  1         188  
  1         11  
  1         3  
  1         254  
  1         6  
  1         8  
  1         122  
  1         9  
  1         4  
  1         162  
  1         7  
  1         2  
  1         226  
  1         7  
  1         3  
  1         155  
  1         8  
  1         2  
  1         176  
  1         6  
  1         3  
  1         281  
  1         28  
  1         2  
  1         141  
  1         16  
  1         2  
  1         164  
  1         11  
  1         2  
  1         276  
  1         7  
  1         2  
  1         182  
  1         7  
  1         4  
  1         167  
  1         8  
  1         4  
  1         265  
  1         6  
  1         3  
  1         158  
  1         7  
  1         3  
  1         167  
  1         18  
  1         2  
  1         253  
  1         8  
  1         3  
  1         162  
  1         7  
  1         2  
  1         175  
  1         8  
  1         3  
  1         253  
  1         6  
  1         3  
  1         150  
  1         11  
  1         4  
  1         187  
  1         12  
  1         3  
  1         248  
  1         11  
  1         7  
  1         157  
  1         9  
  1         3  
  1         177  
  1         8  
  1         3  
  1         259  
  1         6  
  1         2  
  1         154  
  1         8  
  1         4  
  1         174  
  1         9  
  1         9  
  1         199  
  1         7  
  1         4  
  1         169  
  1         7  
  1         3  
  1         182  
  1         12  
  1         3  
  1         270  
  1         7  
  1         2  
  1         157  
  1         11  
  1         2  
  1         135  
  1         6  
  1         2  
  1         198  
  1         8  
  1         2  
  1         200  
  1         10  
  1         5  
  1         160  
  1         6  
  1         2  
  1         249  
  1         8  
  1         3  
  1         163  
  1         13  
  1         2  
  1         194  
  1         8  
  1         5  
  1         311  
  1         8  
  1         2  
  1         168  
  1         6  
  1         2  
  1         198  
  1         7  
  1         3  
  1         304  
  1         7  
  1         3  
  1         155  
  1         12  
  1         4  
  1         210  
  1         6  
  1         4  
  1         340  
  1         14  
  1         2  
  1         159  
  1         8  
  1         3  
  1         216  
  1         10  
  1         4  
  1         313  
  1         8  
  1         2  
  1         130  
  1         7  
  1         2  
  1         144  
  1         37  
  1         3  
  1         199  
  1         6  
  1         2  
  1         168  
  1         7  
  1         4  
  1         215  
  1         8  
  1         7  
  1         308  
  1         11  
  1         2  
  1         189  
  1         7  
  1         6  
  1         191  
  1         7  
  1         2  
  1         317  
  1         7  
  1         3  
  1         205  
  1         6  
  1         3  
  1         204  
  1         8  
  1         2  
  1         308  
  1         6  
  1         5  
  1         159  
  1         7  
  1         3  
  1         200  
  1         7  
  1         1  
  1         284  
  1         7  
  1         2  
  1         165  
  1         7  
  1         3  
  1         142  
  1         8  
  1         3  
  1         201  
  1         13  
  1         3  
  1         301  
  1         13  
  1         2  
  1         345  
  1         15  
  1         2  
  1         496  
  1         12  
  1         4  
  1         327  
  1         12  
  1         3  
  1         322  
  1         13  
  1         2  
  1         457  
  1         13  
  1         3  
  1         358  
  1         13  
  1         2  
  1         410  
  1         14  
  1         3  
  1         448  
  1         15  
  1         2  
  1         309  
  1         12  
  1         3  
  1         337  
  1         13  
  1         2  
  1         424  
  1         10  
  1         2  
  1         245  
  1         9  
  1         4  
  1         272  
  1         12  
  1         2  
  1         319  
  1         108  
  1         3  
  1         369  
  1         13  
  1         4  
  1         327  
  1         13  
  1         4  
  1         418  
  1         12  
  1         2  
  1         338  
  1         12  
  1         3  
  1         320  
  1         14  
  1         2  
  1         459  
  1         16  
  1         2  
  1         312  
  1         11  
  1         3  
  1         319  
  1         13  
  1         3  
  1         425  
  1         11  
  1         2  
  1         361  
  1         12  
  1         3  
  1         313  
  1         13  
  1         3  
  1         503  
  1         11  
  1         4  
  1         247  
  1         11  
  1         3  
  1         251  
  1         11  
  1         5  
  1         306  
  1         11  
  1         3  
  1         261  
  1         11  
  1         4  
  1         406  
  1         12  
  1         2  
  1         410  
  1         13  
  1         3  
  1         305  
  1         11  
  1         4  
  1         302  
  1         14  
  1         3  
  1         431  
  1         13  
  1         2  
  1         357  
  1         13  
  1         3  
  1         310  
  1         13  
  1         4  
  1         413  
  1         15  
  1         2  
  1         279  
  1         13  
  1         2  
  1         341  
  1         14  
  1         2  
  1         443  
  1         11  
  1         4  
  1         235  
  1         14  
  1         3  
  1         271  
  1         13  
  1         2  
  1         425  
  1         12  
  1         2  
  1         225  
  1         11  
  1         2  
  1         256  
  1         10  
  1         3  
  1         359  
  1         12  
  1         3  
  1         249  
  1         12  
  1         3  
  1         254  
  1         14  
  1         3  
  1         412  
  1         10  
  1         4  
  1         257  
  1         12  
  1         4  
  1         263  
  1         13  
  1         3  
  1         441  
  1         13  
  1         3  
  1         238  
  1         12  
  1         3  
  1         312  
  1         11  
  1         4  
  1         362  
  1         11  
  1         3  
  1         237  
  1         12  
  1         3  
  1         330  
  1         11  
  1         31  
  1         348  
  1         11  
  1         2  
  1         266  
  1         12  
  1         5  
  1         271  
  1         14  
  1         4  
  1         416  
  1         11  
  1         2  
  1         246  
  1         10  
  1         2  
  1         280  
  1         13  
  1         2  
  1         345  
  1         14  
  1         2  
  1         259  
  1         12  
  1         4  
  1         249  
  1         11  
  1         5  
  1         436  
  1         12  
  1         3  
  1         226  
  1         11  
  1         2  
  1         274  
  1         11  
  1         5  
  1         362  
  1         12  
  1         2  
  1         236  
  1         12  
  1         2  
  1         261  
  1         16  
  1         3  
  1         364  
  1         9  
  1         4  
  1         260  
  1         12  
  1         3  
  1         260  
  1         14  
  1         5  
  1         345  
  1         13  
  1         5  
  1         265  
  1         13  
  1         4  
  1         259  
  1         12  
  1         3  
  1         355  
  1         12  
  1         2  
  1         241  
  1         11  
  1         4  
  1         272  
  1         12  
  1         3  
  1         353  
  1         11  
  1         3  
  1         276  
  1         11  
  1         3  
  1         287  
  1         13  
  1         1  
  1         357  
  1         12  
  1         3  
  1         262  
  1         12  
  1         1  
  1         264  
  1         13  
  1         4  
  1         374  
  1         11  
  1         4  
  1         283  
  1         12  
  1         4  
  1         311  
  1         13  
  1         3  
  1         406  
  1         10  
  1         2  
  1         269  
  1         12  
  1         3  
  1         289  
  1         11  
  1         5  
  1         359  
  1         13  
  1         3  
  1         241  
  1         12  
  1         2  
  1         301  
  1         11  
  1         2  
  1         408  
  1         10  
  1         4  
  1         256  
  1         12  
  1         3  
  1         287  
  1         13  
  1         2  
  1         468  
  1         12  
  1         2  
  1         251  
  1         10  
  1         3  
  1         292  
  1         13  
  1         4  
  1         359  
  1         13  
  1         3  
  1         346  
  1         12  
  1         3  
  1         276  
  1         12  
  1         1  
  1         358  
  1         13  
  1         4  
  1         267  
  1         13  
  1         3  
  1         288  
  1         15  
  1         3  
  1         484  
  1         10  
  1         2  
  1         268  
  1         12  
  1         2  
  1         286  
  1         13  
  1         4  
  1         354  
  1         12  
  1         2  
  1         241  
  1         11  
  1         3  
  1         267  
  1         12  
  1         3  
  1         333  
  1         14  
  1         3  
  1         253  
  1         13  
  1         3  
  1         327  
  1         12  
  1         2  
  1         408  
  1         11  
  1         2  
  1         270  
  1         13  
  1         2  
  1         269  
  1         13  
  1         3  
  1         417  
  1         15  
  1         5  
  1         248  
  1         12  
  1         5  
  1         272  
  1         14  
  1         2  
  1         400  
  1         14  
  1         2  
  1         291  
  1         12  
  1         4  
  1         264  
  1         13  
  1         4  
  1         414  
  1         9  
  1         2  
  1         243  
  1         10  
  1         4  
  1         272  
  1         10  
  1         3  
  1         303  
  1         13  
  1         2  
  1         262  
  1         16  
  1         2  
  1         286  
  1         11  
  1         2  
  1         426  
  1         13  
  1         4  
  1         257  
  1         14  
  1         2  
  1         280  
  1         17  
  1         4  
  1         429  
  1         11  
  1         2  
  1         298  
  1         13  
  1         3  
  1         300  
  1         15  
  1         3  
  1         417  
  1         36  
  1         3  
  1         239  
  1         14  
  1         3  
  1         289  
  1         12  
  1         2  
  1         421  
  1         10  
  1         3  
  1         196  
  1         6  
  1         13  
  1         191  
  1         13  
  1         4  
  1         208  
  1         8  
  1         2  
  1         163  
  1         16  
  1         4  
  1         234  
  1         7  
  1         12  
  1         259  
  1         7  
  1         10  
  1         184  
  1         7  
  1         2  
  1         218  
  1         7  
  1         3  
  1         266  
  1         10  
  1         1  
  1         175  
  1         11  
  1         3  
  1         195  
  1         12  
  1         3  
  1         257  
  1         7  
  1         3  
  1         172  
  1         8  
  1         2  
  1         190  
  1         16  
  1         5  
  1         312  
  1         8  
  1         3  
  1         134  
  1         16  
  1         2  
  1         159  
  1         8  
  1         3  
  1         225  
  1         22  
  1         5  
  1         169  
  1         17  
  1         8  
  1         238  
  1         7  
  1         12  
  1         290  
  1         11  
  1         4  
  1         165  
  1         9  
  1         4  
  1         227  
  1         6  
  1         2  
  1         281  
  1         7  
  1         8  
  1         168  
  1         6  
  1         10  
  1         208  
  1         6  
  1         2  
  1         328  
  1         14  
  1         1  
  1         177  
  1         12  
  1         5  
  1         200  
  1         8  
  1         5  
  1         273  
  1         16  
  1         2  
  1         122  
  1         7  
  1         4  
  1         163  
  1         7  
  1         7  
  1         240  
  1         6  
  1         2  
  1         166  
  1         10  
  1         4  
  1         164  
  1         7  
  1         2  
  1         278  
  1         7  
  1         3  
  1         178  
  1         7  
  1         2  
  1         175  
  1         9  
  1         6  
  1         291  
  1         8  
  1         4  
  1         146  
  1         13  
  1         9  
  1         178  
  1         8  
  1         3  
  1         299  
  1         10  
  1         4  
  1         173  
  1         8  
  1         4  
  1         167  
  1         10  
  1         4  
  1         302  
  1         12  
  1         2  
  1         103  
  1         6  
  1         4  
  1         102  
  1         8  
  1         1  
  1         192  
  1         15  
  1         2  
  1         79  
  1         13  
  1         4  
  1         107  
  1         8  
  1         3  
  1         241  
  1         10  
  1         2  
  1         76  
  1         9  
  1         4  
  1         88  
  1         12  
  1         3  
  1         141  
  1         7  
  1         3  
  1         109  
  1         10  
  1         1  
  1         106  
  1         6  
  1         2  
  1         143  
  1         13  
  1         6  
  1         76  
  1         9  
  1         3  
  1         84  
  1         6  
  1         4  
  1         137  
  1         10  
  1         9  
  1         85  
  1         10  
  1         2  
  1         89  
  1         10  
  1         2  
  1         137  
  1         6  
  1         6  
  1         74  
  1         8  
  1         2  
  1         83  
  1         20  
  1         5  
  1         145  
  1         6  
  1         4  
  1         85  
  1         19  
  1         2  
  1         92  
  1         7  
  1         9  
  1         146  
  1         9  
  1         3  
  1         80  
  1         12  
  1         5  
  1         82  
  1         12  
  1         2  
  1         140  
  1         8  
  1         2  
  1         86  
  1         11  
  1         32  
  1         109  
  1         9  
  1         4  
  1         141  
  1         6  
  1         3  
  1         63  
  1         6  
  1         2  
  1         93  
  1         7  
  1         3  
  1         136  
  1         11  
  1         3  
  1         62  
  1         9  
  1         7  
  1         84  
  1         9  
  1         2  
  1         148  
  1         6  
  1         3  
  1         74  
  1         6  
  1         6  
  1         90  
  1         13  
  1         3  
  1         135  
  1         22  
  1         3  
  1         115  
  1         8  
  1         2  
  1         91  
  1         10  
  1         2  
  1         140  
  1         8  
  1         2  
  1         70  
  1         10  
  1         8  
  1         87  
  1         5  
  1         2  
  1         154  
  1         7  
  1         6  
  1         74  
  1         13  
  1         4  
  1         117  
  1         9  
  1         1  
  1         150  
  1         8  
  1         4  
  1         70  
  1         7  
  1         3  
  1         80  
  1         7  
  1         12  
  1         171  
  1         23  
  1         3  
  1         94  
  1         6  
  1         4  
  1         79  
  1         8  
  1         4  
  1         133  
  1         11  
  1         3  
  1         119  
  1         10  
  1         3  
  1         181  
  1         9  
  1         3  
  1         297  
  1         12  
  1         4  
  1         123  
  1         10  
  1         3  
  1         136  
  1         11  
  1         2  
  1         236  
  1         11  
  1         6  
  1         190  
  1         9  
  1         5  
  1         177  
  1         8  
  1         3  
  1         290  
  1         11  
  1         2  
  1         159  
  1         10  
  1         3  
  1         194  
  1         13  
  1         4  
  1         291  
  1         11  
  1         3  
  1         166  
  1         9  
  1         3  
  1         252  
  1         12  
  1         2  
  1         298  
  1         9  
  1         3  
  1         155  
  1         11  
  1         4  
  1         231  
  1         11  
  1         5  
  1         339  
  1         12  
  1         2  
  1         164  
  1         14  
  1         2  
  1         238  
  1         13  
  1         4  
  1         430  
  1         10  
  1         2  
  1         201  
  1         11  
  1         3  
  1         301  
  1         11  
  1         2  
  1         341  
  1         75  
  1         4  
  1         123  
  1         11  
  1         4  
  1         183  
  1         10  
  1         3  
  1         308  
  1         11  
  1         3  
  1         117  
  1         11  
  1         3  
  1         199  
  1         12  
  1         4  
  1         293  
  1         14  
  1         2  
  1         180  
  1         12  
  1         3  
  1         203  
  1         16  
  1         2  
  1         418  
  1         13  
  1         3  
  1         165  
  1         14  
  1         3  
  1         265  
  1         12  
  1         4  
  1         433  
  1         11  
  1         4  
  1         165  
  1         10  
  1         1  
  1         275  
  1         12  
  1         3  
  1         415  
  1         11  
  1         4  
  1         167  
  1         10  
  1         3  
  1         240  
  1         12  
  1         3  
  1         402  
  1         11  
  1         3  
  1         165  
  1         12  
  1         3  
  1         235  
  1         12  
  1         4  
  1         411  
  1         9  
  1         5  
  1         121  
  1         11  
  1         4  
  1         178  
  1         12  
  1         3  
  1         273  
  1         10  
  1         5  
  1         156  
  1         13  
  1         3  
  1         154  
  1         11  
  1         3  
  1         325  
  1         24  
  1         3  
  1         158  
  1         12  
  1         4  
  1         193  
  1         12  
  1         3  
  1         299  
  1         13  
  1         2  
  1         121  
  1         11  
  1         3  
  1         203  
  1         11  
  1         2  
  1         315  
  1         10  
  1         4  
  1         117  
  1         13  
  1         3  
  1         180  
  1         15  
  1         3  
  1         338  
  1         11  
  1         2  
  1         119  
  1         12  
  1         4  
  1         164  
  1         11  
  1         3  
  1         308  
  1         12  
  1         4  
  1         125  
  1         13  
  1         4  
  1         239  
  1         11  
  1         2  
  1         295  
  1         15  
  1         2  
  1         126  
  1         14  
  1         3  
  1         182  
  1         14  
  1         3  
  1         309  
  1         10  
  1         4  
  1         122  
  1         11  
  1         3  
  1         183  
  1         10  
  1         7  
  1         288  
  1         13  
  1         3  
  1         119  
  1         11  
  1         3  
  1         187  
  1         12  
  1         2  
  1         225  
  1         9  
  1         3  
  1         120  
  1         11  
  1         2  
  1         189  
  1         11  
  1         2  
  1         306  
  1         12  
  1         3  
  1         119  
  1         13  
  1         4  
  1         195  
  1         13  
  1         4  
  1         299  
  1         11  
  1         2  
  1         116  
  1         10  
  1         3  
  1         128  
  1         11  
  1         2  
  1         230  
  1         12  
  1         5  
  1         159  
  1         12  
  1         3  
  1         170  
  1         14  
  1         3  
  1         381  
  1         12  
  1         4  
  1         127  
  1         29  
  1         2  
  1         151  
  1         12  
  1         4  
  1         252  
  1         10  
  1         5  
  1         157  
  1         13  
  1         3  
  1         169  
  1         11  
  1         2  
  1         293  
  1         14  
  1         2  
  1         167  
  1         12  
  1         5  
  1         198  
  1         14  
  1         3  
  1         362  
  1         9  
  1         4  
  1         175  
  1         9  
  1         3  
  1         167  
  1         9  
  1         1  
  1         231  
  1         12  
  1         3  
  1         235  
  1         11  
  1         2  
  1         170  
  1         13  
  1         4  
  1         320  
  1         13  
  1         2  
  1         158  
  1         10  
  1         4  
  1         167  
  1         13  
  1         2  
  1         290  
  1         12  
  1         4  
  1         158  
  1         13  
  1         2  
  1         177  
  1         12  
  1         4  
  1         359  
  1         15  
  1         3  
  1         153  
  1         13  
  1         4  
  1         167  
  1         13  
  1         4  
  1         294  
  1         9  
  1         3  
  1         111  
  1         12  
  1         3  
  1         141  
  1         11  
  1         4  
  1         227  
  1         14  
  1         2  
  1         168  
  1         15  
  1         2  
  1         189  
  1         13  
  1         3  
  1         285  
  1         12  
  1         4  
  1         201  
  1         14  
  1         3  
  1         192  
  1         12  
  1         6  
  1         292  
  1         12  
  1         3  
  1         177  
  1         13  
  1         3  
  1         188  
  1         13  
  1         2  
  1         316  
  1         11  
  1         3  
  1         188  
  1         13  
  1         2  
  1         197  
  1         12  
  1         4  
  1         297  
  1         12  
  1         3  
  1         156  
  1         11  
  1         3  
  1         168  
  1         10  
  1         3  
  1         223  
  1         13  
  1         2  
  1         169  
  1         12  
  1         5  
  1         193  
  1         13  
  1         3  
  1         294  
  1         13  
  1         4  
  1         189  
  1         13  
  1         3  
  1         186  
  1         14  
  1         2  
  1         315  
  1         13  
  1         2  
  1         196  
  1         13  
  1         3  
  1         200  
  1         12  
  1         3  
  1         347  
  1         11  
  1         3  
  1         171  
  1         14  
  1         3  
  1         191  
  1         11  
  1         2  
  1         286  
  1         10  
  1         4  
  1         144  
  1         10  
  1         3  
  1         141  
  1         12  
  1         2  
  1         222  
  1         15  
  1         4  
  1         163  
  1         12  
  1         3  
  1         174  
  1         11  
  1         3  
  1         288  
  1         8  
  1         2  
  1         136  
  1         13  
  1         2  
  1         168  
  1         15  
  1         2  
  1         335  
  1         10  
  1         3  
  1         125  
  1         11  
  1         4  
  1         167  
  1         11  
  1         2  
  1         289  
  1         12  
  1         3  
  1         124  
  1         12  
  1         3  
  1         194  
  1         13  
  1         4  
  1         286  
  1         7  
  1         2  
  1         123  
  1         6  
  1         4  
  1         118  
  1         8  
  1         3  
  1         204  
  1         6  
  1         2  
  1         87  
  1         14  
  1         3  
  1         135  
  1         7  
  1         3  
  1         195  
  1         8  
  1         4  
  1         88  
  1         6  
  1         11  
  1         121  
  1         8  
  1         2  
  1         232  
  1         14  
  1         3  
  1         94  
  1         7  
  1         3  
  1         114  
  1         11  
  1         4  
  1         199  
  1         14  
  1         3  
  1         101  
  1         7  
  1         3  
  1         113  
  1         9  
  1         5  
  1         194  
  1         6  
  1         2  
  1         76  
  1         7  
  1         4  
  1         121  
  1         9  
  1         2  
  1         197  
  1         9  
  1         2  
  1         72  
  1         6  
  1         2  
  1         91  
  1         6  
  1         3  
  1         151  
  1         9  
  1         10  
  1         112  
  1         15  
  1         2  
  1         144  
  1         7  
  1         4  
  1         259  
  1         11  
  1         4  
  1         112  
  1         9  
  1         6  
  1         141  
  1         7  
  1         2  
  1         257  
  1         7  
  1         4  
  1         108  
  1         20  
  1         3  
  1         147  
  1         9  
  1         3  
  1         268  
  1         7  
  1         2  
  1         109  
  1         7  
  1         2  
  1         136  
  1         16  
  1         3  
  1         256  
  1         7  
  1         3  
  1         72  
  1         8  
  1         2  
  1         99  
  1         6  
  1         3  
  1         138  
  1         7  
  1         6  
  1         124  
  1         10  
  1         3  
  1         178  
  1         8  
  1         15  
  1         287  
  1         9  
  1         2  
  1         107  
  1         10  
  1         5  
  1         131  
  1         8  
  1         3  
  1         270  
  1         10  
  1         4  
  1         112  
  1         11  
  1         3  
  1         133  
  1         7  
  1         6  
  1         260  
  1         11  
  1         4  
  1         97  
  1         6  
  1         6  
  1         138  
  1         8  
  1         3  
  1         263  
  1         7  
  1         2  
  1         82  
  1         8  
  1         5  
  1         95  
  1         7  
  1         2  
  1         140  
  1         7  
  1         2  
  1         128  
  1         8  
  1         12  
  1         191  
  1         9  
  1         5  
  1         248  
  1         10  
  1         2  
  1         162  
  1         7  
  1         4  
  1         162  
  1         14  
  1         2  
  1         261  
  1         7  
  1         3  
  1         133  
  1         7  
  1         2  
  1         179  
  1         9  
  1         4  
  1         249  
  1         9  
  1         3  
  1         131  
  1         8  
  1         3  
  1         163  
  1         17  
  1         3  
  1         279  
  1         6  
  1         3  
  1         81  
  1         8  
  1         3  
  1         88  
  1         14  
  1         2  
  1         150  
  1         7  
  1         2  
  1         129  
  1         9  
  1         2  
  1         186  
  1         7  
  1         3  
  1         250  
  1         7  
  1         4  
  1         146  
  1         7  
  1         10  
  1         164  
  1         7  
  1         5  
  1         269  
  1         31  
  1         5  
  1         135  
  1         7  
  1         4  
  1         169  
  1         6  
  1         5  
  1         251  
  1         6  
  1         2  
  1         121  
  1         8  
  1         2  
  1         160  
  1         10  
  1         4  
  1         284  
  1         6  
  1         6  
  1         58  
  1         15  
  1         3  
  1         85  
  1         14  
  1         3  
  1         133  
  1         9  
  1         2  
  1         133  
  1         6  
  1         9  
  1         127  
  1         6  
  1         5  
  1         269  
  1         8  
  1         2  
  1         100  
  1         7  
  1         3  
  1         145  
  1         7  
  1         3  
  1         260  
  1         6  
  1         3  
  1         121  
  1         8  
  1         4  
  1         151  
  1         7  
  1         2  
  1         256  
  1         7  
  1         3  
  1         122  
  1         7  
  1         2  
  1         152  
  1         9  
  1         2  
  1         277  
  1         13  
  1         2  
  1         76  
  1         8  
  1         2  
  1         103  
  1         10  
  1         2  
  1         200  
  1         6  
  1         2  
  1         91  
  1         7  
  1         2  
  1         98  
  1         6  
  1         2  
  1         200  
  1         7  
  1         3  
  1         78  
  1         13  
  1         2  
  1         116  
  1         6  
  1         6  
  1         180  
  1         7  
  1         2  
  1         88  
  1         6  
  1         3  
  1         107  
  1         7  
  1         4  
  1         197  
  1         13  
  1         4  
  1         78  
  1         9  
  1         4  
  1         98  
  1         6  
  1         3  
  1         191  
  1         6  
  1         9  
  1         76  
  1         10  
  1         4  
  1         105  
  1         13  
  1         4  
  1         188  
  1         8  
  1         3  
  1         72  
  1         7  
  1         3  
  1         113  
  1         9  
  1         2  
  1         182  
  1         6  
  1         4  
  1         83  
  1         7  
  1         7  
  1         106  
  1         6  
  1         3  
  1         183  
  1         11  
  1         2  
  1         73  
  1         6  
  1         9  
  1         113  
  1         10  
  1         4  
  1         205  
  1         7  
  1         2  
  1         76  
  1         12  
  1         3  
  1         173  
  1         11  
  1         2  
  1         262  
  1         10  
  1         3  
  1         124  
  1         12  
  1         4  
  1         159  
  1         9  
  1         3  
  1         253  
  1         10  
  1         2  
  1         152  
  1         11  
  1         2  
  1         182  
  1         12  
  1         2  
  1         253  
  1         11  
  1         3  
  1         144  
  1         12  
  1         4  
  1         173  
  1         13  
  1         5  
  1         258  
  1         12  
  1         3  
  1         206  
  1         13  
  1         2  
  1         173  
  1         11  
  1         3  
  1         261  
  1         11  
  1         4  
  1         127  
  1         11  
  1         4  
  1         170  
  1         13  
  1         4  
  1         255  
  1         11  
  1         2  
  1         156  
  1         12  
  1         3  
  1         159  
  1         11  
  1         3  
  1         261  
  1         14  
  1         2  
  1         154  
  1         12  
  1         3  
  1         172  
  1         11  
  1         5  
  1         261  
  1         11  
  1         2  
  1         160  
  1         11  
  1         2  
  1         176  
  1         10  
  1         2  
  1         290  
  1         12  
  1         2  
  1         159  
  1         13  
  1         3  
  1         164  
  1         11  
  1         1  
  1         281  
  1         12  
  1         2  
  1         153  
  1         13  
  1         4  
  1         163  
  1         10  
  1         2  
  1         257  
  1         13  
  1         4  
  1         158  
  1         12  
  1         3  
  1         194  
  1         12  
  1         4  
  1         273  
  1         12  
  1         1  
  1         161  
  1         17  
  1         3  
  1         167  
  1         12  
  1         3  
  1         269  
  1         11  
  1         4  
  1         162  
  1         14  
  1         3  
  1         156  
  1         13  
  1         3  
  1         265  
  1         14  
  1         2  
  1         130  
  1         12  
  1         2  
  1         185  
  1         13  
  1         3  
  1         262  
  1         11  
  1         2  
  1         147  
  1         10  
  1         2  
  1         139  
  1         10  
  1         2  
  1         222  
  1         13  
  1         2  
  1         143  
  1         11  
  1         3  
  1         174  
  1         16  
  1         3  
  1         298  
  1         13  
  1         3  
  1         160  
  1         12  
  1         3  
  1         170  
  1         13  
  1         2  
  1         298  
  1         12  
  1         3  
  1         164  
  1         13  
  1         5  
  1         195  
  1         12  
  1         4  
  1         294  
  1         14  
  1         4  
  1         169  
  1         12  
  1         4  
  1         175  
  1         12  
  1         2  
  1         294  
  1         10  
  1         3  
  1         113  
  1         9  
  1         3  
  1         153  
  1         8  
  1         3  
  1         238  
  1         12  
  1         2  
  1         163  
  1         12  
  1         3  
  1         169  
  1         10  
  1         3  
  1         391  
  1         14  
  1         2  
  1         144  
  1         13  
  1         3  
  1         176  
  1         14  
  1         2  
  1         288  
  1         12  
  1         3  
  1         156  
  1         14  
  1         3  
  1         179  
  1         12  
  1         2  
  1         296  
  1         12  
  1         4  
  1         161  
  1         13  
  1         3  
  1         184  
  1         14  
  1         3  
  1         288  
  1         9  
  1         3  
  1         210  
  1         9  
  1         3  
  1         166  
  1         11  
  1         2  
  1         223  
  1         11  
  1         2  
  1         172  
  1         13  
  1         4  
  1         217  
  1         14  
  1         2  
  1         292  
  1         12  
  1         2  
  1         197  
  1         12  
  1         3  
  1         202  
  1         12  
  1         3  
  1         635  
  1         11  
  1         3  
  1         191  
  1         14  
  1         3  
  1         206  
  1         14  
  1         3  
  1         309  
  1         11  
  1         3  
  1         190  
  1         11  
  1         4  
  1         203  
  1         15  
  1         2  
  1         286  
  1         9  
  1         2  
  1         110  
  1         10  
  1         2  
  1         139  
  1         9  
  1         5  
  1         200  
  1         13  
  1         2  
  1         172  
  1         13  
  1         3  
  1         203  
  1         14  
  1         2  
  1         315  
  1         13  
  1         2  
  1         163  
  1         15  
  1         3  
  1         216  
  1         15  
  1         3  
  1         306  
  1         12  
  1         2  
  1         194  
  1         14  
  1         2  
  1         200  
  1         13  
  1         3  
  1         290  
  1         13  
  1         3  
  1         177  
  1         14  
  1         2  
  1         229  
  1         13  
  1         5  
  1         297  
  1         10  
  1         3  
  1         112  
  1         8  
  1         4  
  1         135  
  1         9  
  1         4  
  1         167  
  1         13  
  1         2  
  1         139  
  1         12  
  1         4  
  1         169  
  1         13  
  1         3  
  1         358  
  1         13  
  1         4  
  1         165  
  1         11  
  1         3  
  1         192  
  1         13  
  1         4  
  1         286  
  1         12  
  1         3  
  1         167  
  1         11  
  1         3  
  1         198  
  1         11  
  1         2  
  1         287  
  1         12  
  1         3  
  1         161  
  1         12  
  1         4  
  1         177  
  1         12  
  1         3  
  1         303  
  1         12  
  1         4  
  1         122  
  1         12  
  1         3  
  1         164  
  1         13  
  1         4  
  1         294  
  1         12  
  1         4  
  1         152  
  1         9  
  1         2  
  1         149  
  1         13  
  1         1  
  1         264  
  1         11  
  1         2  
  1         133  
  1         13  
  1         4  
  1         185  
  1         11  
  1         5  
  1         288  
  1         11  
  1         3  
  1         150  
  1         9  
  1         2  
  1         174  
  1         12  
  1         3  
  1         261  
  1         10  
  1         3  
  1         120  
  1         11  
  1         3  
  1         186  
  1         13  
  1         2  
  1         259  
  1         11  
  1         3  
  1         147  
  1         16  
  1         2  
  1         166  
  1         11  
  1         5  
  1         270  
  1         11  
  1         3  
  1         154  
  1         11  
  1         4  
  1         170  
  1         11  
  1         3  
  1         306  
  1         10  
  1         3  
  1         153  
  1         10  
  1         2  
  1         192  
  1         12  
  1         4  
  1         320  
  1         13  
  1         3  
  1         208  
  1         11  
  1         3  
  1         412  
  1         14  
  1         3  
  1         448  
  1         12  
  1         4  
  1         193  
  1         12  
  1         4  
  1         425  
  1         11  
  1         3  
  1         455  
  1         12  
  1         4  
  1         216  
  1         11  
  1         2  
  1         368  
  1         11  
  1         4  
  1         395  
  1         11  
  1         4  
  1         346  
  1         7  
  1         2  
  1         505  
  1         7  
  1         4  
  1         393  
  1         8  
  1         2  
  1         78  
  1         9  
  1         2  
  1         106  
  1         7  
  1         1  
  1         183  
  1         7  
  1         4  
  1         80  
  1         7  
  1         2  
  1         105  
  1         7  
  1         4  
  1         191  
  1         17  
  1         2  
  1         121  
  1         6  
  1         3  
  1         131  
  1         7  
  1         2  
  1         226  
  1         10  
  1         2  
  1         87  
  1         11  
  1         3  
  1         118  
  1         6  
  1         3  
  1         218  
  1         7  
  1         2  
  1         61  
  1         6  
  1         7  
  1         99  
  1         8  
  1         8  
  1         135  
  1         7  
  1         7  
  1         129  
  1         8  
  1         3  
  1         118  
  1         8  
  1         2  
  1         223  
  1         7  
  1         4  
  1         100  
  1         7  
  1         3  
  1         132  
  1         7  
  1         3  
  1         227  
  1         12  
  1         2  
  1         107  
  1         7  
  1         2  
  1         128  
  1         7  
  1         4  
  1         217  
  1         8  
  1         2  
  1         89  
  1         10  
  1         3  
  1         117  
  1         7  
  1         6  
  1         209  
  1         8  
  1         3  
  1         89  
  1         10  
  1         3  
  1         123  
  1         7  
  1         6  
  1         204  
  1         9  
  1         2  
  1         92  
  1         9  
  1         2  
  1         131  
  1         10  
  1         4  
  1         216  
  1         8  
  1         3  
  1         74  
  1         9  
  1         3  
  1         78  
  1         11  
  1         2  
  1         134  
  1         7  
  1         2  
  1         71  
  1         8  
  1         4  
  1         77  
  1         8  
  1         4  
  1         121  
  1         6  
  1         3  
  1         94  
  1         8  
  1         5  
  1         133  
  1         7  
  1         4  
  1         214  
89 4694 50       17882 my ($self, $name) = @_;
90 4694         24123 return $self->compilers->{$name} if $self->compilers->{$name};
91              
92             die "Invalid compiler name `$name`" unless $name =~ $compiler_re;
93             my $module = "Data::Sah::Compiler::$name";
94 9495     9499 1 28341 if (!eval "require $module; 1") { ## no critic: BuiltinFunctions::ProhibitStringyEval
95 9495 50       25775 die "Can't load compiler module $module".($@ ? ": $@" : "");
96             }
97 9495 50       92126  
98 9495         21157 my $obj = $module->new(main => $self);
99 9495 50       537814 $self->compilers->{$name} = $obj;
100 3 0       19  
101             return $obj;
102             }
103 9495         47636  
104 9495         215526 my ($self, $var, $curpath) = @_;
105             die "Not yet implemented";
106 9495         64355 }
107              
108             1;
109             # ABSTRACT: Fast and featureful data structure validation
110 3     6 1 6  
111 3         498  
112             =pod
113              
114             =encoding UTF-8
115              
116             =head1 NAME
117              
118             Data::Sah - Fast and featureful data structure validation
119              
120             =head1 VERSION
121              
122             This document describes version 0.912 of Data::Sah (from Perl distribution Data-Sah), released on 2022-08-20.
123              
124             =head1 SYNOPSIS
125              
126             Non-OO interface:
127              
128             use Data::Sah qw(
129             normalize_schema
130             gen_validator
131             );
132              
133             my $v;
134              
135             # generate a validator for schema
136             $v = gen_validator(["int*", min=>1, max=>10]);
137              
138             # validate your data using the generated validator
139             say "valid" if $v->(5); # valid
140             say "valid" if $v->(11); # invalid
141             say "valid" if $v->(undef); # invalid
142             say "valid" if $v->("x"); # invalid
143              
144             # generate validator which reports error message string
145             $v = gen_validator(["int*", min=>1, max=>10],
146             {return_type=>'str_errmsg', lang=>'id_ID'});
147             # ditto but the error message will be in Indonesian
148             $v = gen_validator(["int*", min=>1, max=>10],
149             {return_type=>'str_errmsg', lang=>'id_ID'});
150             say $v->(5); # ''
151             say $v->(12); # 'Data tidak boleh lebih besar dari 10'
152             # (in English: 'Data must not be larger than 10')
153              
154             # normalize a schema
155             my $nschema = normalize_schema("int*"); # => ["int", {req=>1}, {}]
156             normalize_schema(["int*", min=>0]); # => ["int", {min=>0, req=>1}, {}]
157              
158             OO interface (more advanced usage):
159              
160             use Data::Sah;
161             my $sah = Data::Sah->new;
162              
163             # get perl compiler
164             my $pl = $sah->get_compiler("perl");
165              
166             # compile schema into Perl code
167             my $cd = $pl->compile(schema => ["int*", min=>0]);
168             say $cd->{result};
169              
170             will print something like:
171              
172             # req #0
173             (defined($data))
174             &&
175             # check type 'int'
176             (Scalar::Util::Numeric::isint($data))
177             &&
178             (# clause: min
179             ($data >= 0))
180              
181             To see the full validator code (with C<sub {}> and all), you can do something
182             like:
183              
184             % LOG_SAH_VALIDATOR_CODE=1 TRACE=1 perl -MLog::ger::LevelFromEnv -MLog::ger::Output=Screen -MData::Sah=gen_validator -E'gen_validator(["int*", min=>0])'
185              
186             which will print log message like:
187              
188             normalized schema=['int',{min => 0,req => 1},{}]
189             validator code:
190             1|do {
191             2| require Scalar::Util::Numeric;
192             3| sub {
193             4| my ($data) = @_;
194             5| my $_sahv_res =
195             |
196             7| # req #0
197             8| (defined($data))
198             |
199             10| &&
200             |
201             12| # check type 'int'
202             13| (Scalar::Util::Numeric::isint($data))
203             |
204             15| &&
205             |
206             17| (# clause: min
207             18| ($data >= 0));
208             |
209             20| return($_sahv_res);
210             21| }}
211              
212             =head1 DESCRIPTION
213              
214             This distribution, C<Data-Sah>, implements compilers for producing Perl and
215             JavaScript validators, as well as translatable human description text from
216             L<Sah> schemas. Compiler approach is used instead of interpreter for faster
217             speed.
218              
219             The generated validator code can run without the C<Data::Sah::*> modules.
220              
221             =head1 STATUS
222              
223             Some features are not implemented yet:
224              
225             =over
226              
227             =item * def/subschema
228              
229             =item * obj: meths, attrs properties
230              
231             =item * .prio, .err_msg, .ok_err_msg attributes
232              
233             =item * .result_var attribute
234              
235             =item * BaseType: more forms of if clause
236              
237             Only the basic form of the C<if> clause is implemented.
238              
239             =item * BaseType: postfilters
240              
241             =item * BaseType: prefilters.temp
242              
243             =item * BaseType: check, prop, check_prop clauses
244              
245             =item * HasElems: each_index, check_each_elem, check_each_index, exists clauses
246              
247             =item * HasElems: len, elems, indices properties
248              
249             =item * hash: check_each_key, check_each_value, allowed_keys_re, forbidden_keys_re clauses
250              
251             =item * array: uniq clauses
252              
253             =item * human compiler: markdown output
254              
255             =back
256              
257             =head1 VARIABLES
258              
259             =head2 C<$Log_Validator_Code> (bool, default: 0)
260              
261             =head1 MODULE ORGANIZATION
262              
263             B<Data::Sah::Type::*> roles specify Sah types, e.g. C<Data::Sah::Type::bool>
264             specifies the bool type. It can also be used to name distributions that
265             introduce new types, e.g. C<Data-Sah-Type-complex> which introduces complex
266             number type.
267              
268             B<Data::Sah::FuncSet::*> roles specify bundles of functions, e.g.
269             <Data::Sah::FuncSet::Core> specifies the core/standard functions.
270              
271             B<Data::Sah::Compiler::$LANG::> namespace is for compilers. Each compiler might
272             further contain C<::TH::*> (type handler) and C<::FSH::*> (function handler)
273             subnamespaces to implement appropriate functionalities, e.g.
274             L<Data::Sah::Compiler::perl::TH::bool> is the bool type handler for the Perl
275             compiler, L<Data::Sah::Compiler::perl::FSH::Core> is the Core funcset handler
276             for Perl compiler.
277              
278             B<Data::Sah::Coerce::$LANG::To_$TARGET_TYPE::From_$SOURCE_TYPE::$DESCRIPTION>
279             contains coercion rules.
280              
281             B<Data::Sah::Filter::$LANG::$TOPIC::$DESCRIPTION> contains filtering rules.
282              
283             B<Data::Sah::Value::$LANG::$TOPIC::$DESCRIPTION> contains value codes.
284              
285             B<Data::Sah::TypeX::$TYPENAME::$CLAUSENAME> namespace can be used to name
286             distributions that extend an existing Sah type by introducing a new clause for
287             it. See L<Data::Sah::Manual::Extending> for an example.
288              
289             B<Data::Sah::Lang::$LANGCODE> namespaces are for modules that contain
290             translations. They are further organized according to the organization of other
291             Data::Sah modules, e.g. L<Data::Sah::Lang::en_US::Type::int> or
292             C<Data::Sah::Lang::en_US::TypeX::str::is_palindrome>.
293              
294             B<Sah::Schema::> namespace is reserved for modules that contain schemas in their
295             C<$schema> package variables. For example, L<Sah::Schema::posint>.
296              
297             B<Sah::Schemas::*> are module names for distributions that bundle several
298             C<Sah::Schema::*> modules. For example L<Sah::Schemas::Int> contains various
299             schemas for integers such as L<Sah::Schema::uint>, L<Sah::Schema::int8>, and so
300             on.
301              
302             B<Sah::SchemaR::> namespace is reserved to store resolved result of schema. For
303             example, L<Sah::Schema::unix::local_username> contains the definition for the
304             schema C<unix::local_username> which is C<unix::username> with some additional
305             coerce rules. C<unix::username> in turn is defined in
306             L<Sah::Schema::unix::username> which is base type C<str> with some clauses like
307             minimum and maximum length as well as regular expression for valid pattern. To
308             find out the base type of a schema (which might be defined based on another
309             schema), one has to perform one to several lookups to C<Sah::Schema::*> modules.
310             A C<Sah::SchemaR::*> module, however, contains the "B<r>esolved" result of the
311             definition, so by looking at L<Sah::SchemaR::unix::local_username> one can know
312             that the schema eventually is based on the base type C<str>. See
313             L<Dist::Zilla::Plugin::Sah::Schemas>.
314              
315             B<Sah::SchemaV::> namespace is reserved to store generated schema validator
316             code. See L<Dist::Zilla::Plugin::Rinci::GenValidator>.
317              
318             =head1 FUNCTIONS
319              
320             None exported by default.
321              
322             =head2 normalize_schema($schema) => ARRAY
323              
324             Normalize C<$schema>.
325              
326             Can also be used as a method.
327              
328             =head2 gen_validator($schema, \%opts) => CODE (or STR)
329              
330             Generate validator code for C<$schema>. Can also be used as a method. Known
331             options (unknown options will be passed to Perl schema compiler):
332              
333             =over
334              
335             =item * accept_ref => BOOL (default: 0)
336              
337             Normally the generated validator accepts data, as in:
338              
339             $res = $vdr->($data);
340             $res = $vdr->(42);
341              
342             If this option is set to true, validator accepts reference to data instead, as
343             in:
344              
345             $res = $vdr->(\$data);
346              
347             This allows $data to be modified by the validator (mainly, to set default value
348             specified in schema). For example:
349              
350             my $data;
351             my $vdr = gen_validator([int => {min=>0, max=>10, default=>5}],
352             {accept_ref=>1});
353             my $res = $vdr->(\$data);
354             say $res; # => 1 (success)
355             say $data; # => 5
356              
357             =item * source => BOOL (default: 0)
358              
359             If set to 1, return source code string instead of compiled subroutine. Usually
360             only needed for debugging (but see also C<$Log_Validator_Code> and
361             C<LOG_SAH_VALIDATOR_CODE> if you want to log validator source code).
362              
363             =back
364              
365             =head1 ATTRIBUTES
366              
367             =head2 compilers => HASH
368              
369             A mapping of compiler name and compiler (C<Data::Sah::Compiler::*>) objects.
370              
371             =head1 METHODS
372              
373             =head2 new
374              
375             Usage:
376              
377             my $sah = Data::Sah->new;
378              
379             Create a new Data::Sah instance.
380              
381             =head2 get_compiler
382              
383             Usage:
384              
385             my $comp = $sah->get_compiler($name);
386              
387             Get compiler object. C<Data::Sah::Compiler::$name> will be loaded first and
388             instantiated if not already so. After that, the compiler object is cached.
389              
390             Example:
391              
392             my $plc = $sah->get_compiler("perl"); # loads Data::Sah::Compiler::perl
393              
394             =head2 normalize_schema
395              
396             Usage:
397              
398             # as method
399             my $nschema = $sah->normalize_schema($schema);
400              
401             # as function
402             my $nschema = normalize_schema($schema);
403              
404             Normalize a schema, e.g. change C<int*> into C<< [int => {req=>1}] >>, as well
405             as do some sanity checks on it. Returns the normalized schema if succeeds, or
406             dies on error.
407              
408             Can also be used as a function.
409              
410             Note: this functionality is implemented in L<Data::Sah::Normalize> (distributed
411             separately in Data-Sah-Normalize). Use that module instead if you just need
412             normalizing schemas, to reduce dependencies.
413              
414             =head2 normalize_clset
415              
416             Usage:
417              
418             # as method
419             my $nclset = $sah->normalize_clset($clset[, \%opts]); # => hash
420              
421             # as function
422             my $nclset = Data::Sah::normalize_clset($clset[, \%opts]); # => hash
423              
424             Normalize a clause set, e.g. change C<< {"!match"=>"abc"} >> into C<<
425             {"match"=>"abc", "match.op"=>"not"} >>. Produce a shallow copy of the input
426             clause set hash.
427              
428             Can also be used as a function.
429              
430             =head2 normalize_var
431              
432             my $nvarname = $sah->normalize_var($var);
433              
434             Normalize a variable name in expression into its fully qualified/absolute form.
435              
436             Not yet implemented (pending specification).
437              
438             For example:
439              
440             [int => {min => 10, 'max=' => '2*$min'}]
441              
442             $min in the above expression will be normalized as C<schema:clauses.min>.
443              
444             =head2 gen_validator
445              
446             # as method
447             my $vdr = $sah->gen_validator($schema [ , \%opts ]); # => coderef
448              
449             # as function
450             my $vdr = gen_validator($schema [ , \%opts ]); # => coderef
451              
452             Use the Perl compiler to generate validator code. Can also be used as a
453             function. This is a wrapper for L<Data::Sah::Compiler::Prog>'s C<compile()>;
454             C<%opts> will be passed to compile()'s arguments, including C<return_type>,
455             C<comment>, C<debug>, and so on. See the documentation in
456             C<Data::Sah::Compiler::Prog> for more details.
457              
458             =head1 FAQ
459              
460             See also L<Sah::FAQ>.
461              
462             =head2 Comparison to {JSON::Schema, Data::Rx, Data::FormValidator, ...}?
463              
464             See L<Sah::FAQ>.
465              
466             =head2 Why is it so slow?
467              
468             You probably do not reuse the compiled schema, e.g. you continually destroy and
469             recreate Data::Sah object, or repeatedly recompile the same schema. To gain the
470             benefit of compilation, you need to keep the compiled result and use the
471             generated Perl code repeatedly.
472              
473             =head2 Can I generate another schema dynamically from within the schema?
474              
475             For example:
476              
477             // if first element is an integer, require the array to contain only integers,
478             // otherwise require the array to contain only strings.
479             ["array", {"min_len": 1, "of=": "[is_int($_[0]) ? 'int':'str']"}]
480              
481             Currently no, Data::Sah does not support expression on clauses that contain
482             other schemas. In other words, dynamically generated schemas are not supported.
483             To support this, if the generated code needs to run independent of Data::Sah, it
484             needs to contain the compiler code itself (or an interpreter) to compile or
485             evaluate the generated schema.
486              
487             However, an C<eval_schema()> Sah function which uses Data::Sah can be trivially
488             declared and target the Perl compiler.
489              
490             =head2 How to display the validator code being generated?
491              
492             Use the C<< source => 1 >> option in C<gen_validator()>.
493              
494             If you use the OO interface, e.g.:
495              
496             # generate perl code
497             my $cd = $plc->compile(schema=>..., ...);
498              
499             then the generated code is in C<< $cd->{result} >> and you can just print it.
500              
501             If you generate validator using C<gen_validator()>, you can set environment
502             LOG_SAH_VALIDATOR_CODE or package variable C<$Log_Validator_Code> to true and
503             the generated code will be logged at trace level using L<Log::ger>. The log can
504             be displayed using, e.g., L<Log::ger::Output::Screen>:
505              
506             % LOG_SAH_VALIDATOR_CODE=1 TRACE=1 \
507             perl -MLog::ger::LevelFromEnv -MLog::ger::Output=Screen \
508             -MData::Sah=gen_validator -e '$sub = gen_validator([int => min=>1, max=>10])'
509              
510             Sample output:
511              
512             normalized schema=['int',{max => 10,min => 1},{}]
513             schema already normalized, skipped normalization
514             validator code:
515             1|do {
516             2| require Scalar::Util::Numeric;
517             3| sub {
518             4| my ($data) = @_;
519             5| my $_sahv_res =
520             |
521             7| # skip if undef
522             8| (!defined($data) ? 1 :
523             |
524             10| (# check type 'int'
525             11| (Scalar::Util::Numeric::isint($data))
526             |
527             13| &&
528             |
529             15| (# clause: min
530             16| ($data >= 1))
531             |
532             18| &&
533             |
534             20| (# clause: max
535             21| ($data <= 10))));
536             |
537             23| return($_sahv_res);
538             24| }}
539              
540             Lastly, you can also use L<validate-with-sah> CLI utility from the
541             L<App::SahUtils> distribution (use the C<--show-code> option).
542              
543             =head2 How to show the validation error message? The validator only returns true/false!
544              
545             Pass the C<< return_type=>"str_errmsg" >> to get an error message string on
546             error, or C<< return_type=>"hash_details" >> to get a hash of detailed error
547             messages. Note also that the error messages are translateable (e.g. use C<LANG>
548             or C<< lang=>... >> option. For example:
549              
550             my $v = gen_validator([int => between => [1,10]], {return_type=>"str_errmsg"});
551             say "$_: ", $v->($_) for 1, "x", 12;
552              
553             will output:
554              
555             1:
556             "x": Input is not of type integer
557             12: Must be between 1 and 10
558              
559             =head2 How to show all the error and warning messages?
560              
561             If you pass C<< return_type=>"hash_details" >> then the generated validator code
562             can return a hashref containing all the errors (in the C<errors> key) and
563             warnings (in the C<warnings> key) instead of just a boolean (when C<<
564             return_type=>"bool_valid" >>) or a string containing the first encountered error
565             message (when C<< return_type=>"str_errmsg" >>) .
566              
567             =head2 How to get the data value with the default filled in, or coercion done?
568              
569             If you use C<< return_type=>"hash_details" >>, the generated validator code will
570             also return the input data after the default is filled in or coercion is done in
571             the C<value> key of the result hashref. Or, if you do not need a validator that
572             checks for all errors/warnings, you can use C<< return_type=>"bool_valid+val" >>
573             or C<< return_type=>"str_errmsg+val" >>. For example:
574              
575             my $v = gen_validator(["date", {"x.perl.coerce_to"=>"DateTime"}],
576             {return_type=>"str_errmsg+val"});
577              
578             my ($err, $val) = @{ $v->("2016-05-14") };
579              
580             The validator will return an error message string (or an empty string if
581             validation succeeds) as well as the final value. In the example above, C<$val>
582             will contain a L<DateTime> object. This is convenient because the final value is
583             what is usually used further after validation process.
584              
585             =head2 What does the C<@...> prefix that is sometimes shown on the error message mean?
586              
587             It shows the path to data item that fails the validation, e.g.:
588              
589             my $v = gen_validator([array => of => [int=>min=>5], {return_type=>"str_errmsg"});
590             say $v->([10, 5, "x"]);
591              
592             prints:
593              
594             @[2]: Input is not of type integer
595              
596             which means that the third element (subscript 2) of the array fails the
597             validation. Another example:
598              
599             my $v = gen_validator([array => of => [hash=>keys=>{a=>"int"}]]);
600             say $v->([{}, {a=>1.1}]);
601              
602             prints:
603              
604             @[1][a]: Input is not of type integer
605              
606             Note that for validator that returns full result hashref (C<<
607             return_type=>"hash_details" >>) the error messages in the C<errors> key are also
608             keyed with data path, albeit in a slightly different format (i.e.
609             slash-separated, e.g. C<2> and C<1/a>) for easier parsing.
610              
611             =head2 How to show the process of validation by the compiled code?
612              
613             If you are generating Perl code from schema, you can pass C<< debug=>1 >> option
614             so the code contains logging (L<Log::ger>-based) and other debugging
615             information, which you can display. For example:
616              
617             % TRACE=1 perl -MLog::ger::LevelFromEnv -MLog::ger::Output=Screen \
618             -MData::Sah=gen_validator -E'
619             $v = gen_validator([array => of => [hash => {req_keys=>["a"]}]],
620             {return_type=>"str_errmsg", debug=>1});
621             say "Validation result: ", $v->([{a=>1}, "x"]);'
622              
623             will output:
624              
625             ...
626             [spath=[]]skip if undef ...
627             [spath=[]]check type 'array' ...
628             [spath=['of']]clause: {"of":["hash",{"req_keys":["a"]}]} ...
629             [spath=['of']]skip if undef ...
630             [spath=['of']]check type 'hash' ...
631             [spath=['of','req_keys']]clause: {"req_keys":["a"]} ...
632             [spath=['of']]skip if undef ...
633             [spath=['of']]check type 'hash' ...
634             Validation result: [spath=of]@1: Input is not of type hash
635              
636             =head2 What else can I do with the compiled code?
637              
638             Data::Sah offers some options in code generation. Beside compiling the validator
639             code into a subroutine, there are also some other options. Examples:
640              
641             =over
642              
643             =item * L<Dist::Zilla::Plugin::Rinci::Validate>
644              
645             This plugin inserts the generated code (without the C<sub { ... }> wrapper) to
646             validate the content of C<%args> right before C<# VALIDATE_ARG> or C<#
647             VALIDATE_ARGS> like below:
648              
649             $SPEC{foo} = {
650             args => {
651             arg1 => { schema => ..., req=>1 },
652             arg2 => { schema => ... },
653             },
654             ...
655             };
656             sub foo {
657             my %args = @_; # VALIDATE_ARGS
658             }
659              
660             The schemas will be retrieved from the Rinci metadata (C<$SPEC{foo}> above).
661             This means, subroutines in your built distribution will do argument validation.
662              
663             =item * L<Perinci::Sub::Wrapper>
664              
665             This module is part of the L<Perinci> family. What the module does is basically
666             wrap your subroutine with a wrapper code that can include validation code (among
667             others). This is a convenient way to add argument validation to an existing
668             subroutine/code.
669              
670             =back
671              
672             =head1 ENVIRONMENT
673              
674             =head2 LOG_SAH_VALIDATOR_CODE => bool
675              
676             If set to true, will log (using L<Log::ger>, at the trace level) the validator
677             code being generated. See L</"SYNOPSIS"> or L</"FAQ"> for example on how to see
678             this log message.
679              
680             =head1 HOMEPAGE
681              
682             Please visit the project's homepage at L<https://metacpan.org/release/Data-Sah>.
683              
684             =head1 SOURCE
685              
686             Source repository is at L<https://github.com/perlancar/perl-Data-Sah>.
687              
688             =head1 SEE ALSO
689              
690             L<Data::Sah::Tiny>, L<Params::Sah>
691              
692             =head3 Other interpreted validators
693              
694             L<Params::Validate> is very fast, although minimal. L<Data::Rx>, L<Kwalify>,
695             L<Data::Verifier>, L<Data::Validator>, L<JSON::Schema>, L<Validation::Class>.
696              
697             For Moo/Mouse/Moose stuffs: L<Moose> type system, L<MooseX::Params::Validate>,
698             among others.
699              
700             Form-oriented: L<Data::FormValidator>, L<FormValidator::Lite>, among others.
701              
702             =head3 Other compiled validators
703              
704             L<Type::Tiny>
705              
706             L<Params::ValidationCompiler>
707              
708             =head1 AUTHOR
709              
710             perlancar <perlancar@cpan.org>
711              
712             =head1 CONTRIBUTORS
713              
714             =for stopwords Michal Sedlák Steven Haryanto Szymon Nieznański
715              
716             =over 4
717              
718             =item *
719              
720             Michal Sedlák <sedlakmichal@gmail.com>
721              
722             =item *
723              
724             Steven Haryanto <stevenharyanto@gmail.com>
725              
726             =item *
727              
728             Steven Haryanto <steven@masterweb.net>
729              
730             =item *
731              
732             Szymon Nieznański <s.nez@member.fsf.org>
733              
734             =back
735              
736             =head1 CONTRIBUTING
737              
738              
739             To contribute, you can send patches by email/via RT, or send pull requests on
740             GitHub.
741              
742             Most of the time, you don't need to build the distribution yourself. You can
743             simply modify the code, then test via:
744              
745             % prove -l
746              
747             If you want to build the distribution (e.g. to try to install it locally on your
748             system), you can install L<Dist::Zilla>,
749             L<Dist::Zilla::PluginBundle::Author::PERLANCAR>,
750             L<Pod::Weaver::PluginBundle::Author::PERLANCAR>, and sometimes one or two other
751             Dist::Zilla- and/or Pod::Weaver plugins. Any additional steps required beyond
752             that are considered a bug and can be reported to me.
753              
754             =head1 COPYRIGHT AND LICENSE
755              
756             This software is copyright (c) 2022, 2021, 2020, 2019, 2018, 2017, 2016, 2015, 2014, 2013, 2012 by perlancar <perlancar@cpan.org>.
757              
758             This is free software; you can redistribute it and/or modify it under
759             the same terms as the Perl 5 programming language system itself.
760              
761             =head1 BUGS
762              
763             Please report any bugs or feature requests on the bugtracker website L<https://rt.cpan.org/Public/Dist/Display.html?Name=Data-Sah>
764              
765             When submitting a bug or request, please include a test-file or a
766             patch to an existing test-file that illustrates the bug or desired
767             feature.
768              
769             =cut