├── AAAI-KDF-2020-Paper.pdf ├── AAAI-KDF-2020-Poster.pdf ├── AAAI-KDF-2020-Slides.pdf ├── Analysis.m ├── Licence.md ├── README.md ├── The-Automated-Venture-Capitalist-Supplementary-Materials.pdf ├── data ├── individualData.csv └── teamData.csv ├── figures ├── calibrationPlot_success.png ├── costPlot_nomination.png └── costPlot_success.png ├── functions ├── HosmerLemeshowTest.m ├── InterX.m ├── calibrate.m ├── findoptimalclassifcationthreshold.m └── trainClassifier.m ├── modelCoeff ├── nominationModel_coeff.csv ├── nominationModel_perf.csv ├── successModel_coeff.csv └── successModel_perf.csv └── results ├── comparison.csv └── results.csv /AAAI-KDF-2020-Paper.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghamut/automated-venture-capitalist/45f7c130ced7f846b878e85e0d239d35324536d7/AAAI-KDF-2020-Paper.pdf -------------------------------------------------------------------------------- /AAAI-KDF-2020-Poster.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghamut/automated-venture-capitalist/45f7c130ced7f846b878e85e0d239d35324536d7/AAAI-KDF-2020-Poster.pdf -------------------------------------------------------------------------------- /AAAI-KDF-2020-Slides.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghamut/automated-venture-capitalist/45f7c130ced7f846b878e85e0d239d35324536d7/AAAI-KDF-2020-Slides.pdf -------------------------------------------------------------------------------- /Analysis.m: -------------------------------------------------------------------------------- 1 | % Script contains modeling approach presented in AAAI-KDF '20 Paper 2 | % 'The Automated Venture Capitalist: Data and Methods to Predict the 3 | % Fate of Startup Ventures' 4 | % 5 | % Run the script from start to end to format data, perform 6 | % leave-one-team-out cross-validation modeling, extract logistic 7 | % regression model coefficients, and conduct a cost analysis. 8 | % 9 | % Input: 'data/individualData.csv' 10 | % Output: 'results/results.csv' 11 | % 'modelCoeff/*csv' 12 | % 'figures/*png' 13 | % 'results/comparison.csv' 14 | % 15 | % 16 | % Authors: Mohammad M. Ghassemi and Tuka Alhanai 17 | % Created: August 2017 18 | % Last Updated: January 7th 2020 19 | 20 | %% Initialization 21 | clear all; 22 | clc; 23 | 24 | % suppress some warnings to keep console clean 25 | warning('off','stats:glmfit:IterationLimit') 26 | 27 | % contains functions called by this script 28 | addpath('functions/') 29 | 30 | %% 0. Load in the 100K Data 31 | disp(' ... 1. Loading data: individualData.txt') 32 | % the dataset is a [people x features] matrix. We collected a 33 | % total of 613 individuals in the original dataset, but here we 34 | % have removed 266 inviduals with incomplete data, reducing the 35 | % total number of teams from 192, to 177. 36 | 37 | % To make the analysis easier, we rename the data table as 'd'. 38 | d = readtable('data/individualData.csv'); 39 | 40 | %% 1. Select 17 features 41 | disp(' ... 2. Computing features') 42 | % We can select up to 17 features becasue we need to keep the data 43 | % to features ratio at 100-1. 44 | s=[]; s.team_id = d.team_id; 45 | 46 | % INDIVIDUAL-LEVEL FEATURES: 8 in total %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 47 | % Harvard or MIT? 48 | s.is_mit = d.is_mit; 49 | s.is_harvard = d.is_harvard; 50 | 51 | % How long since graduation? 52 | s.years_since_graduation = d.years_since_graduation; 53 | 54 | % Do you Hold an MBA and/or a PhD? 55 | s.is_mba =1*(d.is_mba); 56 | s.is_phd = d.is_phd; 57 | 58 | % Did you study Math Science or Engineering? 59 | s.is_stem =1*( d.major_engineer | d.major_scientist | d.major_mathecon); 60 | 61 | % How many of the the 7 soft skills do you have? 62 | s.skills_soft =(d.skill_class_creative + d.skill_class_design + d.skill_class_communication + d.skill_class_legal + d.skill_class_management + d.skill_class_relationship + d.skill_class_education)/7; 63 | 64 | % Do people consistently think you look competent? 65 | s.pic_rating_total_3 = d.pic_rating_total == 3; 66 | 67 | % TEAM LEVEL FEATURES: 8 Total %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 68 | 69 | % Do at least 40% of people prefer your idea and team name to random other ideas? 70 | s.idea_rating_2min = d.votes_threshold_2min/10; 71 | 72 | % Was the idea something that would be used everyday, periodically, or rarely. 73 | s.topic_inessential = d.topic_food | d.topic_goods | d.topic_impact | d.topic_entertainment ; 74 | s.topic_essentialperiodic = d.topic_employment | d.topic_information | d.topic_children | d.topic_social | d.topic_health | d.topic_transportation ; 75 | s.topic_essentialdaily = d.topic_finance | d.topic_energy ; 76 | 77 | % How much did the the author directly engage with the reader? 78 | s.wd_speaking_to_you = d.wd_you./max(d.POS_period,1); 79 | s.wd_questions = d.wd_questions./max(d.POS_period,1); 80 | 81 | % Were they descriptive? 82 | s.wd_adjectives = d.wd_adjective./max(d.POS_period,1); 83 | 84 | % Were they positive? 85 | s.positive_sentiment = d.sent_Verypositive./max(d.POS_period,1) + d.sent_Positive./max(d.POS_period,1); 86 | 87 | % OUTCOMES: nominated, finalist, and who was successful %%%%%%%%%%%%%%%%%%% 88 | s.nomination = d.nomination; 89 | s.success = d.success; 90 | s.finalist = d.finalist; 91 | 92 | s = struct2table(s); 93 | d = s; 94 | 95 | %% 2. Condense features into the team-level. 96 | disp(' ... 3. Condensing features into team-level') 97 | % we will take an average of the features available within 98 | % each of the team variables. 99 | 100 | %get the unique teams. 101 | t = []; 102 | team_ids = unique(d.team_id); 103 | for i = 1:length(team_ids) 104 | %collect all the people that are members of this team. 105 | this_team_id = team_ids(i); 106 | these_members = find(d.team_id == this_team_id); 107 | 108 | %If there is more than one member on the team. 109 | if length(these_members) > 1 110 | t = [t; mean(d{these_members,:})]; 111 | else 112 | t = [t; d{these_members,:}]; 113 | end 114 | end 115 | t = array2table(t,'VariableNames',d.Properties.VariableNames); 116 | clearvars -except d t 117 | 118 | % write to file 119 | filename = 'data/teamData.csv'; 120 | fprintf(' ---> saving file %s \n', filename) 121 | writetable(t,filename,'Delimiter',','); 122 | 123 | % read from file 124 | fprintf(' <--- reading file %s \n', filename) 125 | t = readtable(filename); 126 | t.team_id = []; 127 | 128 | %% 3. Univariate Correlations Analysis (Individual Level) 129 | disp(' ... 4a. Performing uni-variate correlation analysis (individual-level)') 130 | % In this first portion of the analysis, We computed 131 | % The univariate correlations and p-values between the 132 | % selected features and the following three outcomes: 133 | % (1) nomination, (2) success and, (3) finalist status. 134 | 135 | %A. Identify the location of the outcomes in the data matrix. 136 | success_index = find(ismember(d.Properties.VariableNames,'success')); 137 | nominated_index = find(ismember(d.Properties.VariableNames,'nomination')); 138 | finalist_index = find(ismember(d.Properties.VariableNames,'finalist')); 139 | 140 | %B. compute correlations: 141 | [corr_mat p_mat] = corr(d{:,:}); 142 | 143 | %C. generate the correlation table. 144 | corrtab.feature_name = d.Properties.VariableNames'; 145 | corrtab.success_corr = corr_mat(:,success_index); 146 | corrtab.success_p = p_mat(:,success_index); 147 | corrtab.nominated_corr = corr_mat(:,nominated_index); 148 | corrtab.nominated_p = p_mat(:,nominated_index); 149 | corrtab.finalist_corr = corr_mat(:,finalist_index); 150 | corrtab.finalist_p = p_mat(:,finalist_index); 151 | 152 | %D. OUTPUT: 153 | corrtab_individual = struct2table(corrtab); 154 | clearvars -except d t corrtab_individual 155 | 156 | %% 3. Univariate Correlations Analysis (Team Level) 157 | disp(' ... 4b. Performing uni-variate correlation analysis (team-level)') 158 | % In this first portion of the analysis, We computed 159 | % The univariate correlations and p-values between the 160 | % selected features and the following three outcomes: 161 | % (1) nomination, (2) success and, (3) finalist status. 162 | 163 | %A. Identify the location of the outcomes in the data matrix. 164 | success_index = find(ismember(t.Properties.VariableNames,'success')); 165 | nominated_index = find(ismember(t.Properties.VariableNames,'nomination')); 166 | finalist_index = find(ismember(t.Properties.VariableNames,'finalist')); 167 | 168 | %B. compute correlations: 169 | [corr_mat p_mat] = corr(t{:,:}); 170 | 171 | %C. generate the correlation table. 172 | corrtab.feature_name = t.Properties.VariableNames'; 173 | 174 | corrtab.success_corr = corr_mat(:,success_index); 175 | corrtab.success_p = p_mat(:,success_index); 176 | corrtab.nominated_corr = corr_mat(:,nominated_index); 177 | corrtab.nominated_p = p_mat(:,nominated_index); 178 | corrtab.finalist_corr = corr_mat(:,finalist_index); 179 | corrtab.finalist_p = p_mat(:,finalist_index); 180 | 181 | %D. OUTPUT: 182 | corrtab_team = struct2table(corrtab); 183 | clearvars -except d t corrtab_individual corrtab_team 184 | 185 | %% 4. TRAIN THE LOGISTIC REGRESSION MODELS 186 | disp(' ... 5. Training logistic regression models') 187 | % We computed 10 Logistic Regression Models including the various types 188 | % of features to see how much information in contained in the features. 189 | 190 | t.success_and_nomination = t.success & t.nomination; 191 | num_folds = height(t); 192 | 193 | for i = 1:num_folds 194 | 195 | if rem(i,10) == 0 196 | fprintf(' ... processing fold: %d/%d \n',i, num_folds) 197 | end 198 | 199 | test = t(i,:); 200 | train = t; train(i,:) = []; 201 | 202 | formula_succ = ['success ~' ... 203 | 'is_mit' ... 204 | '+ is_harvard' ... 205 | '+ years_since_graduation'... 206 | '+ is_mba' ... 207 | '+ is_phd' ... 208 | '+ is_stem' ... 209 | '+ skills_soft' ... 210 | '+ pic_rating_total_3' ... 211 | '+ idea_rating_2min' ... 212 | '+ topic_inessential' ... 213 | '+ topic_essentialperiodic' ... 214 | '+ topic_essentialdaily' ... 215 | '+ wd_speaking_to_you' ... 216 | '+ wd_questions' ... 217 | '+ wd_adjectives' ... 218 | '+ positive_sentiment']; 219 | 220 | formula_succ_given_nom = ['success ~' ... 221 | 'is_mit' ... 222 | '+ is_harvard' ... 223 | '+ years_since_graduation'... 224 | '+ is_mba' ... 225 | '+ is_phd' ... 226 | '+ is_stem' ... 227 | '+ skills_soft' ... 228 | '+ pic_rating_total_3' ... 229 | '+ idea_rating_2min' ... 230 | '+ topic_inessential' ... 231 | '+ topic_essentialperiodic' ... 232 | '+ topic_essentialdaily' ... 233 | '+ wd_speaking_to_you' ... 234 | '+ wd_questions' ... 235 | '+ wd_adjectives' ... 236 | '+ positive_sentiment' ... 237 | '+ nomination']; 238 | 239 | formula_nom = ['nomination ~' ... 240 | 'is_mit' ... 241 | '+ is_harvard' ... 242 | '+ years_since_graduation'... 243 | '+ is_mba' ... 244 | '+ is_phd' ... 245 | '+ is_stem' ... 246 | '+ skills_soft' ... 247 | '+ pic_rating_total_3' ... 248 | '+ idea_rating_2min' ... 249 | '+ topic_inessential' ... 250 | '+ topic_essentialperiodic' ... 251 | '+ topic_essentialdaily' ... 252 | '+ wd_speaking_to_you' ... 253 | '+ wd_questions' ... 254 | '+ wd_adjectives' ... 255 | '+ positive_sentiment']; 256 | 257 | formula_nom_onlymember = ['nomination ~' ... 258 | 'is_mit' ... 259 | '+ is_harvard' ... 260 | '+ years_since_graduation'... 261 | '+ is_mba' ... 262 | '+ is_phd' ... 263 | '+ is_stem' ... 264 | '+ skills_soft' ... 265 | '+ pic_rating_total_3']; 266 | 267 | formula_nom_onlyidea = ['nomination ~ idea_rating_2min' ... 268 | '+ topic_inessential' ... 269 | '+ topic_essentialperiodic' ... 270 | '+ topic_essentialdaily' ... 271 | '+ wd_speaking_to_you' ... 272 | '+ wd_questions' ... 273 | '+ wd_adjectives' ... 274 | '+ positive_sentiment']; 275 | 276 | formula_nom_onlycrowd = ['nomination ~ pic_rating_total_3' ... 277 | '+ idea_rating_2min']; 278 | 279 | formula_succ_and_nom = ['success_and_nomination ~' ... 280 | 'is_mit' ... 281 | '+ is_harvard' ... 282 | '+ years_since_graduation'... 283 | '+ is_mba' ... 284 | '+ is_phd' ... 285 | '+ is_stem' ... 286 | '+ skills_soft' ... 287 | '+ pic_rating_total_3' ... 288 | '+ idea_rating_2min' ... 289 | '+ topic_inessential' ... 290 | '+ topic_essentialperiodic' ... 291 | '+ topic_essentialdaily' ... 292 | '+ wd_speaking_to_you' ... 293 | '+ wd_questions' ... 294 | '+ wd_adjectives' ... 295 | '+ positive_sentiment']; 296 | 297 | formula_succ_onlymember = ['success ~' ... 298 | 'is_mit' ... 299 | '+ is_harvard' ... 300 | '+ years_since_graduation'... 301 | '+ is_mba' ... 302 | '+ is_phd' ... 303 | '+ is_stem' ... 304 | '+ skills_soft' ... 305 | '+ pic_rating_total_3']; 306 | 307 | 308 | formula_succ_onlyidea = ['success ~' ... 309 | 'idea_rating_2min' ... 310 | '+ topic_inessential' ... 311 | '+ topic_essentialperiodic' ... 312 | '+ topic_essentialdaily' ... 313 | '+ wd_speaking_to_you' ... 314 | '+ wd_questions' ... 315 | '+ wd_adjectives' ... 316 | '+ positive_sentiment']; 317 | 318 | formula_succ_onlycrowd = ['success ~' ... 319 | ' pic_rating_total_3' ... 320 | '+ idea_rating_2min']; 321 | 322 | formula_succ_onlynomination = ['success ~' ... 323 | ' nomination']; 324 | 325 | 326 | mdl_succ = fitglm(train,formula_succ,'distr','binomial'); 327 | predicted_succ(i) = predict(mdl_succ,test); 328 | 329 | mdl_succ_given_nom = fitglm(train,formula_succ_given_nom,'distr','binomial'); 330 | predicted_succ_given_nom(i) = predict(mdl_succ_given_nom,test); 331 | 332 | mdl_nom_onlyidea = fitglm(train,formula_nom_onlyidea,'distr','binomial'); 333 | predicted_nom_onlyidea(i) = predict(mdl_nom_onlyidea,test); 334 | 335 | mdl_nom = fitglm(train,formula_nom,'distr','binomial'); 336 | predicted_nom(i) = predict(mdl_nom,test); 337 | 338 | mdl_nom_onlymember = fitglm(train,formula_nom_onlymember,'distr','binomial'); 339 | predicted_nom_onlymember(i) = predict(mdl_nom_onlymember,test); 340 | 341 | mdl_nom_onlycrowd = fitglm(train,formula_nom_onlycrowd,'distr','binomial'); 342 | predicted_nom_onlycrowd(i) = predict(mdl_nom_onlycrowd,test); 343 | 344 | mdl_succ_and_nom = fitglm(train,formula_succ_and_nom,'distr','binomial'); 345 | predicted_succ_and_nom(i) = predict(mdl_succ_and_nom,test); 346 | 347 | mdl_succ_onlymember = fitglm(train,formula_succ_onlymember,'distr','binomial'); 348 | predicted_succ_onlymember(i) = predict(mdl_succ_onlymember,test); 349 | 350 | mdl_succ_onlyidea = fitglm(train,formula_succ_onlyidea,'distr','binomial'); 351 | predicted_succ_onlyidea(i) = predict(mdl_succ_onlyidea,test); 352 | 353 | mdl_succ_onlycrowd = fitglm(train,formula_succ_onlycrowd,'distr','binomial'); 354 | predicted_succ_onlycrowd(i) = predict(mdl_succ_onlycrowd,test); 355 | 356 | mdl_succ_onlynomination = fitglm(train,formula_succ_onlynomination,'distr','binomial'); 357 | predicted_succ_onlynomination(i) = predict(mdl_succ_onlynomination,test); 358 | 359 | end 360 | 361 | %% 5. EVALUATE THE LOGISTIC REGRESSION MODELS 362 | % calculaing model performance with calibrate() function 363 | disp(' ... 6. Evaluating logistic regression models') 364 | 365 | clear results; 366 | 367 | %Compute the Area Under Reciever Operator Curve 368 | r = calibrate(t.success,predicted_succ_given_nom,1,10); 369 | r = [r calibrate(t.success,predicted_succ,1,10)]; 370 | r = [r calibrate(t.success,predicted_succ_onlyidea,1,10)]; 371 | r = [r calibrate(t.success,predicted_succ_onlymember,1,10)]; 372 | r = [r calibrate(t.success,predicted_succ_onlycrowd,1,10)]; 373 | r = [r calibrate(t.nomination,predicted_nom,1,10)]; 374 | r = [r calibrate(t.nomination,predicted_nom_onlyidea,1,10)]; 375 | r = [r calibrate(t.nomination,predicted_nom_onlymember,1,10)]; 376 | r = [r calibrate(t.nomination,predicted_nom_onlycrowd,1,10)]; 377 | r = [r calibrate(t.success_and_nomination,predicted_succ_and_nom,1,10)]; 378 | 379 | results = struct2table(r); 380 | %Save the names of the models 381 | 382 | results.model_type = {'Logistic_Regression', 383 | 'Logistic_Regression', 384 | 'Logistic_Regression', 385 | 'Logistic_Regression', 386 | 'Logistic_Regression', 387 | 'Logistic_Regression', 388 | 'Logistic_Regression', 389 | 'Logistic_Regression', 390 | 'Logistic_Regression', 391 | 'Logistic_Regression'}; 392 | 393 | results.model_name = {'Success_given_idea_member_crowd_nomination', 394 | 'Success_given_idea_member_crowd', 395 | 'Success_given_idea_crowd', 396 | 'Success_given_member_crowd', 397 | 'Success_given_crowd', 398 | 'Nomination_given_idea_member_crowd', 399 | 'Nomiantion_given_idea_crowd', 400 | 'Nomination_given_member_crowd', 401 | 'Nomination_given_crowd' 402 | 'NominationandSuccess_given_idea_member_crowd'}; 403 | 404 | clearvars -except d t corrtab_individual corrtab_team results predicted_succ 405 | 406 | %% 6. TRY OTHER CLASSIFICATION LEARNER MODELS 407 | disp(' ... 7. Modeling with other classification learners') 408 | 409 | y = t.success; 410 | x = [t.is_mit'; 411 | t.is_harvard'; 412 | t.years_since_graduation'; 413 | t.is_mba'; 414 | t.is_phd'; 415 | t.is_stem'; 416 | t.skills_soft'; 417 | t.pic_rating_total_3'; 418 | t.idea_rating_2min'; 419 | t.topic_inessential'; 420 | t.topic_essentialperiodic'; 421 | t.topic_essentialdaily'; 422 | t.wd_speaking_to_you'; 423 | t.wd_questions'; 424 | t.wd_adjectives'; 425 | t.positive_sentiment'; 426 | t.nomination']'; 427 | 428 | variable_names = {'is_mit', ... 429 | 'is_harvard', ... 430 | 'years_since_graduation',... 431 | 'is_mba' ,... 432 | 'is_phd', ... 433 | 'is_stem', ... 434 | 'skills_soft', ... 435 | 'pic_rating_total_3', ... 436 | 'idea_rating_2min', ... 437 | 'topic_inessential', ... 438 | 'topic_essentialperiodic', ... 439 | 'topic_essentialdaily', ... 440 | 'wd_speaking_to_you', ... 441 | 'wd_questions', ... 442 | 'wd_adjectives', ... 443 | 'positive_sentiment', ... 444 | 'nomination'}'; 445 | 446 | mdls = {'linearSVM', 'cubicSVM', 'quadraticSVM', 'mediumGaussianSVM', ... 447 | 'coarseGaussianSVM', 'linearDisc', 'quadraticDisc', 'simpleTree', ... 448 | 'mediumTree', 'complexTree', 'RUSBoostedTrees', 'ensembleBoostedTrees', ... 449 | 'ensembleBaggedTrees', 'fineKNN', 'mediumKNN', 'coarseKNN', 'cosineKNN',... 450 | 'cubicKNN', 'weightedKNN', 'logReg'}; 451 | 452 | % Train all the models... 453 | for j = 1:length(mdls) 454 | clear predictions; 455 | 456 | fprintf(' ... Modeling: %s \n', mdls{j} ) 457 | 458 | num_folds = height(t); 459 | for i = 1:num_folds 460 | 461 | if rem(i,50) == 0 462 | fprintf(' ... processing fold: %d/%d \n',i,num_folds) 463 | end 464 | 465 | x_test = x(i,:); 466 | y_test = y(i); 467 | x_train = x; y_train = y; 468 | x_train(i,:) = []; y_train(i,:) = []; 469 | 470 | [~, score(i,:), predictions(i)]=... 471 | trainClassifier(x_train,y_train,x_test,y_test,variable_names,mdls{j}); 472 | end 473 | r = calibrate(t.success,score(:,2),1,10); 474 | r.model_type = mdls{j}; 475 | r.model_name ='Success_given_idea_member'; 476 | r = struct2table(r); 477 | results = [results; r]; 478 | end 479 | 480 | clearvars -except d t corrtab_individual corrtab_team results predicted_succ 481 | 482 | % saving results to file 483 | filename = 'results/results.csv'; 484 | fprintf(' ---> saving file %s \n', filename); 485 | writetable(results,filename,'Delimiter',',') 486 | 487 | %% 7. Save the best performing Nomination and Success Models 488 | % - Output in 'modelCoeff/*csv' corresponds to Table 3 in paper. 489 | % - Cost Analysis corresponds to figure 2 in paper. 490 | disp(' ... 8. Calculating model coefficients and cost thresholds of best performing models') 491 | 492 | formula = ['success ~' ... 493 | 'is_mit' ... 494 | '+ is_harvard' ... 495 | '+ is_mba'... 496 | '+ years_since_graduation'... 497 | '+ is_phd' ... 498 | '+ is_stem' ... 499 | '+ skills_soft' ... 500 | '+ pic_rating_total_3' ... 501 | '+ idea_rating_2min' ... 502 | '+ topic_inessential' ... 503 | '+ topic_essentialperiodic' ... 504 | '+ topic_essentialdaily' ... 505 | '+ wd_speaking_to_you' ... 506 | '+ wd_questions' ... 507 | '+ wd_adjectives' ... 508 | '+ positive_sentiment']; 509 | 510 | mdl_succ = fitglm(t,formula,'distr','binomial'); 511 | prediction = predict(mdl_succ,t); 512 | t.best_success_predictions = prediction; 513 | Success_Model_performance = calibrate(t.success,prediction,1,10); 514 | odds_ratio_95ci = exp(mdl_succ.coefCI); 515 | mdl_succ = mdl_succ.Coefficients; 516 | mdl_succ.OddsRatio = exp(mdl_succ.Estimate); 517 | mdl_succ.OddsRatio_95CI = odds_ratio_95ci; 518 | Success_Model = mdl_succ; 519 | 520 | close 521 | false_positive = [0.1 0.5 1 10]; 522 | for i = 1:4 523 | fixed_cost = 0; 524 | cost(1,1) = 0; % Cost of True Negatives 525 | cost(2,1) = 0; % Cost of False Negatives 526 | cost(1,2) = false_positive(i); % Cost of False Positives 527 | cost(2,2) = -1; % Cost of True Positives 528 | [X,Y,optimal_threshold_success,optimal_cost] = findoptimalclassifcationthreshold(cost,fixed_cost,prediction,t.success); 529 | end 530 | 531 | xlim([0 0.8]) 532 | ylim([-50 100]) 533 | title('Figure 2: Cost Plot of Survival') 534 | xlabel('Optimal Classification Threshold') 535 | ylabel('Cost') 536 | 537 | filename = 'figures/costPlot_success.png'; 538 | fprintf(' ---> saving file %s \n', filename); 539 | saveas(gcf, filename); 540 | 541 | filename = 'modelCoeff/successModel_coeff.csv'; 542 | fprintf(' ---> saving file %s \n', filename) 543 | writetable(Success_Model,filename,'Delimiter',',','WriteRowNames',true) 544 | 545 | filename = 'modelCoeff/successModel_perf.csv'; 546 | fprintf(' ---> saving file %s \n', filename) 547 | writetable(struct2table(Success_Model_performance),filename,'Delimiter',',') 548 | 549 | formula = ['nomination ~' ... 550 | 'is_mit' ... 551 | '+ is_harvard' ... 552 | '+ is_mba'... 553 | '+ years_since_graduation'... 554 | '+ is_phd' ... 555 | '+ is_stem' ... 556 | '+ skills_soft' ... 557 | '+ pic_rating_total_3' ... 558 | '+ idea_rating_2min' ... 559 | '+ topic_inessential' ... 560 | '+ topic_essentialperiodic' ... 561 | '+ topic_essentialdaily' ... 562 | '+ wd_speaking_to_you' ... 563 | '+ wd_questions' ... 564 | '+ wd_adjectives' ... 565 | '+ positive_sentiment']; 566 | 567 | % model nomination outcome on all data 568 | mdl_nom = fitglm(t,formula,'distr','binomial'); 569 | prediction = predict(mdl_nom,t); 570 | t.best_nomination_predictions = prediction; 571 | Nomination_Model_performance = calibrate(t.nomination,prediction,1,10); 572 | odds_ratio_95ci = exp(mdl_nom.coefCI); 573 | mdl_nom = mdl_nom.Coefficients; 574 | mdl_nom.OddsRatio = exp(mdl_nom.Estimate); 575 | mdl_nom.OddsRatio_95CI = odds_ratio_95ci; 576 | Nomination_Model = mdl_nom; 577 | 578 | close 579 | false_positive = [0.1 0.5 1 10]; 580 | for i = 1:4 581 | fixed_cost = 0; 582 | cost(1,1) = 0; % Cost of True Negatives 583 | cost(2,1) = 0; % Cost of False Negatives 584 | cost(1,2) = false_positive(i); % Cost of False Positives 585 | cost(2,2) = -1; % Cost of True Positives 586 | [~,~,optimal_threshold_nomination,optimal_cost] = findoptimalclassifcationthreshold(cost,fixed_cost,prediction,t.nomination); 587 | end 588 | 589 | xlim([0 1]) 590 | ylim([-50 100]) 591 | title('Cost Plot of Nomination') 592 | xlabel('Optimal Classification Threshold') 593 | ylabel('Cost') 594 | 595 | filename = 'figures/costPlot_nomination.png'; 596 | fprintf(' ---> saving file %s \n', filename); 597 | saveas(gcf,filename); 598 | 599 | filename = 'modelCoeff/nominationModel_coeff.csv'; 600 | fprintf(' ---> saving file %s \n', filename); 601 | writetable(Nomination_Model,filename,'Delimiter',',','WriteRowNames',true) 602 | 603 | filename = 'modelCoeff/nominationModel_perf.csv'; 604 | fprintf(' ---> saving file %s \n', filename); 605 | writetable(struct2table(Nomination_Model_performance),filename,'Delimiter',',') 606 | 607 | clearvars -except d t corrtab_individual corrtab_team results Nomination_Model Success_Model Nomination_Model_performance Success_Model_performance optimal_threshold_nomination optimal_threshold_success predicted_succ 608 | 609 | %% PLOT THE % CORRECT BY THE PREDICTED PROBABILITIES: 610 | % This visualizes model calibration (corrsponds to figure 1 in paper) 611 | disp(' ... 9. Plotting calibration') 612 | 613 | close 614 | 615 | for i = 0:9 616 | rows = find(t.best_success_predictions > i/10 & t.best_success_predictions < i+.0999); 617 | actual_probability(i+1) = nanmean(t.success(rows)); 618 | end 619 | 620 | 621 | plot(0.1:.1:1,actual_probability,'o'); 622 | hold on 623 | plot([0 1],[0 1]); 624 | title('Figure 1: Calibration Plot') 625 | xlabel('Predicted Probability of Survival (%)') 626 | ylabel('True Probability of Survival (%)') 627 | 628 | filename = 'figures/calibrationPlot_success.png'; 629 | fprintf(' ---> saving file %s \n', filename); 630 | saveas(gcf,filename) 631 | 632 | %% Comparing Corwd vs. Judges vs. Algorithm Performance 633 | % This analysis is displayed in Table 2 in the paper. 634 | disp(' ... 10. Comparing performance between crowd, judges, and models') 635 | 636 | % how many successful teams are in the data? -- 0.2768 637 | comp.info = 'how many successful teams are in the data?'; 638 | comp.val = sum(t.success) / length(t.success); 639 | compList = [comp]; 640 | 641 | % how many nominated teams succeeded according to MIT100K judges? -- 0.3889 642 | comp.info = 'how many nominated teams succeeded according to MIT100K judges?'; 643 | comp.val = sum(t.nomination & t.success) / sum(t.nomination); 644 | compList = [compList; comp]; 645 | 646 | % how many nominated teams succeeded according to MIT100K judges, excluding finalists? -- 0.3617 647 | comp.info = 'how many nominated teams succeeded according to MIT100K judges, excluding finalists?'; 648 | comp.val = sum(t.nomination & t.success & ~t.finalist) / sum(t.nomination & ~t.finalist); 649 | compList = [compList; comp]; 650 | 651 | % how many successful teams did the mit100k judges catch? -- 0.4286 652 | comp.info = 'how many successful teams did the mit100k judges catch?'; 653 | comp.val = sum(t.nomination & t.success) / sum(t.success); 654 | compList = [compList; comp]; 655 | 656 | % how many successful teams did the mit100k judges catch, excluding finalists? -- 0.3778 657 | comp.info = 'how many successful teams did the mit100k judges catch, excluding finalists?'; 658 | comp.val = sum(t.nomination & t.success & ~t.finalist) / sum(t.success & ~t.finalist); 659 | compList = [compList; comp]; 660 | 661 | % how many unnominated teams became successful? -- 0.2276 662 | comp.info = 'how many unnominated teams became successful?'; 663 | comp.val = sum(~t.nomination & t.success) / sum(~t.nomination); 664 | compList = [compList; comp]; 665 | 666 | % how many successful teams did the algorithm find? -- 0.4490 667 | [m,ind] = sort(predicted_succ,2,'descend'); 668 | comp.info = 'how many successful teams did the algorithm find?'; 669 | comp.val = sum(t.success(ind(1:sum(t.nomination)))) / sum(t.success); 670 | compList = [compList; comp]; 671 | 672 | % how many successful teams did the algorithm find if only nominated 54? -- 0.4074 673 | comp.info = 'how many successful teams did the algorithm find if only nominated 54?'; 674 | comp.val = sum(t.success(ind(1:sum(t.nomination)))) / sum(t.nomination); 675 | compList = [compList; comp]; 676 | 677 | % toss out finalists, how many successful teams did the algorithm find? (given success) -- 0.4222 678 | comp.info = 'toss out finalists, how many successful teams did the algorithm find? (given success)' 679 | comp.val = sum(t.success(ind(1:sum(t.nomination))) & ~t.finalist(ind(1:sum(t.nomination))) ) / sum(t.success & ~t.finalist); 680 | compList = [compList; comp]; 681 | 682 | % toss out finalists, how many successful teams did the algorithm find? (given nomination) -- 0.4043 683 | comp.info = 'toss out finalists, how many successful teams did the algorithm find? (given nomination)'; 684 | comp.val = sum(t.success(ind(1:sum(t.nomination))) & ~t.finalist(ind(1:sum(t.nomination))) ) / sum(t.nomination & ~t.finalist); 685 | compList = [compList; comp]; 686 | 687 | % CROWD IDEA RATING AS AUC. 688 | calibrate(t.nomination,t.idea_rating_2min ,1,10); % AUC: 0.6096 689 | calibrate(t.finalist,t.idea_rating_2min ,1,10); % 0.5718 690 | calibrate(t.success,t.idea_rating_2min ,1,10); % 0.5908 691 | 692 | % rank 693 | [m,ind] = sort(t.idea_rating_2min,1,'descend'); 694 | 695 | % how many successful teams did the algorithm find? - 0.3673 696 | comp.info = 'how many successful teams did the algorithm find?'; 697 | comp.val = sum(t.success(ind(1:sum(t.nomination)))) / sum(t.success); 698 | compList = [compList; comp]; 699 | 700 | % how many successful teams did the algorithm find if only nominated 54? -- 0.3333 701 | comp.info = 'how many successful teams did the algorithm find if only nominated 54?'; 702 | comp.val = sum(t.success(ind(1:sum(t.nomination)))) / sum(t.nomination); 703 | compList = [compList; comp]; 704 | 705 | % toss out finalists, how many successful teams did the algorithm find? (given success) -- 0.3556 706 | comp.info = 'toss out finalists, how many successful teams did the algorithm find? (given success)'; 707 | comp.val = sum(t.success(ind(1:sum(t.nomination))) & ~t.finalist(ind(1:sum(t.nomination))) ) / sum(t.success & ~t.finalist); 708 | compList = [compList; comp]; 709 | 710 | % toss out finalists, how many successful teams did the algorithm find? (given nomination) -- 0.3404 711 | comp.info = 'toss out finalists, how many successful teams did the algorithm find? (given nomination)'; 712 | comp.val = sum(t.success(ind(1:sum(t.nomination))) & ~t.finalist(ind(1:sum(t.nomination))) ) / sum(t.nomination & ~t.finalist); 713 | compList = [compList; comp]; 714 | 715 | filename = 'results/comparison.csv'; 716 | fprintf(' ---> saving file %s \n', filename); 717 | writetable(struct2table(compList),filename,'Delimiter',',') -------------------------------------------------------------------------------- /Licence.md: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Mohammad M. Ghassemi and Tuka Alhanai 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # The Automated Venture Capitalist 2 | Investing is hard because there are an incredible number of factors that influence to the success or failure of ventures. Some of these factors are within a venture's control, and others are not. This respository contains an AI method, tool, and dataset to understand these factors and the complex interactions between them so that organizations and members of the general public can do a better job assessing risk and identifying investment opportunities. 3 | 4 | ### In this Repository 5 | Specifically, this repository supports information presented in the AAAI-KDF'20 paper "[The Automated Venture Capitalist: Data and Methods to Predict the Fate of Startup Ventures](https://ghassemi.xyz/static/documents/Ghassemi_AAAI_The-automated-venture-capitalist_2020.pdf)". 6 | 7 | - `Analysis.m` is a Matlab script that contains the analyses presented in the paper. 8 | 9 | - `data/` 10 | - `individualData.csv` contains information at the individual-level. 11 | - `teamData.csv` contains information at the team-level (which was featurized from the individual-level data). 12 | 13 | - `results/` 14 | - `results.csv` contains all model performance with leave-one-team-out cross-validation (Tables S4 & S5 in paper). 15 | - `comparison.csv` contains classification performance comparisons between crowd, judges, and models (Table 2 in paper). 16 | 17 | - `modelCoeff/` 18 | - `{nomination,success}Model_coeff.csv` contains logistic regression model coefficients (Table 3 in paper). 19 | - `{nomination,success}Model_perf.csv`contains logistic regression model performance when trained on all data. 20 | 21 | - `figures/` 22 | - `calibrationPlot_success.png` shows model calibration (Figure 1 in paper). 23 | - `costPlot_{nomination,success}.png` shows gain/loss of model predictions (Figure 2 in paper). 24 | 25 | - `functions/` contains supporting scripts. 26 | 27 | 28 | 29 | ### Citation 30 | ``` 31 | @inproceedings{gham2020autovc, 32 | title={The Automated Venture Capitalist: 33 | Data and Methods to Predict the Fate of Startup Ventures}, 34 | author={Ghassemi, Mohammad M. and Song, Christopher and Alhanai, Tuka}, 35 | booktitle={KDF at the Thirty-Fourth AAAI Conference on Artificial Intelligence}, 36 | year={2020} 37 | } 38 | ``` 39 | 40 | ### Contact 41 | If you find this interesting and would like to learn more, please contact [research@ghamut.com](research@ghamut.com) 42 | -------------------------------------------------------------------------------- /The-Automated-Venture-Capitalist-Supplementary-Materials.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghamut/automated-venture-capitalist/45f7c130ced7f846b878e85e0d239d35324536d7/The-Automated-Venture-Capitalist-Supplementary-Materials.pdf -------------------------------------------------------------------------------- /data/individualData.csv: -------------------------------------------------------------------------------- 1 | is_mit,is_harvard,is_masters,is_phd,is_mba,major_social_scientist,major_scientist,major_engineer,major_business,major_law,major_mathecon,major_art,major_medical,team_id,count_skills,count_honors,count_publications,count_education,years_since_graduation,title_entrepeneur,title_manager,title_consultant,title_engineer,title_student,title_artist,title_assistant,title_other,title_scientist,title_salesman,currently_employed,total_months_experience,prestegious_scipub,skill_class_algorithms,skill_class_communication,skill_class_creative,skill_class_design,skill_class_education,skill_class_engineering,skill_class_finance,skill_class_hard_science,skill_class_hardware,skill_class_health,skill_class_legal,skill_class_life_science,skill_class_management,skill_class_military,skill_class_relationship,skill_class_research,skill_class_software,pic_rating_total,sex,is_md,is_jd,wd_adjective,wd_consumable,wd_delivery,wd_do,wd_education,wd_health,wd_location,wd_market,wd_negatives,wd_our,wd_questions,wd_social,wd_solution,wd_technology,wd_them,wd_time,wd_you,votes_raw,votes_threshold_1min,votes_threshold_2min,votes_threshold_3min,nomination,success,finalist,member_count,topic_children,topic_education,topic_employment,topic_energy,topic_entertainment,topic_finance,topic_food,topic_goods,topic_health,topic_impact,topic_information,topic_social,topic_transportation,POS_dollar,POS_period,pos_adjective,pos_verb,pos_noun,pos_personal_pronoun,pos_adverb,pos_quotes,sent_Verynegative,sent_Negative,sent_Neutral,sent_Positive,sent_Verypositive,language_specific 2 | 0,0,1,1,0,0,0,1,0,0,0,0,0,1,21,0,1,2,8,0,1,0,0,0,0,0,0,1,0,1,85,0,0,0,0,0,0,1,0,1,0,0,1,0,0,0,0,0,1,1,1,0,0,2,0,1,7,0,0,0,2,0,1,0,1,1,0,1,1,0,29,10,9,6,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,6,7,1,20,4,1,0,0,2,1,3,0,5 3 | 1,0,0,0,1,0,0,0,1,0,0,0,0,2,27,0,0,3,0,0,1,1,0,1,0,0,0,0,0,1,13,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,4,2,0,0,0,0,1,0,1,0,1,0,0,0,28,9,8,7,0,0,0,3,0,1,0,0,0,0,0,0,0,0,0,0,0,0,3,7,4,18,3,2,0,0,4,0,0,0,1 4 | 1,0,1,1,0,0,0,1,0,0,0,0,0,2,14,0,1,5,4,1,1,0,1,0,0,0,0,0,0,1,13,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,1,0,0,4,2,0,0,0,0,1,0,1,0,1,0,0,0,28,9,8,7,0,0,0,3,0,1,0,0,0,0,0,0,0,0,0,0,0,0,3,7,4,18,3,2,0,0,4,0,0,0,1 5 | 1,0,0,0,1,0,0,0,1,0,0,0,0,2,19,3,0,5,0,1,0,0,0,0,0,0,0,1,0,0,21,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,1,0,0,1,1,0,0,1,0,0,4,2,0,0,0,0,1,0,1,0,1,0,0,0,28,9,8,7,0,0,0,3,0,1,0,0,0,0,0,0,0,0,0,0,0,0,3,7,4,18,3,2,0,0,4,0,0,0,1 6 | 1,0,0,0,1,0,0,0,1,0,0,0,0,3,15,4,0,4,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,0,0,0,1,0,0,3,0,0,1,0,0,1,0,0,0,0,1,0,0,26,10,9,5,0,0,0,3,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,9,5,13,2,0,0,0,2,0,2,0,0 7 | 1,0,0,0,1,0,0,0,1,0,0,0,0,3,14,0,0,3,9,0,1,0,0,1,0,0,0,0,0,1,40,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,1,0,0,1,0,0,3,0,0,1,0,0,1,0,0,0,0,1,0,0,26,10,9,5,0,0,0,3,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,9,5,13,2,0,0,0,2,0,2,0,0 8 | 1,0,0,0,1,0,0,0,1,0,0,0,0,3,25,0,0,3,0,0,1,0,0,1,0,0,0,0,0,1,35,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,1,0,0,3,0,0,1,0,0,1,0,0,0,0,1,0,0,26,10,9,5,0,0,0,3,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,9,5,13,2,0,0,0,2,0,2,0,0 9 | 1,0,0,1,1,0,0,0,1,0,0,0,0,4,17,0,3,4,-1,0,1,1,0,1,0,0,0,0,0,1,53,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,3,0,0,0,0,0,1,0,0,0,2,0,0,0,22,10,6,3,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,0,2,7,3,6,1,0,0,0,1,0,1,0,1 10 | 1,0,0,0,1,0,0,0,1,0,0,0,0,5,1,0,0,2,1,0,0,0,0,1,0,0,0,1,0,1,35,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,2,0,0,2,0,0,1,1,0,1,0,1,1,1,0,0,0,18,10,7,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,8,0,14,1,2,0,0,3,0,0,0,2 11 | 1,0,1,0,0,0,0,1,0,0,0,0,0,5,20,0,0,2,-1,1,0,1,1,0,0,0,0,0,0,1,39,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1,0,1,0,0,2,0,0,2,0,0,1,1,0,1,0,1,1,1,0,0,0,18,10,7,1,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,8,0,14,1,2,0,0,3,0,0,0,2 12 | 1,0,0,0,0,0,0,0,0,0,1,0,0,6,8,0,0,2,-1,0,0,0,0,1,0,0,0,0,0,1,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,4,0,0,3,0,0,0,0,0,0,1,3,0,1,2,0,0,26,9,9,5,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,1,0,0,4,16,7,8,1,0,0,0,3,1,0,0,1 13 | 1,0,0,0,0,0,0,1,0,0,0,0,0,6,14,0,0,1,0,0,0,0,1,1,0,0,0,0,0,0,9,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,4,0,0,3,0,0,0,0,0,0,1,3,0,1,2,0,0,26,9,9,5,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,1,0,0,4,16,7,8,1,0,0,0,3,1,0,0,1 14 | 1,0,0,0,0,0,0,1,0,0,0,0,0,7,19,10,0,2,-2,0,0,0,1,1,0,0,0,0,0,0,8,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,1,1,0,0,0,0,0,1,0,2,2,1,1,0,0,26,10,9,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,2,7,11,1,4,0,0,1,0,1,0,0 15 | 0,0,0,0,0,0,0,0,1,0,0,0,0,7,10,0,0,2,-1,1,0,0,0,0,0,0,0,0,0,1,6,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,0,1,1,0,0,0,0,0,1,0,2,2,1,1,0,0,26,10,9,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,2,7,11,1,4,0,0,1,0,1,0,0 16 | 0,0,1,1,0,0,0,1,0,0,0,0,0,8,28,3,0,2,1,1,0,0,1,0,0,0,0,1,0,1,55,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,20,10,7,3,0,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,1,1,3,2,1,13,2,1,0,0,2,1,0,0,5 17 | 0,0,1,0,0,0,0,1,0,0,0,0,0,8,49,2,0,2,1,0,0,0,0,1,0,0,1,1,0,0,19,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,20,10,7,3,0,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,1,1,3,2,1,13,2,1,0,0,2,1,0,0,5 18 | 1,0,0,0,1,0,0,0,1,0,0,0,0,8,9,14,2,3,-1,0,1,0,0,1,0,0,0,0,0,1,44,0,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,20,10,7,3,0,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,1,1,3,2,1,13,2,1,0,0,2,1,0,0,5 19 | 0,1,1,1,0,0,0,0,0,0,0,0,1,8,20,0,0,2,1,0,0,0,0,1,0,0,0,1,0,1,57,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,0,0,0,0,1,0,0,0,2,0,0,0,0,0,0,0,0,0,20,10,7,3,0,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,1,1,3,2,1,13,2,1,0,0,2,1,0,0,5 20 | 1,0,1,1,0,0,0,1,0,0,0,0,0,9,30,0,0,3,8,1,0,0,0,0,0,0,0,1,0,1,194,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,1,0,0,0,36,10,10,9,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,5,9,5,8,3,5,0,0,3,1,1,0,0 21 | 0,0,1,0,0,1,0,0,0,0,0,0,0,9,16,3,0,2,1,1,0,0,0,0,0,1,0,0,0,1,10,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,1,0,0,0,36,10,10,9,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,5,9,5,8,3,5,0,0,3,1,1,0,0 22 | 1,0,0,0,0,0,0,0,1,0,0,0,0,10,7,18,0,2,-2,1,0,0,0,1,0,0,0,0,0,0,23,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,1,1,0,0,3,0,0,1,1,0,0,2,1,0,0,0,0,1,0,0,1,21,10,7,4,0,0,0,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,4,5,10,17,0,4,0,0,2,1,1,0,3 23 | 1,0,1,0,0,1,0,0,0,0,0,0,0,11,1,0,0,4,0,0,1,0,1,0,1,0,0,0,0,1,34,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,1,0,0,3,0,0,3,0,0,1,0,0,0,0,0,1,0,0,0,0,36,10,10,10,1,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,2,14,3,14,0,1,1,0,2,0,0,0,2 24 | 1,0,0,0,1,0,0,0,1,0,0,0,0,12,12,4,0,3,-1,1,0,1,1,0,0,0,0,0,0,1,51,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,2,1,0,0,2,0,0,1,0,1,0,1,0,0,1,1,0,1,1,0,0,28,10,9,6,0,1,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,4,9,2,13,1,2,1,0,0,0,4,0,0 25 | 0,1,0,0,1,0,0,0,1,0,0,0,0,12,13,5,0,3,0,0,1,0,1,1,0,0,0,0,0,1,21,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,2,0,0,0,2,0,0,1,0,1,0,1,0,0,1,1,0,1,1,0,0,28,10,9,6,0,1,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,4,9,2,13,1,2,1,0,0,0,4,0,0 26 | 1,0,0,0,1,0,0,0,1,0,0,0,0,13,18,0,0,3,0,1,0,0,0,0,0,0,1,0,0,1,115,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,1,0,3,0,0,4,0,1,0,1,1,0,0,1,1,0,0,0,0,29,10,9,7,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,1,7,6,2,15,3,2,0,0,3,0,4,0,5 27 | 1,0,0,1,1,0,0,0,1,0,0,0,0,14,24,1,0,4,0,0,1,0,0,1,0,0,0,0,0,1,70,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,2,0,0,1,0,1,1,1,1,0,0,5,0,0,3,0,0,24,10,8,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,6,11,3,8,1,4,0,0,2,2,2,0,5 28 | 1,0,0,0,1,0,0,0,1,0,0,0,0,14,42,0,0,3,0,1,1,0,1,0,0,0,0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1,0,0,2,0,0,1,0,1,1,1,1,0,0,5,0,0,3,0,0,24,10,8,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,6,11,3,8,1,4,0,0,2,2,2,0,5 29 | 1,0,0,0,1,0,0,0,1,0,0,0,0,14,19,0,0,2,13,0,1,0,0,1,0,0,0,0,0,1,47,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,2,0,0,1,0,1,1,1,1,0,0,5,0,0,3,0,0,24,10,8,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,1,0,0,6,11,3,8,1,4,0,0,2,2,2,0,5 30 | 0,0,0,0,1,0,0,0,0,0,1,0,0,15,10,0,0,3,0,0,1,0,0,0,0,0,0,0,0,0,25,0,0,1,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,2,0,0,0,2,0,1,3,1,0,1,0,0,0,0,1,0,0,0,0,0,24,10,8,4,0,0,0,3,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,15,1,0,0,0,1,0,1,0,0 31 | 1,0,0,0,1,0,0,0,1,0,0,0,0,15,21,0,4,7,0,0,1,0,0,1,0,0,0,0,0,1,55,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,1,0,0,2,0,1,3,1,0,1,0,0,0,0,1,0,0,0,0,0,24,10,8,4,0,0,0,3,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,15,1,0,0,0,1,0,1,0,0 32 | 0,0,0,0,0,0,0,1,0,0,0,0,0,16,16,0,2,1,0,0,1,0,1,0,0,0,0,0,0,1,16,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,2,0,0,0,0,2,0,3,0,1,0,0,1,1,1,1,0,27,10,9,7,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,8,1,16,0,1,0,0,3,0,0,0,9 33 | 0,0,0,0,0,0,0,1,0,0,0,0,0,16,14,0,0,2,-1,0,0,0,0,1,1,0,0,1,0,1,26,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,2,1,0,0,2,0,0,0,0,2,0,3,0,1,0,0,1,1,1,1,0,27,10,9,7,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,8,1,16,0,1,0,0,3,0,0,0,9 34 | 0,0,0,0,0,0,0,1,0,0,0,0,0,16,32,5,0,2,-1,1,0,0,1,1,0,0,0,0,0,1,31,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,2,1,0,0,2,0,0,0,0,2,0,3,0,1,0,0,1,1,1,1,0,27,10,9,7,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,8,1,16,0,1,0,0,3,0,0,0,9 35 | 1,0,0,0,1,0,0,0,1,0,0,0,0,17,12,0,2,4,0,0,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,2,0,1,0,0,0,2,1,1,0,25,10,8,6,1,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,12,6,14,1,2,0,0,3,0,0,0,6 36 | 1,0,1,1,0,0,1,0,0,0,0,0,0,17,22,0,0,3,8,1,0,0,0,0,0,0,0,1,0,1,76,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,2,1,0,0,0,0,0,1,0,0,0,2,0,1,0,0,0,2,1,1,0,25,10,8,6,1,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,12,6,14,1,2,0,0,3,0,0,0,6 37 | 0,1,0,0,1,0,0,0,1,0,0,0,0,18,10,0,0,2,0,0,1,1,0,1,0,0,0,0,0,1,35,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,0,0,0,0,0,0,2,0,0,0,1,0,1,0,1,1,1,0,0,0,21,9,8,4,0,0,0,5,0,0,0,0,0,1,0,0,0,0,0,0,0,0,3,11,1,20,1,2,0,0,3,0,0,0,1 38 | 1,0,0,0,1,0,0,0,1,0,0,0,0,19,33,0,0,2,1,0,1,0,1,0,0,0,0,0,1,1,146,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,3,0,1,2,0,0,0,0,0,0,0,0,1,0,0,0,0,30,10,9,7,0,1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,6,3,10,0,0,0,0,1,0,1,0,2 39 | 1,0,0,0,1,0,0,0,1,0,0,0,0,19,26,0,0,2,1,0,1,0,0,0,0,0,0,0,1,1,166,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0,3,0,1,2,0,0,0,0,0,0,0,0,1,0,0,0,0,30,10,9,7,0,1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,2,6,3,10,0,0,0,0,1,0,1,0,2 40 | 1,0,0,0,0,0,0,1,0,0,0,0,0,20,7,3,0,1,-2,0,0,0,0,1,0,0,0,0,0,1,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,5,0,0,2,1,1,0,0,2,0,1,1,0,0,22,9,8,3,0,0,0,5,0,0,0,0,0,1,0,0,0,0,0,0,0,1,4,7,3,8,1,4,0,0,2,1,1,0,6 41 | 1,0,1,0,0,0,0,1,0,0,0,0,0,20,36,0,0,3,0,0,0,0,1,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,5,0,0,2,1,1,0,0,2,0,1,1,0,0,22,9,8,3,0,0,0,5,0,0,0,0,0,1,0,0,0,0,0,0,0,1,4,7,3,8,1,4,0,0,2,1,1,0,6 42 | 1,0,0,0,0,0,0,1,0,0,0,0,0,20,25,0,0,3,-1,0,0,0,0,1,0,0,0,0,0,0,8,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,5,0,0,2,1,1,0,0,2,0,1,1,0,0,22,9,8,3,0,0,0,5,0,0,0,0,0,1,0,0,0,0,0,0,0,1,4,7,3,8,1,4,0,0,2,1,1,0,6 43 | 1,0,0,0,1,0,0,0,1,0,0,0,0,21,25,0,0,2,-1,0,0,1,1,0,0,0,0,0,1,0,34,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,1,0,0,3,0,0,0,0,0,0,3,0,1,0,0,0,0,1,0,0,26,10,8,6,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,1,4,9,4,12,1,2,0,0,4,1,0,0,15 44 | 1,0,1,0,0,0,0,1,0,0,0,0,0,22,10,0,1,2,0,0,0,0,1,1,0,0,0,1,0,1,47,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,1,0,0,3,0,0,2,1,0,0,2,0,0,2,1,2,1,1,1,0,31,10,10,7,0,1,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,1,3,7,2,16,0,2,0,0,2,0,1,0,5 45 | 0,1,0,0,1,0,0,0,1,0,0,0,0,22,24,0,0,2,0,0,0,0,0,1,0,0,0,1,0,1,39,0,0,1,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0,3,0,0,2,1,0,0,2,0,0,2,1,2,1,1,1,0,31,10,10,7,0,1,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,1,3,7,2,16,0,2,0,0,2,0,1,0,5 46 | 1,0,1,0,0,0,0,1,0,0,0,0,0,23,20,0,0,2,4,0,0,0,1,1,0,0,0,0,0,1,51,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,2,1,0,0,1,0,0,2,0,0,0,0,0,0,0,0,1,3,0,0,0,22,9,7,4,0,0,0,4,0,0,0,0,0,1,0,0,0,0,0,0,0,0,2,9,3,10,2,3,1,0,2,0,0,0,1 47 | 0,0,0,0,1,0,0,0,1,0,0,0,0,23,23,0,0,4,-1,0,0,0,1,0,0,0,0,0,0,0,24,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,2,0,0,0,0,0,0,0,0,1,3,0,0,0,22,9,7,4,0,0,0,4,0,0,0,0,0,1,0,0,0,0,0,0,0,0,2,9,3,10,2,3,1,0,2,0,0,0,1 48 | 1,0,0,0,1,0,0,0,1,0,0,0,0,23,37,1,0,7,0,0,1,0,0,1,0,0,0,0,0,1,50,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,1,0,0,2,0,0,0,0,0,0,0,0,1,3,0,0,0,22,9,7,4,0,0,0,4,0,0,0,0,0,1,0,0,0,0,0,0,0,0,2,9,3,10,2,3,1,0,2,0,0,0,1 49 | 0,0,0,0,1,0,0,0,1,0,0,0,0,23,50,0,0,3,-1,0,0,1,0,1,0,0,0,0,0,1,64,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,1,0,0,2,0,0,0,0,0,0,0,0,1,3,0,0,0,22,9,7,4,0,0,0,4,0,0,0,0,0,1,0,0,0,0,0,0,0,0,2,9,3,10,2,3,1,0,2,0,0,0,1 50 | 1,0,0,0,1,0,0,0,1,0,0,0,0,24,10,0,0,4,-1,1,0,0,0,1,1,0,0,0,0,1,69,0,0,0,1,1,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0,2,0,0,1,0,0,0,0,1,1,0,0,2,1,0,1,0,22,8,8,3,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,11,2,15,1,4,0,0,0,0,2,1,2 51 | 0,1,0,0,1,0,0,0,1,0,0,0,0,24,7,0,0,2,3,0,1,0,0,0,0,0,0,0,0,1,22,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,2,0,0,1,0,0,0,0,1,1,0,0,2,1,0,1,0,22,8,8,3,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,11,2,15,1,4,0,0,0,0,2,1,2 52 | 1,0,1,1,0,0,1,0,0,0,0,0,0,25,20,4,5,4,-1,0,0,0,0,1,0,0,0,0,0,1,68,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,1,0,0,3,0,0,1,0,0,0,2,0,0,0,0,0,1,0,0,0,23,9,8,3,1,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,5,13,0,25,0,1,0,0,3,0,2,0,0 53 | 1,0,0,0,1,0,0,0,1,0,0,0,0,25,12,4,0,3,-1,1,0,1,1,0,0,0,0,0,0,1,51,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,2,1,0,0,3,0,0,1,0,0,0,2,0,0,0,0,0,1,0,0,0,23,9,8,3,1,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,5,13,0,25,0,1,0,0,3,0,2,0,0 54 | 1,0,0,0,1,0,0,0,1,0,0,0,0,25,16,0,0,3,7,1,1,0,0,0,0,0,1,0,0,1,14,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,2,0,0,0,3,0,0,1,0,0,0,2,0,0,0,0,0,1,0,0,0,23,9,8,3,1,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,5,13,0,25,0,1,0,0,3,0,2,0,0 55 | 0,1,1,1,0,0,1,0,0,0,0,0,0,26,26,0,0,2,0,0,0,0,0,1,0,0,1,0,0,1,115,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,2,1,0,0,1,0,0,2,0,0,0,0,0,1,2,0,0,0,1,2,0,29,10,10,5,1,1,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,2,3,11,2,14,2,1,0,0,3,0,0,0,8 56 | 1,0,1,1,0,0,1,0,0,0,0,0,0,26,15,0,2,3,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,2,1,1,0,1,0,0,2,0,0,0,0,0,1,2,0,0,0,1,2,0,29,10,10,5,1,1,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,2,3,11,2,14,2,1,0,0,3,0,0,0,8 57 | 1,0,0,0,1,0,0,0,1,0,0,0,0,27,37,0,0,3,-1,0,0,0,0,1,0,0,0,0,0,0,9,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,1,0,0,1,0,0,1,0,2,0,1,0,1,1,2,1,3,0,0,0,28,10,9,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,3,4,4,12,2,4,0,0,3,0,0,0,1 58 | 1,0,0,0,1,0,0,0,1,0,0,0,0,27,22,0,0,3,-1,0,1,0,0,0,0,0,0,0,0,1,120,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,0,0,0,1,0,0,1,0,2,0,1,0,1,1,2,1,3,0,0,0,28,10,9,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,3,4,4,12,2,4,0,0,3,0,0,0,1 59 | 1,0,0,0,1,0,0,0,1,0,0,0,0,27,24,0,1,5,-1,0,0,0,1,1,0,0,0,0,0,1,64,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,1,0,2,0,1,0,1,1,2,1,3,0,0,0,28,10,9,8,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,3,4,4,12,2,4,0,0,3,0,0,0,1 60 | 1,0,1,1,0,0,0,1,0,0,0,0,0,28,28,0,0,4,-1,1,0,0,0,1,0,0,0,0,0,1,144,0,0,0,0,1,0,1,0,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0,0,1,2,0,0,0,0,0,1,0,2,0,4,1,0,1,19,9,5,4,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,4,4,4,17,1,2,0,0,2,0,2,0,0 61 | 1,0,0,0,1,0,0,0,1,0,0,0,0,29,30,0,0,3,0,1,0,0,1,1,0,0,0,0,0,1,37,0,0,1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,1,0,0,1,0,0,0,0,0,0,2,2,0,1,2,0,2,0,0,1,23,9,7,4,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,5,4,9,19,2,5,0,0,2,1,2,0,0 62 | 1,0,0,0,0,0,0,1,0,0,0,0,0,30,15,0,1,2,-3,0,0,0,1,1,1,0,0,0,0,1,3,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,1,0,0,2,0,0,3,0,0,1,1,1,0,0,1,2,2,1,0,1,32,10,10,8,1,0,0,5,0,0,0,1,0,0,0,0,0,0,0,0,0,0,3,9,3,19,3,1,0,0,0,0,3,0,2 63 | 0,0,1,1,0,0,0,1,0,0,0,0,0,30,48,35,0,4,1,1,0,0,0,0,0,0,0,1,0,1,84,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,1,1,0,0,2,0,0,3,0,0,1,1,1,0,0,1,2,2,1,0,1,32,10,10,8,1,0,0,5,0,0,0,1,0,0,0,0,0,0,0,0,0,0,3,9,3,19,3,1,0,0,0,0,3,0,2 64 | 0,1,1,0,0,1,0,0,0,0,0,0,0,32,25,0,1,2,0,1,0,0,0,1,0,0,0,0,0,1,20,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0,1,0,0,0,3,2,0,0,22,10,6,3,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,9,2,13,2,0,0,0,2,0,1,0,0 65 | 1,0,0,0,1,0,0,0,1,0,0,0,0,32,14,2,0,2,0,0,1,1,0,1,0,0,0,0,0,0,50,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,2,0,0,0,0,0,0,0,0,1,0,0,0,3,2,0,0,22,10,6,3,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,9,2,13,2,0,0,0,2,0,1,0,0 66 | 1,0,0,0,1,0,0,0,1,0,0,0,0,32,1,0,0,2,1,0,0,0,0,1,0,0,0,1,0,1,35,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,2,0,0,0,0,0,0,0,0,1,0,0,0,3,2,0,0,22,10,6,3,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,9,2,13,2,0,0,0,2,0,1,0,0 67 | 1,0,0,0,1,0,0,0,1,0,0,0,0,33,18,0,0,3,0,0,0,1,0,1,0,0,0,0,0,0,29,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,2,0,0,0,0,0,0,2,1,0,1,0,0,1,0,0,0,20,8,6,4,0,0,0,4,0,0,0,0,0,1,0,0,0,0,0,0,0,0,4,9,2,14,0,4,0,0,3,0,1,0,2 68 | 0,0,0,0,0,0,0,1,0,0,0,0,0,33,32,3,0,2,11,1,1,0,0,0,0,0,0,0,1,1,30,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,2,1,0,1,0,0,1,0,0,0,20,8,6,4,0,0,0,4,0,0,0,0,0,1,0,0,0,0,0,0,0,0,4,9,2,14,0,4,0,0,3,0,1,0,2 69 | 0,0,0,0,0,0,0,1,0,0,0,0,0,33,8,0,0,3,1,0,1,0,1,0,0,0,0,0,0,1,80,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,2,0,0,0,0,0,0,2,1,0,1,0,0,1,0,0,0,20,8,6,4,0,0,0,4,0,0,0,0,0,1,0,0,0,0,0,0,0,0,4,9,2,14,0,4,0,0,3,0,1,0,2 70 | 1,0,0,0,1,0,0,0,1,0,0,0,0,34,17,0,1,3,0,1,0,1,1,0,0,0,0,0,0,1,54,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,0,0,0,3,0,0,3,0,0,0,2,0,2,0,3,1,0,0,0,0,31,10,9,7,1,1,0,2,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,5,4,21,0,6,0,0,3,0,0,0,8 71 | 1,0,0,0,1,0,0,0,1,0,0,0,0,35,15,1,0,2,1,1,0,0,0,1,0,0,0,1,0,1,26,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,2,1,0,0,1,0,0,0,0,0,1,2,1,0,0,1,0,2,0,0,0,18,9,7,2,1,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,0,4,6,6,19,1,6,0,0,4,0,0,0,0 72 | 0,0,0,1,1,0,0,1,0,0,0,0,0,35,9,0,0,5,5,1,0,0,1,0,0,0,0,1,0,1,58,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,1,1,0,0,1,0,0,0,0,0,1,2,1,0,0,1,0,2,0,0,0,18,9,7,2,1,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,0,4,6,6,19,1,6,0,0,4,0,0,0,0 73 | 1,0,0,0,0,0,0,1,0,0,0,0,0,36,14,0,0,1,0,0,0,1,0,1,0,0,1,0,0,1,42,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,0,0,1,0,1,1,0,0,1,0,0,1,1,0,2,0,34,10,10,9,1,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,8,3,17,0,4,0,0,3,0,0,0,5 74 | 1,0,0,0,0,0,0,1,0,0,0,0,0,36,23,0,0,2,0,0,0,0,0,1,0,0,0,0,0,1,21,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,2,0,0,1,0,1,1,0,0,1,0,0,1,1,0,2,0,34,10,10,9,1,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,8,3,17,0,4,0,0,3,0,0,0,5 75 | 1,0,1,1,0,0,0,1,0,0,0,0,0,36,20,0,1,2,3,0,0,0,0,0,0,0,0,1,0,1,37,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,1,0,0,2,0,0,1,0,1,1,0,0,1,0,0,1,1,0,2,0,34,10,10,9,1,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,8,3,17,0,4,0,0,3,0,0,0,5 76 | 1,0,0,0,1,0,0,0,1,0,0,0,0,37,18,0,0,3,-1,1,0,1,1,0,0,0,0,0,0,1,5,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,0,1,0,0,0,1,0,1,0,1,0,2,0,0,0,33,10,10,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,4,11,1,13,2,0,0,0,3,0,1,0,4 77 | 1,0,0,0,0,1,0,0,0,0,0,0,0,37,11,0,0,3,5,1,0,0,1,1,0,0,0,0,0,0,35,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,1,0,0,0,1,0,1,0,1,0,2,0,0,0,33,10,10,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,4,11,1,13,2,0,0,0,3,0,1,0,4 78 | 1,0,0,0,1,0,0,0,1,0,0,0,0,37,26,1,0,2,-1,1,1,1,0,0,0,0,0,0,0,0,13,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,1,0,1,0,1,0,2,0,0,0,33,10,10,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,4,11,1,13,2,0,0,0,3,0,1,0,4 79 | 1,0,0,0,1,0,0,0,1,0,0,0,0,37,14,0,0,2,-1,1,0,0,1,1,0,0,0,0,0,1,11,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,0,1,0,0,0,1,0,1,0,1,0,2,0,0,0,33,10,10,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,4,11,1,13,2,0,0,0,3,0,1,0,4 80 | 0,0,0,0,1,0,0,0,1,0,0,0,0,38,11,7,0,5,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,3,0,0,1,0,0,0,1,1,1,0,0,0,1,0,1,0,33,10,10,8,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,3,11,3,11,0,2,0,0,2,0,1,0,5 81 | 1,0,0,0,1,0,0,0,1,0,0,0,0,39,16,0,0,3,7,1,1,0,0,0,0,0,1,0,0,1,14,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,2,0,0,0,1,0,0,2,1,0,0,0,1,0,0,0,0,1,1,0,0,22,9,7,4,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,2,7,3,19,0,2,0,0,2,0,1,0,0 82 | 1,0,0,0,1,0,0,0,1,0,0,0,0,39,15,0,0,2,0,0,0,1,1,1,0,0,0,0,0,1,80,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,2,1,0,0,0,1,0,0,0,0,1,1,0,0,22,9,7,4,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,2,7,3,19,0,2,0,0,2,0,1,0,0 83 | 1,0,0,0,1,0,0,0,1,0,0,0,0,40,9,1,0,2,-1,0,1,0,0,1,0,0,0,0,0,1,43,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,1,0,0,5,0,0,0,0,0,0,1,0,2,0,0,1,1,0,0,0,30,10,9,6,1,0,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,1,3,11,4,19,2,2,0,0,0,0,3,0,3 84 | 1,0,0,0,1,0,0,0,1,0,0,0,0,41,11,0,0,2,0,1,0,0,1,1,0,0,0,0,0,1,98,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,2,1,0,0,2,0,0,1,0,1,0,0,1,1,1,0,1,1,0,1,0,23,10,7,5,0,0,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,5,3,1,4,1,4,0,0,2,1,2,0,1 85 | 0,0,1,0,0,1,0,0,0,0,0,0,0,41,18,0,0,3,5,0,1,0,0,0,0,0,1,0,0,1,6,0,0,1,0,1,0,0,0,0,0,0,1,0,0,0,0,1,0,0,1,0,0,2,0,0,1,0,1,0,0,1,1,1,0,1,1,0,1,0,23,10,7,5,0,0,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,5,3,1,4,1,4,0,0,2,1,2,0,1 86 | 0,0,1,0,0,1,0,0,0,0,0,0,0,41,7,0,0,3,3,0,1,0,0,0,0,0,0,0,0,1,4,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,2,0,0,1,0,1,0,0,1,1,1,0,1,1,0,1,0,23,10,7,5,0,0,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,5,3,1,4,1,4,0,0,2,1,2,0,1 87 | 1,0,0,0,0,0,0,1,0,0,0,0,0,42,38,16,0,3,-1,0,1,0,0,0,1,0,0,0,0,1,37,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,1,2,1,0,0,4,0,0,4,0,0,0,4,1,0,2,3,1,3,1,0,0,23,9,7,5,1,1,0,4,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,4,5,8,2,0,0,0,2,0,1,0,2 88 | 0,1,0,0,1,0,0,0,0,0,0,0,1,42,27,4,0,5,0,0,1,0,0,0,0,0,1,1,0,0,160,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,4,0,0,4,0,0,0,4,1,0,2,3,1,3,1,0,0,23,9,7,5,1,1,0,4,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,4,5,8,2,0,0,0,2,0,1,0,2 89 | 1,0,0,0,0,0,0,1,0,0,0,0,0,43,14,2,0,2,0,0,0,0,0,1,0,0,0,0,0,0,11,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,1,1,1,0,0,3,1,0,0,0,0,0,1,1,1,2,1,1,1,1,0,2,26,10,7,6,0,0,0,4,0,0,0,0,1,0,0,0,0,0,0,0,0,0,5,7,5,11,4,4,0,0,2,1,2,0,0 90 | 1,0,0,0,1,0,0,0,1,0,0,0,0,44,21,1,3,3,-1,1,1,0,0,0,0,1,0,0,0,1,90,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1,0,1,2,1,0,0,3,0,0,2,1,0,0,3,1,0,1,1,0,3,0,0,0,23,10,7,4,0,1,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,3,8,2,17,0,4,0,0,3,0,0,0,6 91 | 1,0,0,0,1,0,0,0,1,0,0,0,0,45,16,0,0,4,0,0,0,0,1,1,0,0,0,0,0,0,18,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,2,0,0,2,0,0,0,0,1,0,0,0,0,1,2,1,0,26,10,10,5,1,1,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,8,2,14,3,2,0,0,1,1,1,0,0 92 | 1,0,1,1,0,0,0,1,0,0,0,0,0,45,14,0,4,5,-2,0,0,0,0,1,0,0,1,1,0,1,27,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,1,0,0,2,0,0,2,0,0,0,0,1,0,0,0,0,1,2,1,0,26,10,10,5,1,1,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,8,2,14,3,2,0,0,1,1,1,0,0 93 | 0,1,1,1,0,0,0,1,0,0,0,0,0,45,41,0,5,5,3,0,0,0,0,1,0,0,0,1,0,1,76,0,1,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,2,0,0,2,0,0,0,0,1,0,0,0,0,1,2,1,0,26,10,10,5,1,1,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,8,2,14,3,2,0,0,1,1,1,0,0 94 | 0,0,1,1,0,0,0,0,0,0,0,0,1,45,10,0,0,3,1,0,0,0,0,1,0,0,0,1,0,1,61,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,2,1,0,0,2,0,0,2,0,0,0,0,1,0,0,0,0,1,2,1,0,26,10,10,5,1,1,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,8,2,14,3,2,0,0,1,1,1,0,0 95 | 1,0,0,0,1,0,0,0,1,0,0,0,0,46,23,8,5,5,-1,0,0,0,0,1,0,0,1,0,0,1,41,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,2,1,1,0,2,0,0,1,0,0,0,0,1,0,0,0,0,1,0,1,0,22,9,7,4,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,11,4,13,0,4,0,0,2,0,1,0,0 96 | 1,0,1,0,0,0,0,1,0,0,0,0,0,46,19,0,3,2,7,0,0,0,0,0,0,0,0,1,0,1,42,0,0,1,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,1,1,0,0,2,0,0,1,0,0,0,0,1,0,0,0,0,1,0,1,0,22,9,7,4,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,11,4,13,0,4,0,0,2,0,1,0,0 97 | 1,0,1,1,0,0,0,1,0,0,0,0,0,46,36,5,22,3,4,0,0,0,0,1,0,0,0,1,0,1,53,0,1,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,2,1,0,0,2,0,0,1,0,0,0,0,1,0,0,0,0,1,0,1,0,22,9,7,4,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,11,4,13,0,4,0,0,2,0,1,0,0 98 | 1,0,1,1,0,0,0,1,0,0,0,0,0,46,28,0,0,3,11,0,0,0,0,0,0,0,0,1,0,1,34,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,1,1,0,2,0,0,1,0,0,0,0,1,0,0,0,0,1,0,1,0,22,9,7,4,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,11,4,13,0,4,0,0,2,0,1,0,0 99 | 1,0,1,0,0,0,0,1,0,0,0,0,0,47,10,2,0,2,0,0,0,0,0,1,0,0,1,1,0,1,57,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,2,1,0,0,3,0,0,3,0,0,1,4,1,1,0,0,1,1,0,1,0,24,10,7,5,0,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,10,3,21,0,1,0,1,2,1,0,0,3 100 | 1,0,1,1,0,0,0,1,0,0,0,0,0,47,25,4,7,3,2,0,0,0,0,1,0,0,1,1,0,1,74,0,0,1,1,0,0,0,0,1,0,0,0,0,0,0,0,1,0,2,1,0,0,3,0,0,3,0,0,1,4,1,1,0,0,1,1,0,1,0,24,10,7,5,0,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,10,3,21,0,1,0,1,2,1,0,0,3 101 | 1,0,0,1,1,0,0,0,1,0,0,0,0,48,50,0,0,3,0,0,1,0,0,1,0,0,0,0,0,1,96,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,1,0,2,1,0,0,2,0,0,3,0,1,1,2,0,0,0,3,2,3,0,0,0,21,10,8,3,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,4,14,0,16,0,1,0,0,3,1,0,0,6 102 | 1,0,1,1,0,0,0,1,0,0,0,0,0,48,20,0,0,4,2,0,0,0,0,0,0,0,0,1,0,1,107,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,1,0,0,2,0,0,3,0,1,1,2,0,0,0,3,2,3,0,0,0,21,10,8,3,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,4,14,0,16,0,1,0,0,3,1,0,0,6 103 | 1,0,0,0,1,0,0,0,1,0,0,0,0,48,14,0,0,4,0,0,1,1,0,1,0,0,0,0,0,1,156,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,1,0,0,0,2,0,0,3,0,1,1,2,0,0,0,3,2,3,0,0,0,21,10,8,3,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,4,14,0,16,0,1,0,0,3,1,0,0,6 104 | 1,0,1,1,0,0,0,1,0,0,0,0,0,49,6,0,0,2,-1,0,0,0,0,0,0,0,0,1,0,0,30,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,3,1,0,0,1,0,0,3,0,0,0,1,0,1,2,2,0,3,3,0,0,23,8,8,5,0,1,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,4,8,4,10,3,1,0,0,2,0,2,0,0 105 | 1,0,1,1,0,0,0,1,0,0,0,0,0,49,31,9,10,3,-1,0,0,1,0,0,0,0,0,1,0,1,79,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,1,0,0,1,0,0,3,0,0,0,1,0,1,2,2,0,3,3,0,0,23,8,8,5,0,1,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,4,8,4,10,3,1,0,0,2,0,2,0,0 106 | 1,0,0,0,1,0,0,0,1,0,0,0,0,50,22,0,1,4,0,0,1,1,0,1,0,0,0,0,0,1,59,0,1,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,3,0,0,2,0,0,1,3,1,1,0,6,0,0,2,0,0,23,10,8,4,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,4,6,3,14,5,2,0,0,1,0,3,0,2 107 | 1,0,0,0,1,0,0,0,1,0,0,0,0,51,38,0,0,10,0,0,1,0,0,1,0,0,0,0,0,1,60,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,1,1,0,0,3,0,0,2,0,0,0,1,0,1,0,0,0,1,1,1,0,29,10,10,7,1,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,2,4,6,5,15,0,2,0,0,2,0,2,0,15 108 | 1,0,1,1,0,0,0,1,0,0,0,0,0,52,21,0,1,4,-2,1,0,0,0,0,0,0,1,1,0,1,58,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,1,1,0,0,0,0,0,1,0,2,0,2,0,1,0,0,0,2,0,0,0,29,10,9,7,1,1,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,1,4,10,0,14,0,1,0,0,4,0,0,0,8 109 | 0,1,1,1,0,0,0,0,0,0,0,0,1,52,20,0,8,2,3,0,0,0,0,0,0,0,0,1,1,1,119,1,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,1,0,2,0,2,0,1,0,0,0,2,0,0,0,29,10,9,7,1,1,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,1,4,10,0,14,0,1,0,0,4,0,0,0,8 110 | 1,0,0,0,1,0,0,0,1,0,0,0,0,53,21,0,4,7,0,0,1,0,0,1,0,0,0,0,0,1,55,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,1,0,0,2,0,0,1,0,0,0,0,0,1,0,1,0,1,0,0,1,25,9,9,5,0,0,0,5,0,0,0,1,0,0,0,0,0,0,0,0,0,0,3,6,6,17,7,2,0,0,4,0,0,0,1 111 | 1,0,1,0,0,1,0,0,0,0,0,0,0,54,21,0,0,2,0,0,0,0,1,1,0,0,0,1,0,1,29,0,1,0,0,0,0,0,0,1,0,0,1,0,1,0,0,0,0,11,0,0,0,1,0,0,1,0,0,1,3,1,1,0,0,0,1,0,0,0,18,10,6,2,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,1,4,5,3,23,0,4,0,0,4,0,0,0,5 112 | 1,0,0,0,1,0,0,0,1,0,0,0,0,54,9,0,0,2,-1,1,0,0,1,0,0,0,0,0,0,1,33,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,1,0,0,1,0,0,1,3,1,1,0,0,0,1,0,0,0,18,10,6,2,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,1,4,5,3,23,0,4,0,0,4,0,0,0,5 113 | 1,0,1,1,0,0,0,1,0,0,0,0,0,55,10,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,75,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,2,1,0,0,1,0,0,0,0,1,0,1,0,0,0,0,1,0,3,0,0,24,10,8,5,0,0,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,9,1,17,4,2,0,0,3,0,0,0,1 114 | 1,0,1,0,0,0,0,1,0,0,0,0,0,55,31,0,0,2,2,0,0,0,1,0,0,0,0,1,0,1,49,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,1,2,1,0,0,1,0,0,0,0,1,0,1,0,0,0,0,1,0,3,0,0,24,10,8,5,0,0,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,9,1,17,4,2,0,0,3,0,0,0,1 115 | 1,0,1,0,0,0,0,1,0,0,0,0,0,55,50,0,0,2,3,0,0,0,0,1,0,0,0,1,0,1,63,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,0,0,0,1,0,0,0,0,1,0,1,0,0,0,0,1,0,3,0,0,24,10,8,5,0,0,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,9,1,17,4,2,0,0,3,0,0,0,1 116 | 1,0,0,0,1,0,0,0,1,0,0,0,0,57,19,0,0,4,-1,0,0,1,0,1,0,1,0,0,0,1,98,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,2,1,0,0,3,0,0,2,2,0,0,1,0,0,0,1,0,0,0,1,0,32,10,9,7,1,1,0,5,0,0,0,0,0,1,0,0,0,0,0,0,0,1,2,6,6,28,1,2,0,0,3,0,0,0,4 117 | 1,0,0,0,1,0,0,0,1,0,0,0,0,57,37,2,0,5,-1,0,1,0,0,1,0,0,0,0,0,1,42,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,0,0,0,3,0,0,2,2,0,0,1,0,0,0,1,0,0,0,1,0,32,10,9,7,1,1,0,5,0,0,0,0,0,1,0,0,0,0,0,0,0,1,2,6,6,28,1,2,0,0,3,0,0,0,4 118 | 1,0,0,0,1,0,0,0,1,0,0,0,0,57,7,0,0,2,-1,0,0,0,1,0,0,0,0,0,0,0,38,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,1,0,0,3,0,0,2,2,0,0,1,0,0,0,1,0,0,0,1,0,32,10,9,7,1,1,0,5,0,0,0,0,0,1,0,0,0,0,0,0,0,1,2,6,6,28,1,2,0,0,3,0,0,0,4 119 | 1,0,0,0,1,0,0,0,1,0,0,0,0,57,8,0,0,3,-1,0,0,0,1,1,0,0,0,0,0,1,74,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,2,1,0,0,3,0,0,2,2,0,0,1,0,0,0,1,0,0,0,1,0,32,10,9,7,1,1,0,5,0,0,0,0,0,1,0,0,0,0,0,0,0,1,2,6,6,28,1,2,0,0,3,0,0,0,4 120 | 1,0,0,0,0,0,0,1,0,0,0,0,0,58,24,0,0,2,-1,1,0,0,1,1,0,0,0,0,0,1,39,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,1,1,0,0,2,0,1,2,1,0,0,0,0,0,0,4,1,1,1,0,1,25,9,9,6,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,1,0,0,5,12,3,11,3,4,0,0,3,2,0,0,1 121 | 1,0,1,1,0,0,1,0,0,0,0,0,0,59,12,6,1,2,-1,0,0,0,0,0,0,0,1,1,0,1,53,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,1,2,1,0,0,2,0,0,1,0,0,0,1,0,1,0,0,2,1,1,0,0,20,9,7,3,0,0,0,2,0,0,0,0,0,1,0,0,0,0,0,0,0,0,3,11,1,14,2,0,1,0,3,0,0,0,1 122 | 1,0,1,0,0,0,0,1,0,0,0,0,0,60,21,0,1,2,2,0,0,0,0,1,0,0,0,0,0,0,68,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,1,0,0,1,1,2,0,2,1,0,0,1,0,2,19,10,7,2,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,7,4,8,6,4,5,0,0,4,2,1,0,0 123 | 1,0,0,0,1,0,0,0,1,0,0,0,0,61,8,2,0,3,-1,1,1,1,0,0,0,0,0,0,0,0,60,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,5,0,0,2,0,0,0,2,0,0,0,0,1,0,2,0,0,17,9,3,2,0,0,0,4,0,0,0,0,0,1,0,0,0,0,0,0,0,1,6,5,2,23,4,2,0,0,5,0,1,0,6 124 | 1,0,0,0,1,0,0,0,1,0,0,0,0,61,14,0,0,3,-1,1,0,1,0,0,0,0,0,0,0,1,112,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,5,0,0,2,0,0,0,2,0,0,0,0,1,0,2,0,0,17,9,3,2,0,0,0,4,0,0,0,0,0,1,0,0,0,0,0,0,0,1,6,5,2,23,4,2,0,0,5,0,1,0,6 125 | 1,0,1,1,0,0,1,0,0,0,0,0,0,62,35,0,0,3,4,0,0,0,0,1,0,0,0,1,0,1,142,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,26,10,8,6,1,0,0,5,0,0,0,0,0,0,0,1,0,0,0,0,0,2,3,3,3,17,1,1,0,0,3,0,0,0,9 126 | 0,0,0,0,1,0,0,0,1,0,0,0,0,62,24,1,0,4,1,0,1,1,0,0,0,0,0,0,0,1,106,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,1,0,0,1,0,0,0,2,0,0,0,1,0,0,0,0,0,26,10,8,6,1,0,0,5,0,0,0,0,0,0,0,1,0,0,0,0,0,2,3,3,3,17,1,1,0,0,3,0,0,0,9 127 | 1,0,1,0,0,0,0,1,0,0,0,0,0,63,19,4,0,4,-1,1,1,0,0,1,0,0,0,0,0,1,12,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,4,0,2,3,0,0,0,0,0,0,1,1,1,0,0,0,2,24,10,6,6,1,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,5,5,4,21,5,5,0,0,4,0,1,0,2 128 | 1,0,0,0,0,0,1,0,0,0,0,0,0,63,20,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,15,0,1,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,1,1,0,0,0,4,0,2,3,0,0,0,0,0,0,1,1,1,0,0,0,2,24,10,6,6,1,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,5,5,4,21,5,5,0,0,4,0,1,0,2 129 | 0,0,0,0,1,0,0,0,1,0,0,0,0,64,32,0,0,3,2,1,0,1,1,0,0,0,0,0,0,1,17,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,3,1,0,0,2,0,0,3,0,0,0,3,0,1,0,1,1,1,0,0,0,17,9,6,2,0,0,0,3,0,0,0,0,0,0,1,0,0,0,0,0,0,1,6,8,3,13,3,3,0,0,1,1,4,0,6 130 | 1,0,0,0,1,1,0,0,0,0,0,0,0,66,10,3,0,6,0,0,0,0,0,0,0,0,0,0,1,0,53,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,0,0,0,1,0,0,0,1,0,1,2,0,1,0,1,0,1,1,0,0,22,10,7,4,0,0,0,3,0,0,0,0,1,0,0,0,0,0,0,0,0,1,4,8,3,15,1,1,0,0,2,0,2,0,3 131 | 1,0,0,0,1,0,0,0,1,0,0,0,0,67,13,0,0,2,0,0,1,1,0,1,0,0,0,0,0,1,42,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,2,0,0,2,0,0,0,3,0,1,0,0,1,3,0,1,0,28,10,9,5,1,1,0,3,0,0,0,0,0,0,0,0,1,0,0,0,0,1,4,8,3,23,0,1,0,0,3,0,1,0,4 132 | 1,0,1,1,0,0,1,0,0,0,0,0,0,67,26,0,1,2,-2,0,0,0,1,1,0,0,0,0,0,1,53,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,1,2,1,0,0,2,0,0,2,0,0,0,3,0,1,0,0,1,3,0,1,0,28,10,9,5,1,1,0,3,0,0,0,0,0,0,0,0,1,0,0,0,0,1,4,8,3,23,0,1,0,0,3,0,1,0,4 133 | 1,0,1,1,0,0,0,0,0,0,1,0,0,68,14,0,0,3,9,0,0,0,1,0,0,0,1,1,0,1,31,0,1,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,3,0,0,1,0,0,2,0,1,1,3,0,0,0,26,10,7,5,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,8,2,16,1,1,0,0,3,0,1,0,6 134 | 1,0,0,0,1,0,0,0,1,0,0,0,0,68,16,0,0,3,7,1,1,0,0,0,0,0,1,0,0,1,14,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,2,0,0,0,0,0,0,3,0,0,1,0,0,2,0,1,1,3,0,0,0,26,10,7,5,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,8,2,16,1,1,0,0,3,0,1,0,6 135 | 1,0,0,0,1,0,0,0,1,0,0,0,0,69,20,0,0,3,-1,1,0,0,0,0,0,0,0,0,0,1,99,0,0,1,0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,2,1,0,0,1,0,0,3,0,0,1,0,0,0,0,0,1,3,2,0,0,30,10,9,7,0,1,0,3,0,0,0,0,0,0,0,0,0,0,0,1,0,0,6,7,3,14,2,3,0,0,3,1,2,0,7 136 | 1,0,1,0,0,1,0,0,0,0,0,0,0,70,50,13,1,3,0,0,0,0,1,1,0,0,0,1,0,1,25,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0,5,0,0,0,27,10,9,4,0,0,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,9,0,12,0,1,0,0,3,0,0,0,0 137 | 1,0,0,0,1,0,0,0,1,0,0,0,0,70,7,0,1,4,0,0,0,0,0,1,0,0,1,0,0,1,31,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0,5,0,0,0,27,10,9,4,0,0,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,9,0,12,0,1,0,0,3,0,0,0,0 138 | 1,0,0,0,1,0,0,0,1,0,0,0,0,71,24,0,0,4,2,1,0,1,0,0,0,0,0,1,0,1,52,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,1,0,1,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,1,1,1,0,0,22,10,7,5,1,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,2,5,4,0,1,0,0,1,0,0,0,3 139 | 1,0,0,0,1,0,0,0,1,0,0,0,0,73,14,0,0,3,-1,0,1,0,0,1,0,0,0,0,0,1,13,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,2,1,0,0,3,0,0,2,0,0,2,1,1,0,1,0,1,1,0,0,0,17,9,6,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,5,4,2,15,4,6,1,0,4,0,1,0,3 140 | 1,0,0,0,1,0,0,0,1,0,0,0,0,73,10,0,0,3,-1,0,0,0,0,1,0,0,0,0,0,1,69,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,2,1,0,0,3,0,0,2,0,0,2,1,1,0,1,0,1,1,0,0,0,17,9,6,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,5,4,2,15,4,6,1,0,4,0,1,0,3 141 | 1,0,0,0,1,0,0,0,1,0,0,0,0,73,19,0,0,5,-1,0,0,0,0,1,0,0,0,0,0,1,31,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,3,1,0,0,3,0,0,2,0,0,2,1,1,0,1,0,1,1,0,0,0,17,9,6,2,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,5,4,2,15,4,6,1,0,4,0,1,0,3 142 | 1,0,1,0,0,0,0,1,0,0,0,0,0,74,36,0,0,3,0,0,0,0,1,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,2,0,0,1,0,0,0,1,0,0,1,1,0,3,1,0,0,22,10,8,4,0,1,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,4,2,9,1,2,0,0,3,2,0,0,0 143 | 1,0,0,0,0,0,0,1,0,0,0,0,0,74,25,0,0,3,-1,0,0,0,0,1,0,0,0,0,0,0,8,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,2,0,0,1,0,0,0,1,0,0,1,1,0,3,1,0,0,22,10,8,4,0,1,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,4,2,9,1,2,0,0,3,2,0,0,0 144 | 1,0,1,0,0,0,0,1,0,0,0,0,0,75,24,0,0,3,0,0,0,1,0,1,0,0,0,0,0,1,70,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,2,0,0,3,0,1,0,1,0,0,1,1,1,2,1,0,0,25,10,7,6,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,5,2,29,0,2,0,0,1,0,2,0,4 145 | 1,0,0,0,1,0,0,0,1,0,0,0,0,75,16,0,0,3,0,1,0,0,1,0,0,0,0,0,0,1,76,0,0,0,0,0,0,1,0,0,1,0,0,0,1,0,0,0,0,2,1,0,0,2,0,0,3,0,1,0,1,0,0,1,1,1,2,1,0,0,25,10,7,6,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,5,2,29,0,2,0,0,1,0,2,0,4 146 | 1,0,0,0,1,0,0,0,1,0,0,0,0,76,40,0,0,2,-1,0,0,1,1,1,0,0,0,0,0,1,84,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,0,1,0,0,0,0,0,0,1,2,1,0,1,0,0,20,10,5,4,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,7,4,12,1,3,0,0,0,0,0,1,7 147 | 1,0,0,0,1,0,0,0,1,0,0,0,0,77,19,14,3,5,0,1,0,0,1,1,0,0,0,0,0,1,105,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,0,0,0,4,0,0,1,2,0,2,0,0,0,1,0,0,0,21,9,7,5,0,1,0,5,0,0,1,0,0,0,0,0,0,0,0,0,0,1,3,12,2,12,3,0,0,0,2,1,0,0,6 148 | 0,0,1,0,0,0,0,1,0,0,0,0,0,77,18,4,0,2,2,0,0,0,0,1,0,1,0,0,0,1,17,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,4,0,0,1,2,0,2,0,0,0,1,0,0,0,21,9,7,5,0,1,0,5,0,0,1,0,0,0,0,0,0,0,0,0,0,1,3,12,2,12,3,0,0,0,2,1,0,0,6 149 | 0,0,0,0,1,0,0,0,1,0,0,0,0,77,16,0,0,3,0,0,0,0,0,1,0,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,1,0,1,0,0,0,0,0,4,0,0,1,2,0,2,0,0,0,1,0,0,0,21,9,7,5,0,1,0,5,0,0,1,0,0,0,0,0,0,0,0,0,0,1,3,12,2,12,3,0,0,0,2,1,0,0,6 150 | 1,0,0,0,1,0,0,0,1,0,0,0,0,78,18,0,0,4,-1,0,1,0,0,0,1,0,0,0,0,1,137,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,1,1,1,0,0,0,1,0,0,2,1,0,0,1,1,1,1,1,0,1,0,0,0,26,10,9,5,0,1,0,3,0,1,0,0,0,0,0,0,0,0,0,0,0,1,3,2,4,9,1,7,0,0,2,1,0,0,9 151 | 0,0,1,1,0,0,0,1,0,0,0,0,0,78,29,0,0,5,7,1,0,0,0,0,0,0,0,1,0,1,22,0,1,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,2,1,0,0,1,0,0,2,1,0,0,1,1,1,1,1,0,1,0,0,0,26,10,9,5,0,1,0,3,0,1,0,0,0,0,0,0,0,0,0,0,0,1,3,2,4,9,1,7,0,0,2,1,0,0,9 152 | 1,0,0,0,1,0,0,0,1,0,0,0,0,79,30,3,0,2,0,1,0,0,0,1,0,0,1,0,0,1,28,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1,0,1,2,1,0,0,2,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,24,10,8,5,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,3,7,2,13,2,2,0,0,3,0,0,0,4 153 | 1,0,0,0,1,0,0,0,1,0,0,0,0,80,18,0,0,2,-1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,1,1,0,0,4,0,0,2,0,0,0,2,0,0,0,0,0,1,2,0,0,19,10,7,2,1,0,1,2,0,0,0,0,0,1,0,0,0,0,0,0,0,0,3,10,3,19,1,0,0,0,1,1,1,0,3 154 | 1,0,0,0,1,0,0,0,1,0,0,0,0,81,10,0,0,3,-1,0,1,1,0,0,0,0,0,0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,1,0,0,1,0,0,1,0,1,0,1,1,0,0,1,0,0,28,10,8,7,0,0,0,4,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,6,3,11,1,2,0,0,2,0,1,0,1 155 | 1,0,0,0,1,0,0,0,1,0,0,0,0,81,21,1,3,3,-1,1,1,0,0,0,0,1,0,0,0,1,90,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1,0,1,2,1,0,0,1,0,0,1,0,0,1,0,1,0,1,1,0,0,1,0,0,28,10,8,7,0,0,0,4,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,6,3,11,1,2,0,0,2,0,1,0,1 156 | 1,0,1,0,0,0,0,1,0,0,0,0,0,82,13,0,0,4,2,0,0,0,0,1,0,0,0,0,1,0,31,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,1,0,0,0,0,1,2,0,0,0,4,0,1,1,0,1,0,0,1,1,27,10,9,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,1,5,5,4,17,3,4,0,1,4,0,0,0,9 157 | 1,0,0,0,0,0,0,1,0,0,0,0,0,82,23,0,0,3,2,0,0,0,1,1,0,0,1,0,0,1,99,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0,0,1,2,0,0,0,4,0,1,1,0,1,0,0,1,1,27,10,9,7,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,1,5,5,4,17,3,4,0,1,4,0,0,0,9 158 | 1,0,0,0,1,0,0,0,1,0,0,0,0,83,22,0,0,3,0,0,0,0,1,1,0,0,0,0,0,1,26,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,3,1,0,0,1,0,0,0,0,2,0,1,0,1,0,1,0,2,0,1,0,18,9,7,2,1,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,1,4,4,4,23,0,1,0,0,4,0,0,0,6 159 | 1,0,0,0,1,0,0,0,1,0,0,0,0,83,5,0,0,2,0,0,1,0,0,1,0,0,0,0,0,0,57,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,2,0,1,0,1,0,1,0,2,0,1,0,18,9,7,2,1,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,1,4,4,4,23,0,1,0,0,4,0,0,0,6 160 | 1,0,0,0,1,0,0,0,1,0,0,0,0,83,21,0,0,4,-1,0,0,0,0,1,0,0,0,0,1,1,43,0,0,1,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,3,0,0,0,1,0,0,0,0,2,0,1,0,1,0,1,0,2,0,1,0,18,9,7,2,1,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,1,4,4,4,23,0,1,0,0,4,0,0,0,6 161 | 1,0,0,0,1,0,0,0,1,0,0,0,0,85,12,0,0,3,18,0,1,0,0,1,0,0,0,0,0,1,101,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,3,1,0,0,2,0,0,1,0,0,0,1,1,0,0,1,0,4,0,0,0,18,9,5,3,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,1,0,6,8,3,16,0,2,0,0,4,1,1,0,2 162 | 1,0,0,0,1,0,0,0,1,0,0,0,0,85,13,1,0,2,0,0,1,0,0,0,0,0,0,0,0,0,66,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,2,0,0,1,0,0,0,1,1,0,0,1,0,4,0,0,0,18,9,5,3,1,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,1,0,6,8,3,16,0,2,0,0,4,1,1,0,2 163 | 1,0,1,0,0,0,1,0,0,0,0,0,0,86,17,0,2,3,0,0,0,0,0,1,0,0,0,1,0,1,47,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,2,1,0,0,1,1,0,0,0,1,3,0,0,0,25,10,7,5,0,0,0,5,0,0,1,0,0,0,0,0,0,0,0,0,0,0,3,7,2,11,2,1,0,0,3,0,0,0,0 164 | 0,0,1,1,0,0,0,0,0,0,1,0,0,86,29,0,0,2,6,0,1,0,0,0,0,0,0,1,0,1,70,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,1,1,1,0,0,0,0,0,2,1,0,0,1,1,0,0,0,1,3,0,0,0,25,10,7,5,0,0,0,5,0,0,1,0,0,0,0,0,0,0,0,0,0,0,3,7,2,11,2,1,0,0,3,0,0,0,0 165 | 1,0,1,1,0,0,1,0,0,0,0,0,0,87,31,6,0,3,0,0,1,0,0,1,0,0,0,0,0,1,71,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0,31,10,10,8,0,0,0,5,0,0,0,0,0,0,0,1,0,0,0,0,0,0,2,6,3,21,0,0,0,1,0,0,1,0,4 166 | 0,0,0,0,0,0,0,1,0,0,0,0,0,87,9,0,0,3,2,0,0,0,0,1,0,0,0,0,0,1,24,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,2,1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0,31,10,10,8,0,0,0,5,0,0,0,0,0,0,0,1,0,0,0,0,0,0,2,6,3,21,0,0,0,1,0,0,1,0,4 167 | 0,0,1,0,0,0,0,1,0,0,0,0,0,87,19,2,3,4,2,0,0,0,0,1,0,0,0,0,0,1,30,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0,31,10,10,8,0,0,0,5,0,0,0,0,0,0,0,1,0,0,0,0,0,0,2,6,3,21,0,0,0,1,0,0,1,0,4 168 | 0,0,1,0,0,0,0,1,0,0,0,0,0,87,30,0,0,6,0,0,0,0,0,1,0,0,0,0,0,1,19,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,1,0,0,0,31,10,10,8,0,0,0,5,0,0,0,0,0,0,0,1,0,0,0,0,0,0,2,6,3,21,0,0,0,1,0,0,1,0,4 169 | 1,0,1,1,0,0,0,1,0,0,0,0,0,88,7,0,0,4,2,0,0,0,0,1,0,0,0,1,0,1,133,0,0,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,3,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,27,10,7,7,1,0,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,4,10,2,15,0,1,0,0,3,1,0,0,1 170 | 1,0,1,1,0,0,0,1,0,0,0,0,0,88,21,0,1,4,-2,1,0,0,0,0,0,0,1,1,0,1,58,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,1,1,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,27,10,7,7,1,0,0,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,4,10,2,15,0,1,0,0,3,1,0,0,1 171 | 1,0,1,0,0,0,0,0,0,0,0,0,1,89,5,0,0,2,7,0,0,0,0,1,0,0,0,1,0,1,75,0,0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,0,0,1,1,1,0,1,0,0,2,0,0,0,0,0,1,0,0,0,3,0,0,0,26,10,9,6,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,2,7,1,21,1,3,1,0,2,0,0,0,0 172 | 1,0,0,0,1,0,0,0,1,0,0,0,0,90,33,0,0,2,39,0,1,0,1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,1,0,1,2,0,0,4,0,0,1,2,1,0,0,0,3,2,2,0,0,18,9,5,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,12,6,9,0,3,0,0,2,0,1,0,3 173 | 1,0,0,0,1,0,0,0,1,0,0,0,0,90,29,0,0,6,-1,0,1,1,0,0,0,0,0,0,0,1,34,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,0,0,0,2,0,0,4,0,0,1,2,1,0,0,0,3,2,2,0,0,18,9,5,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,12,6,9,0,3,0,0,2,0,1,0,3 174 | 1,0,0,0,1,0,0,0,1,0,0,0,0,91,18,0,2,4,0,1,0,0,0,0,0,0,1,1,0,1,24,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,3,1,1,0,3,0,0,2,0,0,1,0,0,1,1,1,0,3,1,0,2,27,9,9,6,0,1,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,6,2,5,9,7,6,1,0,5,0,1,0,2 175 | 1,0,1,1,0,0,0,1,0,0,0,0,0,91,12,0,0,3,-2,0,0,0,0,1,0,0,0,0,0,1,97,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,3,0,0,2,0,0,1,0,0,1,1,1,0,3,1,0,2,27,9,9,6,0,1,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,6,2,5,9,7,6,1,0,5,0,1,0,2 176 | 1,0,1,0,0,0,0,1,0,0,0,0,0,91,21,0,0,2,0,0,0,0,0,1,0,0,0,1,0,1,46,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,1,1,0,0,3,0,0,2,0,0,1,0,0,1,1,1,0,3,1,0,2,27,9,9,6,0,1,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,6,2,5,9,7,6,1,0,5,0,1,0,2 177 | 1,0,1,1,0,0,0,0,0,0,0,0,1,92,16,0,0,4,1,0,0,0,0,0,0,0,0,1,0,1,11,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,3,0,0,0,1,0,0,3,0,0,0,2,0,1,0,0,0,1,1,2,0,22,9,6,4,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,2,5,8,0,25,0,1,0,0,4,1,0,0,11 178 | 1,0,0,0,1,0,0,0,1,0,0,0,0,92,9,0,0,2,-1,1,0,0,1,0,0,0,0,0,0,1,33,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,1,0,0,3,0,0,0,2,0,1,0,0,0,1,1,2,0,22,9,6,4,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,2,5,8,0,25,0,1,0,0,4,1,0,0,11 179 | 1,0,1,1,0,0,0,1,0,0,0,0,0,94,12,2,0,2,-4,0,0,0,0,0,0,0,0,1,0,1,22,0,1,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,1,2,1,0,0,2,0,0,1,0,0,0,1,0,2,0,0,2,1,0,0,0,23,10,8,3,0,0,0,2,0,0,0,0,0,1,0,0,0,0,0,0,0,1,5,4,2,19,2,3,1,0,4,1,0,0,8 180 | 1,0,1,0,0,0,0,1,0,0,0,0,0,95,5,0,0,2,3,0,0,0,0,1,0,1,0,0,0,1,51,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,2,0,0,2,0,1,1,1,0,1,0,0,1,1,0,0,1,26,10,9,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,1,0,0,5,10,6,8,5,2,0,1,3,1,0,0,3 181 | 0,0,0,0,0,0,1,0,0,0,0,0,0,95,6,0,0,2,-2,0,0,0,0,0,0,1,0,1,1,1,31,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,0,0,2,0,1,1,1,0,1,0,0,1,1,0,0,1,26,10,9,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,1,0,0,5,10,6,8,5,2,0,1,3,1,0,0,3 182 | 1,0,0,0,1,0,0,0,1,0,0,0,0,96,14,0,2,2,0,1,0,0,1,1,0,0,0,0,0,0,111,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,2,0,0,0,4,0,0,2,0,0,0,2,2,0,0,1,0,1,1,0,0,25,10,7,4,1,0,0,2,0,0,0,0,0,1,0,0,0,0,0,0,0,0,4,10,4,14,0,1,0,0,4,0,0,0,3 183 | 1,0,0,0,1,0,0,0,1,0,0,0,0,97,14,0,0,4,-1,1,0,0,1,0,0,0,0,0,0,1,43,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,3,1,0,0,1,0,0,1,0,0,0,0,0,0,0,0,1,2,1,0,0,19,9,7,3,0,1,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,4,6,22,0,3,0,1,2,0,0,0,1 184 | 1,0,0,0,1,0,0,0,1,0,0,0,0,97,22,0,3,2,0,0,0,1,0,1,0,0,1,0,0,0,73,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,1,0,0,1,0,0,0,0,0,0,0,0,1,2,1,0,0,19,9,7,3,0,1,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,4,6,22,0,3,0,1,2,0,0,0,1 185 | 1,0,0,0,1,0,0,0,1,0,0,0,0,97,15,0,0,2,0,0,1,0,0,1,0,0,1,0,0,1,38,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,1,1,0,0,1,0,0,1,0,0,0,0,0,0,0,0,1,2,1,0,0,19,9,7,3,0,1,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,4,6,22,0,3,0,1,2,0,0,0,1 186 | 1,0,0,1,1,0,0,0,1,0,0,0,0,98,43,5,5,4,-1,0,0,1,0,0,0,0,0,1,0,1,80,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,0,0,2,0,2,0,0,0,0,1,0,0,0,0,28,9,9,6,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,4,4,1,17,1,2,0,0,2,1,1,0,3 187 | 0,0,0,0,0,0,0,0,0,0,0,0,1,98,13,2,0,4,-3,0,0,0,0,0,0,0,1,0,0,1,39,0,1,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,2,1,1,0,2,0,0,0,0,2,0,2,0,0,0,0,1,0,0,0,0,28,9,9,6,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,4,4,1,17,1,2,0,0,2,1,1,0,3 188 | 0,0,0,1,1,0,0,0,0,0,0,0,1,98,5,0,0,3,0,0,0,1,0,1,0,0,0,0,0,1,14,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,1,0,0,2,0,0,0,0,2,0,2,0,0,0,0,1,0,0,0,0,28,9,9,6,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,4,4,1,17,1,2,0,0,2,1,1,0,3 189 | 0,0,0,0,0,0,0,0,1,0,0,0,0,98,9,0,0,3,-3,1,0,0,0,1,0,0,0,0,0,1,6,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,2,0,0,0,0,2,0,2,0,0,0,0,1,0,0,0,0,28,9,9,6,0,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,4,4,1,17,1,2,0,0,2,1,1,0,3 190 | 1,0,0,0,1,0,0,0,1,0,0,0,0,99,23,0,3,3,1,0,1,1,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,1,0,0,0,0,0,0,4,0,0,0,1,1,0,2,4,0,1,1,0,2,32,10,9,7,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,1,0,0,4,3,10,6,12,5,0,0,3,1,1,0,4 191 | 1,0,1,0,0,0,0,1,0,0,0,0,0,100,19,1,0,3,1,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,4,0,1,1,0,0,0,1,0,0,0,1,1,1,0,0,0,28,10,8,6,1,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,1,0,4,7,1,18,1,4,0,0,3,0,1,0,4 192 | 1,0,0,0,1,0,0,0,1,0,0,0,0,100,47,3,0,3,0,0,0,1,0,1,0,0,0,0,0,1,28,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,4,0,1,1,0,0,0,1,0,0,0,1,1,1,0,0,0,28,10,8,6,1,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,1,0,4,7,1,18,1,4,0,0,3,0,1,0,4 193 | 1,0,1,0,0,0,0,0,1,0,0,0,0,100,18,6,0,4,0,0,0,0,1,1,0,0,0,0,0,0,39,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,4,0,1,1,0,0,0,1,0,0,0,1,1,1,0,0,0,28,10,8,6,1,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,1,0,4,7,1,18,1,4,0,0,3,0,1,0,4 194 | 1,0,0,0,0,0,0,1,0,0,0,0,0,100,15,0,0,3,-1,0,0,0,1,1,0,0,0,0,0,0,8,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,4,0,1,1,0,0,0,1,0,0,0,1,1,1,0,0,0,28,10,8,6,1,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,1,0,4,7,1,18,1,4,0,0,3,0,1,0,4 195 | 1,0,0,0,0,0,0,1,0,0,0,0,0,100,9,0,0,3,-1,0,0,0,0,1,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,4,0,1,1,0,0,0,1,0,0,0,1,1,1,0,0,0,28,10,8,6,1,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,1,0,4,7,1,18,1,4,0,0,3,0,1,0,4 196 | 1,0,1,1,0,0,0,1,0,0,0,0,0,101,14,0,0,5,-2,1,0,0,0,1,0,0,0,1,0,1,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,0,0,0,3,0,0,2,0,1,0,2,0,1,0,0,0,0,1,0,0,22,9,7,4,1,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,2,12,5,11,0,1,0,0,1,0,1,0,1 197 | 0,1,1,0,0,0,0,0,0,0,0,0,1,101,34,0,1,3,-2,0,0,1,0,1,0,0,0,0,0,1,25,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,0,3,1,0,0,3,0,0,2,0,1,0,2,0,1,0,0,0,0,1,0,0,22,9,7,4,1,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,2,12,5,11,0,1,0,0,1,0,1,0,1 198 | 0,1,1,1,0,0,0,0,0,0,0,0,1,102,16,5,6,3,-1,1,0,0,0,1,0,0,0,1,0,0,87,2,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,2,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,28,10,9,6,1,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,4,12,2,17,1,1,0,0,3,0,1,0,2 199 | 1,0,0,0,1,0,0,0,1,0,0,0,0,103,30,0,0,3,0,0,0,0,1,1,0,0,0,0,0,0,73,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,0,0,0,2,0,0,2,2,0,1,1,0,0,1,0,0,2,0,0,0,27,10,8,6,1,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,2,7,0,22,0,1,0,0,1,0,2,0,3 200 | 1,0,0,0,1,0,0,0,1,0,0,0,0,104,17,0,0,6,0,0,1,0,0,1,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,0,0,0,3,0,0,1,0,1,0,0,0,1,1,1,1,1,0,2,0,25,9,9,5,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,6,0,16,1,0,0,0,3,0,0,0,5 201 | 0,1,1,1,0,0,1,0,0,0,0,0,0,104,23,0,0,4,3,0,1,0,0,1,0,0,0,1,0,1,72,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,3,1,0,0,3,0,0,1,0,1,0,0,0,1,1,1,1,1,0,2,0,25,9,9,5,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,6,0,16,1,0,0,0,3,0,0,0,5 202 | 0,1,1,0,0,1,0,0,0,0,0,0,0,104,16,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,0,3,0,0,1,0,1,0,0,0,1,1,1,1,1,0,2,0,25,9,9,5,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,6,0,16,1,0,0,0,3,0,0,0,5 203 | 1,0,0,0,1,0,0,0,1,0,0,0,0,105,18,0,0,3,0,1,0,1,0,1,0,0,0,0,0,1,45,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,1,0,0,3,0,1,0,1,1,1,0,0,0,3,0,0,0,25,10,8,6,0,0,0,3,0,0,0,0,0,0,0,0,1,0,0,0,0,0,4,11,4,20,2,0,0,0,3,0,1,0,1 204 | 1,0,1,1,0,0,0,1,0,0,0,0,0,106,15,0,0,4,5,1,0,0,0,0,0,0,0,1,0,1,130,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,3,1,0,0,3,0,0,2,1,0,0,2,0,1,1,2,0,4,0,2,0,25,9,9,6,0,0,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,9,3,9,0,3,0,0,1,2,0,0,5 205 | 1,0,0,0,1,0,0,0,1,0,0,0,0,107,48,0,0,2,0,1,1,0,0,1,0,0,0,0,0,1,81,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,1,0,0,1,0,0,1,0,0,1,1,0,1,0,2,1,0,0,0,2,33,10,9,8,0,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,1,4,7,3,18,2,0,0,0,1,2,1,0,6 206 | 1,0,0,0,1,0,0,0,1,0,0,0,0,108,37,0,0,3,0,1,1,1,0,0,0,0,0,0,0,1,37,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,3,0,0,2,0,0,2,1,0,0,1,2,0,1,3,0,0,22,10,7,3,0,1,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,0,5,4,4,11,7,3,1,0,3,1,1,0,5 207 | 1,0,1,1,0,0,0,1,0,0,0,0,0,108,15,0,0,3,-5,0,0,0,0,1,0,0,0,0,0,0,12,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,3,0,0,2,0,0,2,1,0,0,1,2,0,1,3,0,0,22,10,7,3,0,1,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,0,5,4,4,11,7,3,1,0,3,1,1,0,5 208 | 0,0,1,1,0,0,0,1,0,0,0,0,0,109,24,0,3,3,4,0,0,0,0,1,0,0,0,1,0,1,131,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,1,0,1,0,2,0,1,0,0,0,0,1,1,1,22,9,8,4,0,0,0,2,0,0,0,0,0,0,0,0,1,0,0,0,0,2,6,6,7,18,5,5,0,0,1,2,3,0,7 209 | 1,0,0,1,1,0,0,0,1,0,0,0,0,111,18,4,0,4,0,0,0,0,0,1,0,0,0,0,0,1,27,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,2,1,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,1,0,0,0,27,10,8,6,1,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,4,19,2,13,1,5,0,0,4,0,0,0,1 210 | 1,0,1,1,0,0,0,1,0,0,0,0,0,111,12,0,0,3,0,0,0,0,0,1,0,0,1,0,0,0,9,0,1,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,1,0,0,0,27,10,8,6,1,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,4,19,2,13,1,5,0,0,4,0,0,0,1 211 | 1,0,1,1,0,0,0,1,0,0,0,0,0,111,22,0,8,4,1,0,0,0,0,1,0,0,0,0,0,0,6,1,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,3,1,0,0,0,0,0,0,0,0,0,2,0,1,0,0,0,1,0,0,0,27,10,8,6,1,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,4,19,2,13,1,5,0,0,4,0,0,0,1 212 | 1,0,0,0,1,0,0,1,0,0,0,0,0,112,50,0,0,3,9,0,1,0,0,0,0,0,0,0,0,1,52,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,3,1,0,0,0,0,0,3,0,0,0,0,0,2,0,0,0,0,0,1,0,27,10,9,4,1,1,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,1,4,9,3,16,0,3,0,0,4,0,0,0,5 213 | 1,0,1,1,0,0,0,1,0,0,0,0,0,112,39,0,0,3,6,0,0,1,1,0,0,0,0,0,0,1,2,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,0,3,0,0,0,0,0,2,0,0,0,0,0,1,0,27,10,9,4,1,1,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,1,4,9,3,16,0,3,0,0,4,0,0,0,5 214 | 1,0,1,0,0,1,0,0,0,0,0,0,0,113,16,4,0,4,-1,0,0,0,1,0,0,0,0,1,0,1,38,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,1,0,0,1,0,0,1,1,0,0,0,1,1,4,1,0,0,30,9,9,6,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,7,2,16,0,2,0,0,2,0,0,0,0 215 | 1,0,0,0,1,0,0,0,1,0,0,0,0,113,17,1,0,4,0,0,0,0,1,1,0,0,0,0,0,0,30,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,1,0,0,0,1,0,0,1,0,0,1,1,0,0,0,1,1,4,1,0,0,30,9,9,6,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,7,2,16,0,2,0,0,2,0,0,0,0 216 | 0,0,0,0,0,0,0,1,0,0,0,0,0,113,14,2,0,3,2,0,0,0,1,0,0,0,0,0,0,1,27,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,1,0,0,1,0,0,1,0,0,1,1,0,0,0,1,1,4,1,0,0,30,9,9,6,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,7,2,16,0,2,0,0,2,0,0,0,0 217 | 1,0,1,0,0,1,0,0,0,0,0,0,0,114,8,0,2,2,0,1,0,0,0,0,0,0,0,1,0,1,63,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,1,0,0,0,0,1,1,1,0,0,1,0,1,1,0,0,0,25,10,8,4,0,1,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,1,3,8,5,13,1,1,0,0,2,0,1,0,4 218 | 1,0,0,0,1,0,0,0,1,0,0,0,0,114,17,0,0,2,-1,0,0,0,1,1,0,0,0,1,0,0,42,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,1,0,0,0,0,1,1,1,0,0,1,0,1,1,0,0,0,25,10,8,4,0,1,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,1,3,8,5,13,1,1,0,0,2,0,1,0,4 219 | 0,0,0,0,0,0,0,1,0,0,0,0,0,115,37,0,0,5,-1,1,1,0,1,0,0,0,0,0,0,1,52,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,2,1,0,0,4,0,0,1,0,0,0,0,0,0,0,0,1,4,1,1,0,27,10,7,6,0,0,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,8,5,18,0,4,0,0,2,1,0,0,2 220 | 1,0,0,0,1,0,0,0,1,0,0,0,0,116,7,0,0,3,-1,0,0,1,0,1,0,0,0,0,0,1,51,0,0,1,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,0,0,0,3,0,0,6,0,0,0,3,0,2,1,1,0,1,1,0,0,33,10,10,8,0,0,0,3,0,0,0,0,0,0,0,0,1,0,0,0,0,0,5,8,3,14,2,3,0,0,4,1,0,0,3 221 | 1,0,0,0,1,0,0,0,1,0,0,0,0,116,14,0,0,3,-1,0,0,1,0,1,0,0,0,0,0,1,55,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,3,0,0,6,0,0,0,3,0,2,1,1,0,1,1,0,0,33,10,10,8,0,0,0,3,0,0,0,0,0,0,0,0,1,0,0,0,0,0,5,8,3,14,2,3,0,0,4,1,0,0,3 222 | 1,0,0,0,1,0,0,0,1,0,0,0,0,117,25,0,0,4,0,0,0,1,1,1,0,0,0,0,0,1,80,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,3,0,0,0,0,0,0,1,0,0,0,2,0,0,1,2,1,3,1,0,0,26,9,9,6,0,0,0,2,0,0,0,0,0,1,0,0,0,0,0,0,0,1,1,8,3,12,2,0,0,0,1,0,1,0,6 223 | 0,0,0,0,0,0,0,1,0,0,0,0,0,118,3,0,0,2,0,0,0,0,1,1,0,0,0,0,0,1,68,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,1,0,0,0,0,1,0,0,0,0,0,1,0,1,1,1,0,29,10,10,6,1,0,1,4,0,0,0,0,0,0,0,0,1,0,0,0,0,0,2,8,3,15,0,1,0,0,2,0,0,0,1 224 | 1,0,1,1,0,0,0,1,0,0,0,0,0,119,5,0,0,2,-2,0,0,0,0,1,0,0,0,1,0,1,49,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,2,0,0,2,1,0,0,1,0,1,1,1,0,0,26,10,8,6,1,1,1,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,5,10,2,18,4,4,0,0,2,2,1,0,5 225 | 1,0,1,0,0,0,0,1,0,0,0,0,0,119,20,0,0,2,-1,1,0,1,1,0,0,0,0,0,0,1,39,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,1,0,1,0,0,0,0,0,2,0,0,2,1,0,0,1,0,1,1,1,0,0,26,10,8,6,1,1,1,5,0,0,0,0,0,0,0,0,1,0,0,0,0,0,5,10,2,18,4,4,0,0,2,2,1,0,5 226 | 1,0,1,1,0,0,0,1,0,0,0,0,0,120,23,8,10,3,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,3,1,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,24,9,8,6,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,4,14,3,10,0,1,0,0,4,0,0,0,1 227 | 1,0,0,0,1,0,0,0,1,0,0,0,0,120,18,0,0,3,-1,1,0,1,1,0,0,0,0,0,0,1,5,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0,1,0,0,0,24,9,8,6,0,0,0,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,4,14,3,10,0,1,0,0,4,0,0,0,1 228 | 1,0,0,0,1,0,0,0,1,0,0,0,0,121,13,4,0,3,0,0,0,0,0,1,0,0,1,0,0,1,111,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,2,0,0,2,0,0,0,1,1,0,1,1,0,1,2,1,0,27,9,9,6,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,5,7,14,2,7,0,0,3,0,2,0,3 229 | 1,0,0,0,1,0,0,0,1,0,0,0,0,121,21,0,0,2,0,0,0,0,0,1,0,0,0,0,0,0,84,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1,0,0,2,0,0,2,0,0,0,1,1,0,1,1,0,1,2,1,0,27,9,9,6,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,5,7,14,2,7,0,0,3,0,2,0,3 230 | 0,0,1,0,0,0,0,0,0,1,0,0,0,121,15,0,0,7,-3,0,0,0,0,1,0,0,0,0,0,1,47,0,0,0,0,0,0,1,0,0,0,0,0,0,1,1,0,0,0,2,1,0,1,2,0,0,2,0,0,0,1,1,0,1,1,0,1,2,1,0,27,9,9,6,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,5,7,14,2,7,0,0,3,0,2,0,3 231 | 0,0,0,0,0,0,0,0,0,1,0,0,0,121,17,0,0,4,12,0,1,0,0,0,0,0,0,0,0,1,75,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,2,1,0,1,2,0,0,2,0,0,0,1,1,0,1,1,0,1,2,1,0,27,9,9,6,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,5,7,14,2,7,0,0,3,0,2,0,3 232 | 1,0,0,0,1,0,0,0,1,0,0,0,0,122,5,0,0,2,-1,0,0,1,0,1,0,0,0,0,0,1,54,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,1,0,0,0,22,10,9,3,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,4,3,5,1,0,1,0,0,0,0,1,0 233 | 1,0,0,0,1,0,0,0,1,0,0,0,0,122,35,1,0,4,-1,0,1,1,0,0,0,0,0,0,0,1,34,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,1,0,0,0,22,10,9,3,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,4,3,5,1,0,1,0,0,0,0,1,0 234 | 1,0,0,0,1,0,0,0,1,0,0,0,0,122,15,0,0,2,-1,0,0,0,1,1,0,0,0,0,0,1,66,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,1,0,0,0,22,10,9,3,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,4,3,5,1,0,1,0,0,0,0,1,0 235 | 1,0,0,0,1,0,0,0,1,0,0,0,0,122,14,0,0,3,-1,0,1,0,1,0,0,0,0,0,0,0,50,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1,0,0,2,1,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,1,0,0,0,22,10,9,3,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,4,3,5,1,0,1,0,0,0,0,1,0 236 | 1,0,0,0,1,0,0,0,1,0,0,0,0,123,16,0,0,2,0,0,0,0,0,1,0,0,0,0,0,1,87,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,1,0,0,2,0,0,0,3,0,1,1,1,1,1,1,0,0,17,10,6,1,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,4,4,6,10,3,0,0,0,4,0,0,0,2 237 | 0,0,0,0,1,0,0,0,1,0,0,0,0,123,15,0,0,2,5,0,1,0,1,0,0,0,0,0,0,1,108,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,2,0,0,0,3,0,1,1,1,1,1,1,0,0,17,10,6,1,0,0,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,4,4,6,10,3,0,0,0,4,0,0,0,2 238 | 1,0,0,0,1,0,0,0,1,0,0,0,0,124,34,2,0,2,0,0,1,0,0,1,0,0,0,0,0,0,3,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,2,0,0,0,0,0,0,1,0,1,0,2,1,2,0,1,0,28,9,8,7,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,1,0,4,9,8,17,0,3,1,0,2,1,1,0,3 239 | 1,0,1,0,0,1,0,0,0,0,0,0,0,125,24,11,5,2,0,1,0,0,0,0,0,0,0,1,0,1,37,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,1,0,0,0,2,0,0,3,0,0,1,2,0,1,0,0,2,0,1,0,0,22,10,8,4,1,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,3,9,5,6,2,3,0,0,2,0,1,0,2 240 | 1,0,0,0,1,0,0,0,1,0,0,0,0,126,18,0,0,2,0,0,1,0,0,1,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,3,1,0,0,3,0,0,2,0,0,1,2,0,1,0,0,1,0,0,1,0,19,8,7,3,1,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,1,5,11,1,12,2,3,0,0,5,0,0,0,9 241 | 1,0,0,0,0,0,0,1,0,0,0,0,0,126,20,0,0,2,6,1,0,0,1,1,0,0,0,0,0,1,23,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,3,0,0,2,0,0,1,2,0,1,0,0,1,0,0,1,0,19,8,7,3,1,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,1,5,11,1,12,2,3,0,0,5,0,0,0,9 242 | 1,0,0,0,1,0,0,0,1,0,0,0,0,126,35,0,0,3,0,0,1,0,0,1,0,0,0,0,0,1,43,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,2,0,0,0,3,0,0,2,0,0,1,2,0,1,0,0,1,0,0,1,0,19,8,7,3,1,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,1,5,11,1,12,2,3,0,0,5,0,0,0,9 243 | 1,0,0,0,0,0,0,1,0,0,0,0,0,127,25,0,0,1,-1,0,1,0,0,1,0,0,0,0,0,1,23,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,1,0,0,0,0,0,4,1,3,1,3,1,0,1,0,1,3,0,0,0,33,10,8,7,0,1,0,3,0,0,0,0,0,0,0,0,1,0,0,0,0,0,2,8,1,19,0,3,0,0,1,1,0,0,0 244 | 0,0,1,1,0,0,0,1,0,0,0,0,0,127,14,0,0,3,-2,1,0,0,0,0,0,0,0,1,1,1,73,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,2,1,0,0,0,0,0,4,1,3,1,3,1,0,1,0,1,3,0,0,0,33,10,8,7,0,1,0,3,0,0,0,0,0,0,0,0,1,0,0,0,0,0,2,8,1,19,0,3,0,0,1,1,0,0,0 245 | 0,0,0,0,1,0,0,0,1,0,0,0,0,127,21,0,0,4,0,1,1,0,0,0,0,0,0,0,0,1,73,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,3,1,0,0,0,0,0,4,1,3,1,3,1,0,1,0,1,3,0,0,0,33,10,8,7,0,1,0,3,0,0,0,0,0,0,0,0,1,0,0,0,0,0,2,8,1,19,0,3,0,0,1,1,0,0,0 246 | 1,0,0,0,0,0,0,1,0,0,0,0,0,129,9,0,0,1,-2,0,0,0,1,1,0,0,0,0,0,1,39,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,1,1,0,0,2,0,0,2,0,0,0,0,0,0,0,1,0,2,0,0,0,27,9,9,7,1,1,1,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,7,1,10,0,0,0,1,0,0,1,0,3 247 | 0,1,0,0,0,0,1,0,0,0,0,0,0,129,16,0,2,2,0,1,0,0,1,1,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,2,0,0,2,0,0,0,0,0,0,0,1,0,2,0,0,0,27,9,9,7,1,1,1,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,7,1,10,0,0,0,1,0,0,1,0,3 248 | 1,0,1,0,0,0,0,1,0,0,0,0,0,130,16,0,4,2,0,0,0,0,0,1,0,0,0,0,0,1,44,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,2,0,1,0,2,0,1,0,0,2,1,0,0,0,26,9,9,7,1,1,1,3,0,0,0,0,0,0,1,0,0,0,0,0,0,0,3,3,3,15,0,1,0,0,2,1,0,0,2 249 | 1,0,1,1,0,0,0,1,0,0,0,0,0,131,26,0,0,4,-1,1,0,0,0,1,0,0,0,0,0,1,120,0,1,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,2,0,0,0,1,0,0,2,0,1,0,1,0,1,0,0,0,24,10,8,4,0,0,0,5,0,1,0,0,0,0,0,0,0,0,0,0,0,1,3,13,1,15,0,1,0,0,2,0,1,0,5 250 | 1,0,0,0,0,0,1,0,0,0,0,0,0,131,4,0,0,4,-1,0,0,0,0,0,0,1,0,1,0,0,27,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,1,0,0,2,0,1,0,1,0,1,0,0,0,24,10,8,4,0,0,0,5,0,1,0,0,0,0,0,0,0,0,0,0,0,1,3,13,1,15,0,1,0,0,2,0,1,0,5 251 | 1,0,0,0,1,0,0,0,1,0,0,0,0,132,11,0,0,2,-1,0,0,1,1,1,0,0,0,0,0,1,38,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,2,1,0,0,2,0,0,3,0,0,0,0,0,0,3,2,0,3,0,0,2,23,10,7,5,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,1,0,0,5,8,7,9,9,4,0,0,3,1,1,0,0 252 | 1,0,1,1,0,0,0,0,0,0,0,0,1,133,26,0,5,5,-3,1,0,0,0,1,0,0,0,1,0,1,38,0,0,0,0,0,0,0,0,0,1,0,0,1,1,0,0,1,0,2,1,0,0,3,0,0,1,0,2,0,1,0,0,1,0,0,0,1,1,0,28,10,8,7,1,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,1,2,8,2,13,0,1,1,0,1,0,1,0,4 253 | 1,0,1,1,0,0,0,0,0,0,0,0,1,133,11,0,0,2,-3,1,0,0,1,0,0,0,0,1,0,1,36,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,3,1,0,0,3,0,0,1,0,2,0,1,0,0,1,0,0,0,1,1,0,28,10,8,7,1,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,1,2,8,2,13,0,1,1,0,1,0,1,0,4 254 | 1,0,0,1,1,0,0,0,1,0,0,0,0,133,24,0,0,6,1,0,1,1,0,0,0,0,1,0,0,1,40,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,0,0,0,1,1,0,0,3,0,0,1,0,2,0,1,0,0,1,0,0,0,1,1,0,28,10,8,7,1,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,1,2,8,2,13,0,1,1,0,1,0,1,0,4 255 | 1,0,0,0,0,0,0,1,0,0,0,0,0,134,8,2,0,2,-2,0,0,0,0,1,0,0,0,0,0,1,7,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,0,0,3,0,1,0,1,0,0,0,0,0,3,0,1,2,26,10,8,5,0,1,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,7,4,9,17,3,5,0,0,4,2,1,0,0 256 | 1,0,0,0,0,0,0,1,0,0,0,0,0,134,5,1,0,2,-2,0,0,0,0,0,0,1,1,0,0,1,14,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,2,1,0,0,1,0,0,3,0,1,0,1,0,0,0,0,0,3,0,1,2,26,10,8,5,0,1,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,7,4,9,17,3,5,0,0,4,2,1,0,0 257 | 1,0,1,1,0,0,0,1,0,0,0,0,0,135,10,5,5,3,0,0,0,0,0,1,0,0,0,0,0,1,58,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,2,0,0,3,0,0,0,2,0,0,0,0,0,1,1,0,0,24,10,8,5,0,1,0,2,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,8,3,10,2,2,0,0,2,1,0,0,4 258 | 1,0,1,0,0,0,0,1,0,0,0,0,0,135,13,0,0,2,-1,0,1,0,0,1,0,0,0,0,1,1,29,0,0,0,0,0,0,0,0,1,0,0,0,1,0,0,0,1,0,1,0,0,0,2,0,0,3,0,0,0,2,0,0,0,0,0,1,1,0,0,24,10,8,5,0,1,0,2,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,8,3,10,2,2,0,0,2,1,0,0,4 259 | 1,0,1,0,0,0,0,1,0,0,0,0,0,136,27,0,0,2,0,0,0,0,0,1,0,0,0,0,0,0,14,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,1,0,1,0,0,2,0,0,1,0,0,1,1,0,1,1,0,1,2,0,0,2,24,10,7,4,1,0,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,6,9,3,11,4,1,0,0,0,2,4,0,4 260 | 1,0,0,0,0,0,0,1,0,0,0,0,0,136,21,5,0,2,0,0,0,0,0,1,0,1,0,0,0,1,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,2,0,0,1,0,0,1,1,0,1,1,0,1,2,0,0,2,24,10,7,4,1,0,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,6,9,3,11,4,1,0,0,0,2,4,0,4 261 | 1,0,0,0,1,0,0,0,1,0,0,0,0,137,43,6,0,3,0,0,1,1,0,1,0,0,0,0,0,1,76,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,2,1,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,27,10,8,7,1,0,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,4,1,22,0,0,0,0,4,0,0,0,1 262 | 0,1,1,0,0,1,0,0,0,0,0,0,0,137,12,0,0,2,0,1,0,1,0,1,0,0,0,0,0,1,29,0,0,1,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,2,1,0,0,2,1,0,2,0,0,0,0,0,0,0,0,0,2,0,0,0,27,10,8,7,1,0,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,4,1,22,0,0,0,0,4,0,0,0,1 263 | 1,0,0,0,1,0,0,0,1,0,0,0,0,138,24,0,0,3,0,0,0,0,1,1,0,0,0,0,1,0,66,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,3,0,0,1,0,0,0,3,0,1,0,1,0,4,1,0,0,23,10,8,4,0,0,0,2,0,0,0,0,0,0,1,0,0,0,0,0,0,0,4,9,2,17,3,0,0,0,2,1,2,0,1 264 | 1,0,0,0,1,0,0,0,1,0,0,0,0,139,11,0,0,3,-1,0,0,0,1,0,0,0,0,0,0,0,59,0,1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,3,1,0,0,1,0,0,1,0,0,1,0,0,0,0,0,0,3,2,0,0,21,9,8,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,8,5,17,2,0,0,0,2,0,2,0,2 265 | 1,0,0,0,0,0,0,0,0,0,1,0,0,139,50,0,0,3,13,0,1,0,1,0,0,0,0,0,0,1,28,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,0,0,0,3,2,0,0,21,9,8,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,8,5,17,2,0,0,0,2,0,2,0,2 266 | 1,0,0,0,1,0,0,0,1,0,0,0,0,139,9,0,0,2,-1,1,0,0,1,0,0,0,0,0,0,1,33,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,1,0,0,1,0,0,1,0,0,0,0,0,0,3,2,0,0,21,9,8,3,0,0,0,4,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,8,5,17,2,0,0,0,2,0,2,0,2 267 | 0,1,0,0,0,0,0,0,0,0,1,0,0,140,19,0,0,1,5,1,0,1,0,0,0,0,0,0,0,1,49,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,0,3,0,0,3,0,0,0,3,0,0,1,0,1,1,2,1,0,28,10,9,6,0,0,0,3,0,0,0,0,0,1,0,0,0,0,0,0,0,1,3,9,3,17,3,4,0,0,2,0,1,0,6 268 | 1,0,0,0,0,0,0,1,0,0,0,0,0,140,14,0,0,2,0,0,0,0,1,1,0,0,0,0,0,1,22,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,1,2,1,0,0,3,0,0,3,0,0,0,3,0,0,1,0,1,1,2,1,0,28,10,9,6,0,0,0,3,0,0,0,0,0,1,0,0,0,0,0,0,0,1,3,9,3,17,3,4,0,0,2,0,1,0,6 269 | 1,0,1,1,0,0,0,1,0,0,0,0,0,141,31,9,10,3,-1,0,0,1,0,0,0,0,0,1,0,1,79,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,2,2,0,30,10,9,6,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,0,6,12,0,15,2,2,0,0,5,1,0,0,1 270 | 0,0,1,1,0,0,0,1,0,0,0,0,0,141,11,0,6,3,3,0,0,0,0,0,0,0,0,1,0,1,73,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,2,2,0,30,10,9,6,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,0,6,12,0,15,2,2,0,0,5,1,0,0,1 271 | 0,0,1,1,0,0,0,0,0,0,0,0,1,141,45,0,0,2,35,0,1,0,0,0,0,0,1,1,0,1,85,0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,2,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,2,2,0,30,10,9,6,0,0,0,4,0,0,0,0,0,0,0,0,1,0,0,0,0,0,6,12,0,15,2,2,0,0,5,1,0,0,1 272 | 1,0,0,0,1,0,0,0,1,0,0,0,0,142,23,5,0,4,0,1,1,0,0,1,0,0,0,0,0,1,9,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,3,1,0,0,1,0,0,1,0,0,0,3,0,1,0,1,0,0,1,0,0,31,10,9,7,1,1,0,2,0,0,0,0,0,0,0,0,1,0,0,0,0,1,5,7,8,14,4,1,1,0,2,1,2,0,4 273 | 1,0,0,0,1,0,0,0,1,0,0,0,0,142,19,12,0,3,0,0,0,1,1,1,0,0,0,0,0,1,17,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,3,1,0,0,1,0,0,1,0,0,0,3,0,1,0,1,0,0,1,0,0,31,10,9,7,1,1,0,2,0,0,0,0,0,0,0,0,1,0,0,0,0,1,5,7,8,14,4,1,1,0,2,1,2,0,4 274 | 0,0,1,1,0,0,0,0,0,0,0,0,1,143,16,0,0,2,20,0,0,0,0,0,0,0,0,1,0,1,22,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,3,0,0,0,1,0,0,0,0,0,1,2,0,2,0,0,1,0,0,1,0,24,10,7,4,1,0,0,5,0,0,1,0,0,0,0,0,0,0,0,0,0,0,5,10,2,15,2,4,0,0,3,0,1,1,5 275 | 0,0,1,1,0,1,0,0,0,0,0,0,0,143,36,0,2,2,18,0,0,1,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,1,2,1,0,0,1,0,0,0,0,0,1,2,0,2,0,0,1,0,0,1,0,24,10,7,4,1,0,0,5,0,0,1,0,0,0,0,0,0,0,0,0,0,0,5,10,2,15,2,4,0,0,3,0,1,1,5 276 | 1,0,1,1,0,0,1,0,0,0,0,0,0,143,15,0,0,3,20,0,0,0,0,0,0,0,0,1,0,1,207,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,3,1,0,0,1,0,0,0,0,0,1,2,0,2,0,0,1,0,0,1,0,24,10,7,4,1,0,0,5,0,0,1,0,0,0,0,0,0,0,0,0,0,0,5,10,2,15,2,4,0,0,3,0,1,1,5 277 | 1,0,0,0,1,0,0,0,1,0,0,0,0,144,15,0,0,3,-1,0,0,0,1,1,0,0,0,0,0,1,21,0,1,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,1,4,0,0,0,2,1,1,0,0,2,0,0,0,2,31,10,10,6,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,4,7,4,23,6,2,0,0,4,0,0,0,7 278 | 1,0,0,0,1,0,0,0,1,0,0,0,0,144,21,0,1,4,-1,0,1,0,0,1,0,0,0,0,0,1,39,0,0,0,0,0,0,0,1,1,0,0,0,0,1,0,0,0,1,3,1,0,0,1,0,1,4,0,0,0,2,1,1,0,0,2,0,0,0,2,31,10,10,6,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,4,7,4,23,6,2,0,0,4,0,0,0,7 279 | 1,0,0,0,1,0,0,0,1,0,0,0,0,144,12,4,0,3,-1,1,0,1,1,0,0,0,0,0,0,1,51,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,1,0,1,4,0,0,0,2,1,1,0,0,2,0,0,0,2,31,10,10,6,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,1,0,4,7,4,23,6,2,0,0,4,0,0,0,7 280 | 1,0,0,0,1,0,0,0,1,0,0,0,0,145,14,0,0,5,-1,0,0,0,1,1,0,1,0,0,0,1,70,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,3,0,0,0,2,0,0,3,0,0,0,2,1,0,0,0,0,2,0,0,0,26,9,9,6,1,0,0,5,1,0,0,0,0,0,0,0,0,0,0,0,0,0,4,9,4,17,2,2,0,0,3,0,1,0,2 281 | 1,0,0,0,1,0,0,0,1,0,0,0,0,145,10,0,0,3,-1,0,0,1,0,1,0,0,0,0,0,1,52,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,3,0,0,0,2,0,0,3,0,0,0,2,1,0,0,0,0,2,0,0,0,26,9,9,6,1,0,0,5,1,0,0,0,0,0,0,0,0,0,0,0,0,0,4,9,4,17,2,2,0,0,3,0,1,0,2 282 | 1,0,0,0,1,0,0,0,1,0,0,0,0,145,33,0,0,2,39,0,1,0,1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,1,0,1,2,0,0,3,0,0,0,2,1,0,0,0,0,2,0,0,0,26,9,9,6,1,0,0,5,1,0,0,0,0,0,0,0,0,0,0,0,0,0,4,9,4,17,2,2,0,0,3,0,1,0,2 283 | 0,1,0,0,0,0,0,0,0,1,0,0,0,145,17,0,0,4,-2,0,1,0,0,0,1,0,0,0,1,0,76,0,0,1,1,0,0,0,0,0,0,0,1,0,0,0,0,1,0,2,0,0,1,2,0,0,3,0,0,0,2,1,0,0,0,0,2,0,0,0,26,9,9,6,1,0,0,5,1,0,0,0,0,0,0,0,0,0,0,0,0,0,4,9,4,17,2,2,0,0,3,0,1,0,2 284 | 1,0,0,0,1,0,0,1,0,0,0,0,0,146,33,1,3,11,0,0,0,0,1,1,0,0,0,1,0,1,53,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,1,0,1,0,0,1,0,0,3,0,0,0,4,1,0,0,0,0,0,1,2,0,23,8,8,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,1,4,10,3,25,0,1,0,0,2,1,1,0,9 285 | 1,0,0,0,1,0,0,0,1,0,0,0,0,146,9,0,0,2,-1,1,0,0,1,0,0,0,0,0,0,1,33,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,1,0,0,1,0,0,3,0,0,0,4,1,0,0,0,0,0,1,2,0,23,8,8,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,1,4,10,3,25,0,1,0,0,2,1,1,0,9 286 | 1,0,1,0,0,0,0,1,0,0,0,0,0,146,21,0,0,2,0,0,0,0,1,1,0,0,0,1,0,1,29,0,1,0,0,0,0,0,0,1,0,0,1,0,1,0,0,0,0,3,0,0,0,1,0,0,3,0,0,0,4,1,0,0,0,0,0,1,2,0,23,8,8,4,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,1,4,10,3,25,0,1,0,0,2,1,1,0,9 287 | 1,0,0,0,1,0,0,0,1,0,0,0,0,147,12,0,0,2,-1,1,1,0,0,1,0,0,0,0,0,0,81,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,1,0,0,3,0,0,2,0,0,0,3,0,1,0,3,0,1,0,1,1,30,10,8,7,0,0,0,2,0,0,0,0,0,0,1,0,0,0,0,0,0,1,5,5,3,12,5,3,0,0,2,2,1,0,8 288 | 1,0,0,0,1,0,0,0,1,0,0,0,0,147,30,1,1,3,-1,0,0,1,0,1,0,1,0,0,0,1,65,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,2,1,0,0,3,0,0,2,0,0,0,3,0,1,0,3,0,1,0,1,1,30,10,8,7,0,0,0,2,0,0,0,0,0,0,1,0,0,0,0,0,0,1,5,5,3,12,5,3,0,0,2,2,1,0,8 289 | 0,0,0,0,0,0,0,0,1,0,0,0,0,149,17,3,0,2,0,1,1,0,0,1,0,0,0,0,0,1,32,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,1,1,0,0,2,0,0,2,0,0,0,2,0,0,1,1,0,3,2,0,0,27,10,9,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,8,5,9,0,1,0,0,2,0,2,0,0 290 | 0,0,0,0,0,0,0,1,0,0,0,0,0,149,41,0,0,3,0,0,1,0,1,0,0,0,0,0,0,1,33,0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,2,1,0,0,2,0,0,2,0,0,0,2,0,0,1,1,0,3,2,0,0,27,10,9,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,8,5,9,0,1,0,0,2,0,2,0,0 291 | 1,0,0,0,0,0,0,1,0,0,0,0,0,149,13,0,0,2,0,0,1,0,0,1,1,0,0,0,0,1,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,2,0,0,2,0,0,0,2,0,0,1,1,0,3,2,0,0,27,10,9,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,8,5,9,0,1,0,0,2,0,2,0,0 292 | 1,0,0,0,0,0,0,1,0,0,0,0,0,149,11,0,0,2,-1,0,0,0,0,1,0,0,0,0,0,1,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,2,0,0,2,0,0,0,2,0,0,1,1,0,3,2,0,0,27,10,9,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,8,5,9,0,1,0,0,2,0,2,0,0 293 | 0,0,0,0,1,0,0,0,1,0,0,0,0,150,50,0,1,4,-1,1,1,0,0,0,0,0,0,0,0,1,59,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,2,1,0,0,2,0,0,3,0,0,0,0,0,1,0,1,1,2,1,0,0,25,9,9,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,8,1,13,5,2,0,0,2,0,2,0,3 294 | 0,0,0,0,0,0,0,0,1,0,0,0,0,150,6,2,0,2,-2,0,0,0,0,1,0,0,0,0,0,1,9,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,2,0,0,3,0,0,0,0,0,1,0,1,1,2,1,0,0,25,9,9,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,8,1,13,5,2,0,0,2,0,2,0,3 295 | 0,0,0,0,1,0,0,0,1,0,0,0,0,150,34,0,0,3,-1,0,0,0,1,1,0,0,0,0,0,1,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,1,0,0,2,0,0,3,0,0,0,0,0,1,0,1,1,2,1,0,0,25,9,9,5,0,0,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,4,8,1,13,5,2,0,0,2,0,2,0,3 296 | 1,0,1,0,0,1,0,0,0,0,0,0,0,151,21,0,0,2,1,0,0,0,0,1,0,0,0,0,0,1,33,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,2,1,0,2,0,0,0,0,0,1,1,0,1,1,0,0,1,21,10,7,2,0,0,0,2,0,0,0,0,0,0,1,0,0,0,0,0,0,0,3,4,1,24,2,2,0,0,3,0,0,0,0 297 | 1,0,0,0,0,1,0,0,0,0,0,0,0,151,29,0,0,2,1,1,0,0,0,1,0,0,1,0,0,1,15,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,0,2,0,0,0,0,0,1,1,0,1,1,0,0,1,21,10,7,2,0,0,0,2,0,0,0,0,0,0,1,0,0,0,0,0,0,0,3,4,1,24,2,2,0,0,3,0,0,0,0 298 | 1,0,1,0,0,0,0,1,0,0,0,0,0,152,25,3,0,4,0,1,1,0,0,1,0,0,0,0,0,1,25,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,1,23,8,7,6,0,0,0,5,0,0,0,0,1,0,0,0,0,0,0,0,0,0,2,2,3,4,3,0,0,0,0,1,1,0,4 299 | 1,0,0,0,1,0,0,0,1,0,0,0,0,152,16,0,0,3,0,0,0,0,0,1,0,0,1,1,0,0,28,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,1,23,8,7,6,0,0,0,5,0,0,0,0,1,0,0,0,0,0,0,0,0,0,2,2,3,4,3,0,0,0,0,1,1,0,4 300 | 0,1,0,0,1,0,0,0,1,0,0,0,0,152,19,0,0,2,0,0,0,0,1,1,0,0,0,0,1,0,41,0,0,0,0,0,0,1,0,0,1,0,0,0,1,0,0,0,0,2,0,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,1,23,8,7,6,0,0,0,5,0,0,0,0,1,0,0,0,0,0,0,0,0,0,2,2,3,4,3,0,0,0,0,1,1,0,4 301 | 1,0,0,0,1,0,0,0,1,0,0,0,0,152,4,0,0,3,0,0,1,0,0,1,0,0,0,0,0,0,59,0,0,1,0,0,1,0,0,0,0,0,0,0,1,0,0,1,0,1,1,0,0,1,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,1,23,8,7,6,0,0,0,5,0,0,0,0,1,0,0,0,0,0,0,0,0,0,2,2,3,4,3,0,0,0,0,1,1,0,4 302 | 0,0,0,0,0,0,0,1,0,0,0,0,0,153,29,8,0,2,0,0,0,0,1,0,1,0,1,0,0,1,57,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,3,0,0,1,0,2,1,3,1,0,0,1,2,2,1,1,0,25,10,9,4,1,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,1,2,8,0,18,0,0,0,0,2,0,0,0,10 303 | 1,0,0,0,0,0,0,1,0,0,0,0,0,153,17,0,0,2,0,0,0,0,0,0,0,0,0,1,0,1,29,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,3,0,0,1,0,2,1,3,1,0,0,1,2,2,1,1,0,25,10,9,4,1,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,1,2,8,0,18,0,0,0,0,2,0,0,0,10 304 | 0,0,0,0,0,0,0,1,0,0,0,0,0,153,12,2,0,3,0,0,1,0,0,1,0,0,0,0,0,1,34,0,0,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,2,1,0,0,3,0,0,1,0,2,1,3,1,0,0,1,2,2,1,1,0,25,10,9,4,1,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,1,2,8,0,18,0,0,0,0,2,0,0,0,10 305 | 0,0,0,0,0,0,0,1,0,0,0,0,0,153,16,0,0,2,-1,0,0,0,0,1,0,0,0,0,0,0,7,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,0,0,1,0,2,1,3,1,0,0,1,2,2,1,1,0,25,10,9,4,1,0,0,5,0,0,0,0,0,0,0,0,1,0,0,0,0,1,2,8,0,18,0,0,0,0,2,0,0,0,10 306 | 1,0,1,1,0,0,0,1,0,0,0,0,0,154,36,5,22,3,4,0,0,0,0,1,0,0,0,1,0,1,53,0,1,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,1,0,0,2,0,0,3,0,1,0,1,0,1,0,0,0,2,1,0,0,24,8,7,6,0,1,0,5,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,13,1,21,2,2,0,0,3,0,0,0,5 307 | 1,0,0,0,1,0,0,0,1,0,0,0,0,154,15,0,0,3,-1,0,1,1,0,1,0,0,0,0,0,1,27,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,2,1,0,0,2,0,0,3,0,1,0,1,0,1,0,0,0,2,1,0,0,24,8,7,6,0,1,0,5,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,13,1,21,2,2,0,0,3,0,0,0,5 308 | 1,0,0,0,1,0,0,0,1,0,0,0,0,155,15,0,2,2,0,1,0,1,0,1,0,0,0,0,0,1,23,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,3,0,0,0,1,1,0,2,0,0,0,3,0,1,0,0,0,1,0,0,0,27,10,9,6,1,1,0,4,0,0,0,0,0,0,0,0,0,1,0,0,0,1,5,6,4,19,1,3,0,0,5,0,0,0,6 309 | 1,0,0,0,1,0,0,0,1,0,0,0,0,155,22,5,0,2,0,1,0,0,0,1,0,0,0,0,0,1,42,0,0,0,0,0,0,0,1,1,0,0,1,0,1,0,0,0,0,3,1,0,0,1,1,0,2,0,0,0,3,0,1,0,0,0,1,0,0,0,27,10,9,6,1,1,0,4,0,0,0,0,0,0,0,0,0,1,0,0,0,1,5,6,4,19,1,3,0,0,5,0,0,0,6 310 | 1,0,1,1,0,0,0,1,0,0,0,0,0,156,11,0,0,3,0,0,0,0,0,1,0,0,0,1,0,1,69,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,1,0,0,1,0,0,0,1,0,0,2,0,2,1,0,0,2,20,9,6,3,0,0,0,3,0,0,0,1,0,0,0,0,0,0,0,0,0,0,3,5,4,21,3,2,0,0,2,0,1,0,2 311 | 1,0,0,0,1,0,0,0,1,0,0,0,0,158,33,0,0,2,39,0,1,0,1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,1,0,1,1,0,0,3,1,0,0,2,0,1,0,1,1,1,0,0,0,16,10,5,1,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,4,5,2,17,0,0,0,0,3,1,0,0,0 312 | 1,0,1,1,0,0,0,1,0,0,0,0,0,158,31,0,0,4,4,0,0,0,1,1,0,0,0,0,0,1,73,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,1,0,0,3,1,0,0,2,0,1,0,1,1,1,0,0,0,16,10,5,1,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,4,5,2,17,0,0,0,0,3,1,0,0,0 313 | 1,0,0,0,1,0,0,0,1,0,0,0,0,158,29,0,0,6,-1,0,1,1,0,0,0,0,0,0,0,1,34,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,0,0,0,1,0,0,3,1,0,0,2,0,1,0,1,1,1,0,0,0,16,10,5,1,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,4,5,2,17,0,0,0,0,3,1,0,0,0 314 | 0,0,0,0,0,0,0,0,0,0,1,0,0,158,12,3,0,4,-1,1,0,0,0,1,1,0,0,0,0,1,30,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,3,0,0,0,1,0,0,3,1,0,0,2,0,1,0,1,1,1,0,0,0,16,10,5,1,0,0,0,4,0,0,0,0,0,0,0,1,0,0,0,0,0,0,4,5,2,17,0,0,0,0,3,1,0,0,0 315 | 1,0,1,1,0,0,0,1,0,0,0,0,0,159,15,2,8,3,0,0,0,0,1,1,0,0,0,1,0,1,65,0,0,0,0,0,0,1,0,1,0,0,0,1,0,0,0,0,0,3,1,0,0,0,0,1,1,0,0,0,2,0,0,0,2,0,2,0,0,0,21,9,8,4,1,1,1,5,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,7,1,23,0,3,0,0,3,0,0,0,10 316 | 0,1,0,1,1,0,0,0,0,0,0,0,1,159,32,0,0,3,9,0,0,0,0,0,0,0,1,1,0,1,125,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,0,0,3,1,0,0,0,0,1,1,0,0,0,2,0,0,0,2,0,2,0,0,0,21,9,8,4,1,1,1,5,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,7,1,23,0,3,0,0,3,0,0,0,10 317 | 0,1,1,1,0,0,1,0,0,0,0,0,0,159,16,11,0,3,0,0,1,1,0,1,0,0,0,0,0,1,63,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,2,0,0,0,0,0,1,1,0,0,0,2,0,0,0,2,0,2,0,0,0,21,9,8,4,1,1,1,5,0,0,0,0,0,0,0,0,1,0,0,0,0,1,3,7,1,23,0,3,0,0,3,0,0,0,10 318 | 1,0,0,0,1,0,0,0,1,0,0,0,0,160,17,0,0,3,-1,0,0,1,1,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,2,1,0,0,1,0,0,1,0,1,0,0,1,1,1,1,0,0,1,0,1,25,9,8,6,1,1,0,3,0,0,0,0,0,0,1,0,0,0,0,0,0,0,7,2,3,16,7,3,0,0,5,0,2,0,5 319 | 1,0,0,0,1,0,0,0,1,0,0,0,0,160,14,0,0,5,-1,0,0,0,1,1,0,1,0,0,0,1,70,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,3,0,0,0,1,0,0,1,0,1,0,0,1,1,1,1,0,0,1,0,1,25,9,8,6,1,1,0,3,0,0,0,0,0,0,1,0,0,0,0,0,0,0,7,2,3,16,7,3,0,0,5,0,2,0,5 320 | 0,1,1,0,0,1,0,0,0,0,0,0,0,160,17,0,0,3,0,0,1,0,0,1,0,0,0,1,0,0,44,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,0,1,0,1,0,0,1,1,1,1,0,0,1,0,1,25,9,8,6,1,1,0,3,0,0,0,0,0,0,1,0,0,0,0,0,0,0,7,2,3,16,7,3,0,0,5,0,2,0,5 321 | 1,0,0,0,1,0,0,0,1,0,0,0,0,162,8,1,0,3,0,0,1,1,0,1,0,0,0,0,0,0,89,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,1,0,0,2,0,0,3,0,0,0,0,1,0,2,1,0,1,0,0,2,21,10,7,3,0,0,0,3,0,0,0,0,1,0,0,0,0,0,0,0,0,0,8,4,5,11,12,0,0,0,2,4,2,0,0 322 | 1,0,0,0,1,0,0,0,1,0,0,0,0,162,13,0,0,2,0,0,0,0,1,1,0,0,1,0,0,1,19,0,0,0,0,0,0,1,1,0,0,0,0,0,1,0,0,0,0,2,1,0,0,2,0,0,3,0,0,0,0,1,0,2,1,0,1,0,0,2,21,10,7,3,0,0,0,3,0,0,0,0,1,0,0,0,0,0,0,0,0,0,8,4,5,11,12,0,0,0,2,4,2,0,0 323 | 1,0,0,0,1,0,0,0,1,0,0,0,0,162,9,0,0,2,0,0,1,0,0,0,0,0,0,0,0,0,3,0,1,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,2,0,0,3,0,0,0,0,1,0,2,1,0,1,0,0,2,21,10,7,3,0,0,0,3,0,0,0,0,1,0,0,0,0,0,0,0,0,0,8,4,5,11,12,0,0,0,2,4,2,0,0 324 | 1,0,0,0,1,0,0,0,1,0,0,0,0,163,15,3,0,3,0,1,1,1,0,0,0,0,0,0,0,1,53,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,1,0,0,3,1,0,2,0,0,0,0,0,1,0,1,1,0,1,0,0,23,10,9,3,1,0,0,4,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,5,3,14,4,1,0,0,1,0,2,1,4 325 | 1,0,0,0,1,0,0,0,1,0,0,0,0,163,35,5,0,2,8,1,0,1,0,1,0,0,0,0,0,1,37,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,0,0,0,3,1,0,2,0,0,0,0,0,1,0,1,1,0,1,0,0,23,10,9,3,1,0,0,4,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,5,3,14,4,1,0,0,1,0,2,1,4 326 | 0,1,0,0,0,0,0,0,0,0,0,1,0,163,13,0,0,3,6,0,1,0,1,0,1,0,0,0,0,1,135,0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,1,0,0,3,1,0,2,0,0,0,0,0,1,0,1,1,0,1,0,0,23,10,9,3,1,0,0,4,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,5,3,14,4,1,0,0,1,0,2,1,4 327 | 0,0,0,0,0,0,0,0,0,0,1,0,0,163,23,3,0,4,-2,0,0,0,0,0,0,1,0,1,0,1,20,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,2,0,0,1,3,1,0,2,0,0,0,0,0,1,0,1,1,0,1,0,0,23,10,9,3,1,0,0,4,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,5,3,14,4,1,0,0,1,0,2,1,4 328 | 1,0,1,0,0,1,0,0,0,0,0,0,0,164,12,0,0,3,0,0,0,0,0,1,1,0,0,0,0,1,13,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,2,0,0,1,0,0,0,2,0,0,0,1,0,2,0,0,0,22,9,8,4,0,1,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,5,3,20,2,0,0,0,1,0,2,0,0 329 | 1,0,1,0,0,1,0,0,0,0,0,0,0,164,5,0,0,2,-1,0,0,0,0,1,0,0,0,0,0,0,7,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,0,0,2,0,0,1,0,0,0,2,0,0,0,1,0,2,0,0,0,22,9,8,4,0,1,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,5,3,20,2,0,0,0,1,0,2,0,0 330 | 1,0,1,0,0,1,0,0,0,0,0,0,0,164,5,0,0,4,0,0,0,0,0,1,1,0,0,0,0,1,38,0,0,0,0,1,0,0,1,0,0,0,0,0,1,0,0,0,0,1,1,0,0,2,0,0,1,0,0,0,2,0,0,0,1,0,2,0,0,0,22,9,8,4,0,1,0,3,0,0,0,0,0,0,0,1,0,0,0,0,0,0,3,5,3,20,2,0,0,0,1,0,2,0,0 331 | 1,0,0,0,1,0,0,0,1,0,0,0,0,165,30,0,0,5,0,0,1,0,0,1,0,0,0,0,0,1,4,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,0,0,0,1,0,0,5,0,0,1,2,0,0,3,1,0,1,0,0,2,24,9,8,6,0,1,0,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0,5,8,6,4,6,0,0,0,2,3,0,0,2 332 | 1,0,0,0,1,0,0,0,1,0,0,0,0,166,14,0,0,3,-1,0,0,1,0,1,0,0,0,0,0,1,59,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,1,0,0,0,1,0,0,0,0,1,0,1,0,0,1,1,0,2,2,0,0,14,9,5,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,4,10,2,7,1,0,0,0,1,0,0 333 | 1,0,0,0,1,0,0,0,1,0,0,0,0,166,16,2,0,2,-1,0,0,0,1,1,0,0,0,1,0,0,29,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,3,0,0,0,1,0,0,0,0,1,0,1,0,0,1,1,0,2,2,0,0,14,9,5,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,10,4,10,2,7,1,0,0,0,1,0,0 334 | 1,0,0,0,1,0,0,0,1,0,0,0,0,167,24,0,0,2,0,0,1,0,0,1,0,0,0,0,0,1,61,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,1,2,1,0,0,4,0,0,1,0,0,0,1,0,0,1,3,0,2,0,0,2,20,10,7,2,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,1,5,11,3,14,7,2,0,0,2,1,2,0,2 335 | 1,0,0,0,1,0,0,0,1,0,0,0,0,167,17,0,0,2,6,0,1,1,0,1,0,0,0,0,0,1,61,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,4,0,0,1,0,0,0,1,0,0,1,3,0,2,0,0,2,20,10,7,2,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,0,1,5,11,3,14,7,2,0,0,2,1,2,0,2 336 | 0,0,0,0,0,0,0,1,0,0,0,0,0,168,17,9,0,2,0,1,1,0,0,0,1,0,0,0,0,1,123,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,3,0,0,2,0,1,0,2,0,0,0,0,0,1,0,0,0,21,9,5,4,0,0,0,5,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,5,14,0,1,0,0,3,0,0,0,1 337 | 0,0,0,0,0,0,0,1,0,0,0,0,0,168,11,0,0,1,-1,0,0,0,0,1,1,0,0,0,0,1,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,1,0,0,3,0,0,2,0,1,0,2,0,0,0,0,0,1,0,0,0,21,9,5,4,0,0,0,5,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,5,14,0,1,0,0,3,0,0,0,1 338 | 0,0,0,0,0,0,0,1,0,0,0,0,0,168,28,0,0,1,-1,0,0,0,0,0,0,0,0,1,0,0,11,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,3,0,0,2,0,1,0,2,0,0,0,0,0,1,0,0,0,21,9,5,4,0,0,0,5,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,8,5,14,0,1,0,0,3,0,0,0,1 339 | 0,0,1,0,0,0,1,0,0,0,0,0,0,169,23,4,1,3,-1,0,0,0,1,1,0,0,1,0,0,1,47,0,0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,1,1,0,0,3,0,0,2,0,1,0,4,0,1,1,1,0,2,2,1,0,25,10,8,6,0,1,0,4,0,0,0,0,0,0,0,0,0,1,0,0,0,2,6,5,2,19,3,2,0,0,4,1,1,0,14 340 | 1,0,0,0,1,0,0,0,1,0,0,0,0,169,13,0,3,3,-1,0,0,0,0,1,0,0,1,0,0,1,56,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,0,3,0,0,2,0,1,0,4,0,1,1,1,0,2,2,1,0,25,10,8,6,0,1,0,4,0,0,0,0,0,0,0,0,0,1,0,0,0,2,6,5,2,19,3,2,0,0,4,1,1,0,14 341 | 1,0,0,0,1,0,0,0,1,0,0,0,0,169,12,0,1,3,-1,1,0,0,0,0,0,0,0,1,0,0,99,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,2,1,0,0,3,0,0,2,0,1,0,4,0,1,1,1,0,2,2,1,0,25,10,8,6,0,1,0,4,0,0,0,0,0,0,0,0,0,1,0,0,0,2,6,5,2,19,3,2,0,0,4,1,1,0,14 342 | 1,0,0,0,1,0,0,0,1,0,0,0,0,169,12,0,0,4,-1,0,1,1,0,0,0,0,0,0,0,1,95,0,0,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,2,1,0,0,3,0,0,2,0,1,0,4,0,1,1,1,0,2,2,1,0,25,10,8,6,0,1,0,4,0,0,0,0,0,0,0,0,0,1,0,0,0,2,6,5,2,19,3,2,0,0,4,1,1,0,14 343 | 0,0,0,0,1,1,0,0,0,0,0,0,0,170,10,3,0,6,0,0,0,0,0,0,0,0,0,0,1,0,53,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,0,0,0,2,0,0,1,0,0,1,3,0,0,0,0,0,3,1,0,0,26,10,8,6,0,0,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,4,11,3,11,2,2,0,0,2,0,2,0,3 344 | 1,0,0,0,1,0,0,0,1,0,0,0,0,171,16,0,2,2,-1,0,0,0,0,1,0,0,0,1,0,0,51,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,3,1,0,0,2,1,0,1,0,0,1,1,1,0,1,0,1,2,1,0,1,28,10,9,7,1,0,0,5,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,8,3,18,1,2,0,0,2,0,0,1,0 345 | 1,0,0,0,1,0,0,0,1,0,0,0,0,171,29,0,0,2,-1,0,0,0,1,1,0,0,0,0,0,1,24,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,1,0,0,2,1,0,1,0,0,1,1,1,0,1,0,1,2,1,0,1,28,10,9,7,1,0,0,5,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,8,3,18,1,2,0,0,2,0,0,1,0 346 | 1,0,0,0,1,0,0,0,1,0,0,0,0,171,35,0,0,3,-1,0,0,0,1,1,0,0,0,0,0,1,45,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,2,1,0,1,0,0,1,1,1,0,1,0,1,2,1,0,1,28,10,9,7,1,0,0,5,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,8,3,18,1,2,0,0,2,0,0,1,0 347 | 0,0,0,0,0,0,0,1,0,0,0,0,0,171,19,0,0,2,0,0,0,0,0,1,0,1,0,0,0,0,5,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,2,1,0,1,0,0,1,1,1,0,1,0,1,2,1,0,1,28,10,9,7,1,0,0,5,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,8,3,18,1,2,0,0,2,0,0,1,0 348 | 1,0,0,0,1,0,0,0,1,0,0,0,0,172,25,0,0,4,-1,1,0,0,0,1,0,0,0,0,0,1,82,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,3,0,0,2,0,1,1,2,0,1,0,0,1,3,1,1,0,21,9,7,4,1,1,0,3,0,0,1,0,0,0,0,0,0,0,0,0,0,0,4,4,2,10,1,3,1,0,2,1,1,0,5 349 | 0,1,0,0,0,0,0,0,0,0,1,0,0,173,23,2,0,3,0,1,1,0,1,0,0,0,0,0,0,0,43,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,2,0,0,0,0,0,0,2,1,0,1,0,0,2,1,0,0,26,10,7,5,0,1,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,1,2,5,1,20,0,1,0,0,3,0,0,0,6 350 | 1,0,0,0,1,0,0,0,1,0,0,0,0,175,17,0,0,6,0,0,1,0,0,1,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,24,8,8,4,0,0,0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0,3,8,1,12,2,2,0,0,3,0,0,0,0 351 | 1,0,0,0,1,0,0,0,1,0,0,0,0,176,25,0,2,4,0,0,0,1,0,1,0,1,0,0,0,0,39,0,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,3,1,0,0,0,0,0,2,2,0,0,1,1,0,0,0,1,2,2,1,0,27,10,9,6,1,1,0,3,1,0,0,0,0,0,0,0,0,0,0,0,0,0,4,1,3,17,1,4,0,0,3,0,1,0,1 352 | 1,0,0,0,1,0,0,0,1,0,0,0,0,176,9,0,0,3,0,0,1,0,0,0,0,0,1,0,0,1,36,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,0,2,2,0,0,1,1,0,0,0,1,2,2,1,0,27,10,9,6,1,1,0,3,1,0,0,0,0,0,0,0,0,0,0,0,0,0,4,1,3,17,1,4,0,0,3,0,1,0,1 353 | 0,0,0,0,0,0,0,1,0,0,0,0,0,176,16,0,0,3,1,0,1,0,1,0,0,0,0,0,0,1,117,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,1,0,1,0,0,0,0,0,2,2,0,0,1,1,0,0,0,1,2,2,1,0,27,10,9,6,1,1,0,3,1,0,0,0,0,0,0,0,0,0,0,0,0,0,4,1,3,17,1,4,0,0,3,0,1,0,1 354 | 1,0,1,0,0,0,0,1,0,0,0,0,0,178,17,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0,93,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,30,10,10,6,0,0,0,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,4,12,1,21,0,0,0,0,4,0,0,0,2 355 | 1,0,0,0,1,0,0,0,1,0,0,0,0,179,17,0,0,4,0,0,1,0,0,1,0,0,0,0,0,1,13,0,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,1,0,0,0,0,0,2,0,0,0,2,0,1,0,1,1,7,0,0,0,22,9,7,3,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,10,0,16,0,1,0,0,2,0,1,0,1 356 | 1,0,1,1,0,0,0,1,0,0,0,0,0,180,27,0,0,3,1,1,0,0,0,1,0,0,0,0,0,1,122,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,3,1,0,0,1,0,0,1,0,0,1,3,0,1,1,0,0,3,0,0,1,30,10,9,7,1,0,0,2,0,0,0,0,0,0,0,0,0,0,1,0,0,1,5,7,3,17,5,1,0,0,4,0,1,0,7 357 | 1,0,0,0,1,0,0,0,1,0,0,0,0,181,18,0,0,2,0,0,1,1,0,1,0,0,0,0,0,0,55,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,1,0,0,0,1,0,1,2,0,1,1,0,2,0,1,0,4,0,0,0,25,10,9,4,0,0,0,3,0,0,0,0,1,0,0,0,0,0,0,0,0,0,3,5,2,22,1,0,0,0,2,0,1,0,8 358 | 1,0,1,1,0,0,0,1,0,0,0,0,0,182,15,0,0,2,3,0,0,1,0,1,0,0,0,0,1,1,120,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,2,0,0,4,0,0,2,3,0,2,0,1,1,1,0,2,0,22,8,7,6,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,4,14,0,2,0,0,1,0,0,1,1 359 | 0,0,0,0,0,0,0,0,0,1,0,0,0,182,22,0,1,2,5,0,0,0,0,1,0,0,0,0,0,1,66,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,0,1,2,0,0,4,0,0,2,3,0,2,0,1,1,1,0,2,0,22,8,7,6,0,0,0,3,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,4,14,0,2,0,0,1,0,0,1,1 360 | 0,0,0,0,0,0,0,0,0,0,0,0,1,184,16,0,4,4,0,0,1,0,0,1,0,0,0,0,0,1,182,0,0,1,0,0,0,0,0,0,0,1,0,0,1,0,0,1,0,0,1,1,0,1,0,0,0,0,0,0,3,0,0,0,0,1,0,0,0,0,36,10,10,8,0,0,0,5,0,0,0,0,0,0,0,0,0,1,0,0,0,1,2,11,4,12,0,5,0,0,2,0,0,0,3 361 | 0,0,0,0,0,1,0,0,0,0,0,0,0,184,10,0,0,1,1,0,0,0,0,1,0,0,0,1,0,1,30,0,1,1,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,1,0,0,0,1,0,0,0,0,0,0,3,0,0,0,0,1,0,0,0,0,36,10,10,8,0,0,0,5,0,0,0,0,0,0,0,0,0,1,0,0,0,1,2,11,4,12,0,5,0,0,2,0,0,0,3 362 | 0,0,0,0,0,0,0,1,0,0,0,0,0,185,20,0,0,2,4,0,1,0,1,1,0,0,0,0,0,1,72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,1,0,0,3,0,0,0,3,0,0,0,1,1,3,1,0,0,27,10,9,6,1,1,0,3,0,0,0,0,0,0,0,0,0,1,0,0,0,0,3,11,4,16,2,4,0,0,3,0,0,0,0 363 | 1,0,1,0,0,1,0,0,0,0,0,0,0,186,24,2,0,3,0,1,0,0,0,0,0,0,0,1,0,1,95,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,1,0,0,1,0,1,1,0,0,0,2,0,0,1,0,2,0,0,0,0,29,10,9,6,0,1,0,4,0,0,0,0,0,0,0,0,0,0,0,0,1,0,3,10,5,9,0,1,0,0,3,0,0,0,2 364 | 1,0,1,0,0,0,0,1,0,0,0,0,0,186,9,3,0,2,1,1,0,0,1,0,0,0,0,0,0,1,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,1,0,0,1,0,1,1,0,0,0,2,0,0,1,0,2,0,0,0,0,29,10,9,6,0,1,0,4,0,0,0,0,0,0,0,0,0,0,0,0,1,0,3,10,5,9,0,1,0,0,3,0,0,0,2 365 | 1,0,1,1,0,0,0,1,0,0,0,0,0,187,25,0,3,2,0,1,0,0,0,1,0,0,0,1,0,1,71,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,1,2,1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,1,2,0,0,23,10,8,4,1,1,0,5,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,9,14,5,0,0,0,0,0,3,0,4 366 | 0,0,1,1,0,1,0,0,0,0,0,0,0,187,13,0,0,3,-3,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,0,0,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,1,2,0,0,23,10,8,4,1,1,0,5,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,9,14,5,0,0,0,0,0,3,0,4 367 | 1,0,0,0,1,0,0,0,1,0,0,0,0,187,18,0,0,3,-1,0,1,0,1,1,0,0,0,0,0,1,52,0,1,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,2,1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,1,2,0,0,23,10,8,4,1,1,0,5,1,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,9,14,5,0,0,0,0,0,3,0,4 368 | 0,1,1,1,0,0,0,0,0,0,0,0,1,188,21,15,7,5,2,1,0,0,0,0,0,0,1,0,0,1,55,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,1,0,0,0,1,2,0,2,0,1,0,0,0,0,0,3,0,0,0,32,10,10,7,1,0,0,5,1,0,0,0,0,0,0,0,0,0,0,0,0,0,4,10,5,18,0,3,0,0,3,0,1,0,3 369 | 1,0,1,1,0,0,1,0,0,0,0,0,0,190,15,0,0,3,5,0,0,0,0,1,0,0,0,1,0,1,64,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,1,0,0,2,0,0,2,0,0,0,2,0,1,0,0,1,2,0,1,0,32,10,8,7,0,1,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,6,6,24,0,0,0,0,1,0,2,0,1 370 | 1,0,1,1,0,0,1,0,0,0,0,0,0,190,22,0,0,1,3,0,0,0,0,0,0,0,0,1,0,1,34,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,2,1,0,0,2,0,0,2,0,0,0,2,0,1,0,0,1,2,0,1,0,32,10,8,7,0,1,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,6,6,24,0,0,0,0,1,0,2,0,1 371 | 1,0,1,1,0,0,1,0,0,0,0,0,0,190,16,0,5,2,5,0,0,0,0,1,0,0,0,1,0,1,43,2,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,2,0,0,2,0,0,0,2,0,1,0,0,1,2,0,1,0,32,10,8,7,0,1,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,6,6,24,0,0,0,0,1,0,2,0,1 372 | 1,0,1,1,0,0,1,0,0,0,0,0,0,190,11,0,2,4,3,0,0,0,1,1,0,0,0,1,0,1,37,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,0,1,0,0,2,0,0,2,0,0,0,2,0,1,0,0,1,2,0,1,0,32,10,8,7,0,1,0,5,0,0,0,0,0,0,0,0,0,0,1,0,0,0,3,6,6,24,0,0,0,0,1,0,2,0,1 373 | 1,0,1,1,0,0,1,0,0,0,0,0,0,191,27,0,0,4,-3,1,0,0,0,1,0,0,0,0,0,0,41,0,1,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,2,0,0,1,1,1,0,0,0,0,20,9,6,3,0,1,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,4,7,1,19,3,1,0,0,2,0,2,0,6 374 | 0,0,0,0,0,0,0,1,0,0,0,0,0,191,13,1,0,2,1,0,0,0,0,1,0,0,1,0,0,1,23,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,2,0,0,1,1,1,0,0,0,0,20,9,6,3,0,1,0,2,0,1,0,0,0,0,0,0,0,0,0,0,0,0,4,7,1,19,3,1,0,0,2,0,2,0,6 375 | 1,0,0,0,1,0,0,0,1,0,0,0,0,192,14,0,0,5,0,0,0,0,1,0,0,0,0,0,0,0,44,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,1,3,1,0,0,1,0,0,1,0,0,1,5,0,0,0,0,1,2,0,0,0,16,8,7,1,0,0,0,2,0,0,0,0,0,1,0,0,0,0,0,0,0,0,3,7,2,18,2,1,0,0,3,0,0,0,0 376 | -------------------------------------------------------------------------------- /data/teamData.csv: -------------------------------------------------------------------------------- 1 | team_id,is_mit,is_harvard,years_since_graduation,is_mba,is_phd,is_stem,skills_soft,pic_rating_total_3,idea_rating_2min,topic_inessential,topic_essentialperiodic,topic_essentialdaily,wd_speaking_to_you,wd_questions,wd_adjectives,positive_sentiment,nomination,success,finalist 2 | 1,0,0,8,0,1,1,0.142857142857143,0,0.9,0,1,0,0,0,0.333333333333333,0.5,0,0,0 3 | 2,1,0,1.33333333333333,0.666666666666667,0.333333333333333,0.333333333333333,0.142857142857143,0,0.8,0,0,0,0,0,0.333333333333333,0,0,0,0 4 | 3,1,0,3,1,0,0,0.19047619047619,0.333333333333333,0.9,1,0,0,0,0,0.333333333333333,0.666666666666667,0,0,0 5 | 4,1,0,-1,1,1,0,0.142857142857143,0,0.6,1,0,0,0,0,0.5,0.5,0,0,0 6 | 5,1,0,0,0.5,0,0.5,0.214285714285714,0,0.7,0,1,0,0,0,0.666666666666667,0,0,0,0 7 | 6,1,0,-0.5,0,0,1,0,0,0.9,0,1,0,0,0.25,1,0,0,1,0 8 | 7,0.5,0,-1.5,0,0,0.5,0.214285714285714,0,0.9,0,1,0,0,0,0,0.5,0,0,0 9 | 8,0.25,0.25,0.5,0.25,0.5,0.5,0.0714285714285714,0,0.7,0,1,0,0,0,0,0,0,1,0 10 | 9,0.5,0,4.5,0,0.5,0.5,0.214285714285714,0,1,0,0,1,0,0,0,0.2,0,0,0 11 | 10,1,0,-2,0,0,0,0.142857142857143,0,0.7,0,1,0,0.25,0,0.75,0.25,0,0,0 12 | 11,1,0,0,0,0,0,0.142857142857143,1,1,1,0,0,0,0,1.5,0,1,0,0 13 | 12,0.5,0.5,-0.5,1,0,0,0.142857142857143,0,0.9,1,0,0,0,0.25,0.5,1,0,1,0 14 | 13,1,0,0,1,0,0,0.142857142857143,0,0.9,0,1,0,0,0,0.428571428571429,0.571428571428571,0,0,0 15 | 14,1,0,4.33333333333333,1,0.333333333333333,0,0.0952380952380952,0,0.8,0,1,0,0,0,0.333333333333333,0.333333333333333,0,0,0 16 | 15,0.5,0,0,1,0,0.5,0.285714285714286,0,0.8,0,1,0,0,0,1,0.5,0,0,0 17 | 16,0,0,-0.666666666666667,0,0,1,0,0,0.9,0,1,0,0,0,0.666666666666667,0,0,0,0 18 | 17,1,0,4,0.5,0.5,0.5,0,0,0.8,0,1,0,0,0,0,0,1,0,0 19 | 18,0,1,0,1,0,0,0.142857142857143,1,0.8,0,0,1,0,0,0,0,0,0,0 20 | 19,1,0,1,1,0,0,0.0714285714285714,0,0.9,0,1,0,0,0,1.5,0.5,0,1,0 21 | 20,1,0,-1,0,0,1,0,0,0.8,0,0,1,0,0,0,0.25,0,0,0 22 | 21,1,0,-1,1,0,0,0.142857142857143,1,0.8,1,0,0,0,0,0.75,0,0,0,0 23 | 22,0.5,0.5,0,0.5,0,0.5,0.285714285714286,0,1,1,0,0,0,0.666666666666667,1,0.333333333333333,0,1,0 24 | 23,0.5,0,0.5,0.75,0,0.25,0.0714285714285714,0.25,0.7,0,0,1,0,0,0.5,0,0,0,0 25 | 24,0.5,0.5,1,1,0,0,0.357142857142857,0,0.8,1,0,0,0,0,0.666666666666667,1,0,0,0 26 | 25,1,0,1.66666666666667,0.666666666666667,0.333333333333333,0.333333333333333,0.142857142857143,0,0.8,0,0,1,0,0,0.6,0.4,1,0,0 27 | 26,0.5,0.5,0,0,1,1,0.0714285714285714,0,1,0,1,0,0,0.666666666666667,0.333333333333333,0,1,1,0 28 | 27,1,0,-1,1,0,0,0.238095238095238,0.666666666666667,0.9,0,1,0,0,0.333333333333333,0.333333333333333,0,0,0,0 29 | 28,1,0,-1,0,1,1,0.285714285714286,0,0.5,0,1,0,0.25,0,0,0.5,0,0,0 30 | 29,1,0,0,1,0,0,0.285714285714286,0,0.7,0,1,0,0.2,0.2,0.2,0.4,0,0,0 31 | 30,0.5,0,-1,0,0.5,1,0.142857142857143,0.5,1,0,0,1,0.333333333333333,0,0.666666666666667,1,1,0,0 32 | 32,0.666666666666667,0.333333333333333,0.333333333333333,0.666666666666667,0,0,0.142857142857143,0,0.6,1,0,0,0,0,0.666666666666667,0.333333333333333,0,0,0 33 | 33,0.333333333333333,0,4,0.333333333333333,0,0.666666666666667,0.142857142857143,0.333333333333333,0.6,0,0,1,0,0.25,0.5,0.25,0,0,0 34 | 34,1,0,0,1,0,0,0.285714285714286,1,0.9,0,1,0,0,0,1,0,1,1,0 35 | 35,0.5,0,3,1,0.5,0.5,0.142857142857143,0,0.7,0,0,1,0,0,0.25,0,1,0,1 36 | 36,1,0,1,0,0.333333333333333,1,0.0952380952380952,0,1,0,1,0,0,0,0.666666666666667,0,1,0,0 37 | 37,1,0,0.5,0.75,0,0,0.178571428571429,0,1,0,1,0,0,0,0,0.25,0,0,0 38 | 38,0,0,0,1,0,0,0,0,1,0,1,0,0,0,1,0.333333333333333,0,1,0 39 | 39,1,0,3.5,1,0,0,0.142857142857143,0,0.7,0,0,0,0,0,0.5,0.5,0,0,0 40 | 40,1,0,-1,1,0,0,0.142857142857143,0,0.9,1,0,0,0,0,1.66666666666667,1,1,0,0 41 | 41,0.333333333333333,0,2.66666666666667,0.333333333333333,0,0,0.238095238095238,0,0.7,1,0,0,0,0.2,0.4,0.4,0,0,0 42 | 42,0.5,0.5,-0.5,0.5,0,0.5,0.0714285714285714,0,0.7,1,0,0,0,0.666666666666667,1.33333333333333,0.333333333333333,1,1,0 43 | 43,1,0,0,0,0,1,0.142857142857143,0,0.7,1,0,0,0.4,0.4,0.6,0.4,0,0,0 44 | 44,1,0,-1,1,0,0,0.428571428571429,0,0.7,0,0,0,0,0.333333333333333,1,0,0,1,0 45 | 45,0.5,0.25,0.5,0.25,0.75,0.5,0.0714285714285714,0.25,1,0,1,0,0,0,0.666666666666667,0.333333333333333,1,1,0 46 | 46,1,0,5.25,0.25,0.5,0.75,0.0714285714285714,0,0.7,0,1,0,0,0,0.666666666666667,0.333333333333333,0,0,0 47 | 47,1,0,1,0,0.5,1,0.285714285714286,0,0.7,1,0,0,0,0,1,0,0,0,0 48 | 48,1,0,0.666666666666667,0.666666666666667,0.666666666666667,0.333333333333333,0.19047619047619,0.333333333333333,0.8,0,1,0,0,0,0.5,0,1,0,0 49 | 49,1,0,-1,0,1,1,0,1,0.8,1,0,0,0,0.5,0.25,0.5,0,1,0 50 | 50,1,0,0,1,0,0,0.142857142857143,0,0.8,0,1,0,0,0,0.75,0.75,0,0,0 51 | 51,1,0,0,1,0,0,0.142857142857143,0,1,0,0,1,0,0,0.75,0.5,1,0,0 52 | 52,0.5,0.5,0.5,0,1,0.5,0,0,0.9,0,1,0,0,0,0,0,1,1,0 53 | 53,1,0,0,1,0,0,0.285714285714286,0,0.9,0,0,1,0.333333333333333,0,0.666666666666667,0,0,0,0 54 | 54,1,0,-0.5,0.5,0,0,0.214285714285714,0.5,0.6,0,0,1,0,0,0.25,0,0,0,0 55 | 55,1,0,1.66666666666667,0,0.333333333333333,1,0.0952380952380952,0,0.8,1,0,0,0,0,0.333333333333333,0,0,0,0 56 | 57,1,0,-1,1,0,0,0.107142857142857,0.5,0.9,0,0,1,0,0,1.5,0,1,1,0 57 | 58,1,0,-1,0,0,1,0.285714285714286,0,0.9,0,1,0,0.2,0,0.4,0,0,1,0 58 | 59,1,0,-1,0,1,1,0,0,0.7,0,0,1,0,0,0.666666666666667,0,0,0,0 59 | 60,1,0,2,0,0,1,0.142857142857143,0,0.7,0,1,0,0.285714285714286,0.285714285714286,0.142857142857143,0.142857142857143,0,0,0 60 | 61,1,0,-1,1,0,0,0.142857142857143,0.5,0.3,0,0,1,0,0,0.833333333333333,0.166666666666667,0,0,0 61 | 62,0.5,0,2.5,0.5,0.5,0.5,0.0714285714285714,0,0.8,1,0,0,0,0,0.333333333333333,0,1,0,0 62 | 63,1,0,-0.5,0,0,1,0.0714285714285714,0,0.6,0,1,0,0.4,0.2,0.8,0.2,1,0,0 63 | 64,0,0,2,1,0,0,0.285714285714286,1,0.6,1,0,0,0,0,0.333333333333333,0.666666666666667,0,0,0 64 | 66,1,0,0,1,0,0,0.285714285714286,1,0.7,1,0,0,0,0,0.25,0.5,0,0,0 65 | 67,1,0,-1,0.5,0.5,0.5,0.0714285714285714,0,0.9,0,1,0,0,0,0.5,0.25,1,1,0 66 | 68,1,0,8,0.5,0.5,0.5,0.214285714285714,0.5,0.7,0,1,0,0,0,0,0.333333333333333,0,0,0 67 | 69,1,0,-1,1,0,0,0.285714285714286,0,0.9,0,1,0,0,0,0.166666666666667,0.333333333333333,0,1,0 68 | 70,1,0,0,0.5,0,0,0.285714285714286,0,0.9,0,1,0,0,0,0.333333333333333,0,0,0,0 69 | 71,1,0,2,1,0,0,0.142857142857143,0,0.7,0,0,1,0,0,0,0,1,0,0 70 | 73,1,0,-1,1,0,0,0.0952380952380952,0.333333333333333,0.6,0,1,0,0,0.2,0.6,0.2,0,0,0 71 | 74,1,0,-0.5,0,0,1,0,0,0.8,0,1,0,0,0.2,0.4,0,0,1,0 72 | 75,1,0,0,0.5,0,0.5,0.0714285714285714,0,0.7,0,1,0,0,0.333333333333333,0.666666666666667,0.666666666666667,0,0,0 73 | 76,1,0,-1,1,0,0,0.142857142857143,0,0.5,1,0,0,0,1,0,1,0,0,0 74 | 77,0.333333333333333,0,0.666666666666667,0.666666666666667,0,0.333333333333333,0.19047619047619,0,0.7,0,1,0,0,0,0,0,0,1,0 75 | 78,0.5,0,3,0.5,0.5,0.5,0.142857142857143,0,0.9,0,0,0,0,0.333333333333333,0.333333333333333,0,0,1,0 76 | 79,1,0,0,1,0,0,0.428571428571429,0,0.8,0,1,0,0,0,0.666666666666667,0,0,0,0 77 | 80,1,0,-1,1,0,0,0.142857142857143,0,0.7,0,0,1,0,0,1.33333333333333,0.333333333333333,1,0,1 78 | 81,1,0,-1,1,0,0,0.285714285714286,0,0.8,1,0,0,0,0.333333333333333,0.333333333333333,0.333333333333333,0,0,0 79 | 82,1,0,2,0,0,1,0,0,0.9,0,1,0,0.2,0.2,0,0,0,0,0 80 | 83,1,0,-0.333333333333333,1,0,0,0.19047619047619,0.666666666666667,0.7,0,1,0,0,0,0.25,0,1,0,0 81 | 85,1,0,9,1,0,0,0.0714285714285714,1,0.5,0,1,0,0,0,0.333333333333333,0.166666666666667,1,0,0 82 | 86,0.5,0,3,0,0.5,1,0,0,0.7,0,1,0,0,0,0,0,0,0,0 83 | 87,0.25,0,1,0,0.25,1,0.0357142857142857,0,1,1,0,0,0,0,0,0.5,0,0,0 84 | 88,1,0,0,0,1,1,0.0714285714285714,0.5,0.7,0,1,0,0,0,0.25,0,1,0,0 85 | 89,1,0,7,0,0,0,0,0,0.9,0,1,0,0,0,0.5,0,0,0,0 86 | 90,1,0,19,1,0,0,0.285714285714286,0.5,0.5,0,1,0,0,0,0.666666666666667,0.333333333333333,0,0,0 87 | 91,1,0,-0.666666666666667,0.333333333333333,0.333333333333333,0.666666666666667,0.0476190476190476,0.333333333333333,0.9,1,0,0,0.333333333333333,0.166666666666667,0.5,0.166666666666667,0,1,0 88 | 92,1,0,0,0.5,0.5,0,0.0714285714285714,1,0.6,0,1,0,0,0,0.2,0,0,0,0 89 | 94,1,0,-4,0,1,1,0,0,0.8,0,0,1,0,0,0.4,0,0,0,0 90 | 95,0.5,0,0.5,0,0,1,0.285714285714286,0,0.9,0,1,0,0.2,0,0.4,0,0,0,0 91 | 96,1,0,0,1,0,0,0.142857142857143,0,0.7,0,0,1,0,0,1,0,1,0,0 92 | 97,1,0,-0.333333333333333,1,0,0,0.0952380952380952,0.333333333333333,0.7,0,1,0,0,0,0.333333333333333,0,0,1,0 93 | 98,0.25,0,-1.75,0.5,0.5,0,0.178571428571429,0.5,0.9,0,1,0,0,0,0.5,0.25,0,0,0 94 | 99,1,0,1,1,0,0,0.285714285714286,0,0.9,0,1,0,0.5,0.5,0,0.25,0,0,0 95 | 100,1,0,-0.2,0.2,0,0.6,0.0571428571428571,0,0.8,0,1,0,0,0,1,0.25,1,1,0 96 | 101,0.5,0.5,-2,0,0.5,0.5,0.142857142857143,1,0.7,1,0,0,0,0,1.5,0.5,1,0,0 97 | 102,0,1,-1,0,1,0,0,0,0.9,0,1,0,0,0,0,0.25,1,0,0 98 | 103,1,0,0,1,0,0,0.142857142857143,1,0.8,0,0,0,0,0.5,1,1,1,0,0 99 | 104,0.333333333333333,0.666666666666667,1,0.333333333333333,0.333333333333333,0.333333333333333,0.0952380952380952,0.666666666666667,0.9,0,1,0,0,0.333333333333333,1,0,0,0,0 100 | 105,1,0,0,1,0,0,0.142857142857143,1,0.8,0,1,0,0,0,0.25,0.25,0,0,0 101 | 106,1,0,5,0,1,1,0,1,0.9,0,1,0,0,0.333333333333333,1,0,0,0,0 102 | 107,1,0,0,1,0,0,0.142857142857143,0,0.9,1,0,0,0.5,0,0.25,0.25,0,0,0 103 | 108,1,0,-2.5,0.5,0.5,0.5,0.142857142857143,0,0.7,1,0,0,0,0.2,0.6,0.2,0,1,0 104 | 109,0,0,4,0,1,1,0,0,0.8,0,1,0,0.166666666666667,0,0,0.5,0,0,0 105 | 111,1,0,0.333333333333333,0.333333333333333,1,0.666666666666667,0,0.333333333333333,0.8,0,1,0,0,0,0,0,1,0,0 106 | 112,1,0,7.5,0.5,0.5,1,0.142857142857143,0.5,0.9,0,1,0,0,0,0,0,1,1,0 107 | 113,0.666666666666667,0,0.333333333333333,0.333333333333333,0,0.333333333333333,0.142857142857143,0,0.9,0,1,0,0,0,0.5,0,0,0,0 108 | 114,1,0,-0.5,0.5,0,0,0.0714285714285714,0,0.8,1,0,0,0,0.333333333333333,0.333333333333333,0.333333333333333,0,1,0 109 | 115,0,0,-1,0,0,1,0.285714285714286,0,0.7,0,1,0,0,0,1.33333333333333,0,0,0,0 110 | 116,1,0,-1,1,0,0,0.214285714285714,0.5,1,0,1,0,0,0.2,0.6,0,0,0,0 111 | 117,1,0,0,1,0,0,0.142857142857143,1,0.9,0,0,1,0,1,0,1,0,0,0 112 | 118,0,0,0,0,0,1,0,0,1,0,1,0,0,0,0.5,0,1,0,1 113 | 119,1,0,-1.5,0,0.5,1,0.142857142857143,0,0.8,0,1,0,0,0.2,0,0.2,1,1,1 114 | 120,1,0,-0.5,0.5,0.5,0.5,0.142857142857143,0.5,0.8,1,0,0,0,0,0.25,0,0,0,0 115 | 121,0.5,0,2.25,0.5,0,0,0.107142857142857,0,0.9,0,1,0,0,0.2,0.4,0.4,0,0,0 116 | 122,1,0,-1,1,0,0,0.25,0.5,0.9,1,0,0,0,0,0,1,0,0,0 117 | 123,0.5,0,2.5,1,0,0,0.0714285714285714,0.5,0.6,0,0,0,0,0.25,0.25,0,0,0,0 118 | 124,1,0,0,1,0,0,0.142857142857143,0,0.8,0,1,0,0,0,0.5,0.25,0,0,0 119 | 125,1,0,0,0,0,0,0.428571428571429,0,0.8,0,0,1,0,0,0.666666666666667,0.333333333333333,1,0,0 120 | 126,1,0,2,0.666666666666667,0,0.333333333333333,0.0952380952380952,0.333333333333333,0.7,0,1,0,0,0,0.6,0,1,1,0 121 | 127,0.333333333333333,0,-1,0.333333333333333,0.333333333333333,0.666666666666667,0.238095238095238,0.333333333333333,0.8,0,1,0,0,0.5,0,0,0,1,0 122 | 129,0.5,0.5,-1,0,0,1,0.0714285714285714,0,0.9,0,1,0,0,0,1,0.5,1,1,1 123 | 130,1,0,0,0,0,1,0.142857142857143,0,0.9,1,0,0,0,0,0,0,1,1,1 124 | 131,1,0,-1,0,0.5,1,0.214285714285714,0,0.8,0,0,0,0,0,0.666666666666667,0.333333333333333,0,0,0 125 | 132,1,0,-1,1,0,0,0.142857142857143,0,0.7,0,1,0,0.4,0.6,0.4,0.2,0,0,0 126 | 133,1,0,-1.66666666666667,0.333333333333333,1,0,0.0952380952380952,0.333333333333333,0.8,0,1,0,0,0.5,1.5,0.5,1,0,0 127 | 134,1,0,-2,0,0,1,0.142857142857143,0,0.8,1,0,0,0.285714285714286,0,0.142857142857143,0.142857142857143,0,1,0 128 | 135,1,0,-0.5,0,0.5,1,0,0,0.8,0,1,0,0,0,0.666666666666667,0,0,1,0 129 | 136,1,0,0,0,0,1,0,0,0.7,1,0,0,0.333333333333333,0.166666666666667,0.333333333333333,0.666666666666667,1,0,0 130 | 137,0.5,0.5,0,0.5,0,0,0.285714285714286,0,0.8,0,1,0,0,0,0.5,0,1,0,0 131 | 138,1,0,0,1,0,0,0.142857142857143,1,0.8,1,0,0,0,0,0.75,0.5,0,0,0 132 | 139,1,0,3.66666666666667,0.666666666666667,0,0.333333333333333,0.0952380952380952,0.666666666666667,0.8,0,1,0,0,0,0.25,0.5,0,0,0 133 | 140,0.5,0.5,2.5,0,0,1,0.142857142857143,0,0.9,0,0,1,0,0.333333333333333,1,0.333333333333333,0,0,0 134 | 141,0.333333333333333,0,12.3333333333333,0,1,0.666666666666667,0.0476190476190476,0.333333333333333,0.9,0,1,0,0,0.166666666666667,0,0,0,0,0 135 | 142,1,0,0,1,0,0,0.428571428571429,1,0.9,0,1,0,0,0,0.2,0.4,1,1,0 136 | 143,0.333333333333333,0,19.3333333333333,0,1,0.333333333333333,0,0.666666666666667,0.7,0,1,0,0,0,0.2,0.4,1,0,0 137 | 144,1,0,-1,1,0,0,0.142857142857143,0.666666666666667,1,0,1,0,0.5,0,0.25,0,0,0,0 138 | 145,0.75,0.25,8.75,0.75,0,0,0.178571428571429,0.5,0.9,0,1,0,0,0,0.5,0.25,1,0,0 139 | 146,1,0,-0.333333333333333,0.666666666666667,0,0.666666666666667,0.142857142857143,0.666666666666667,0.8,0,1,0,0,0,0.25,0.25,0,0,0 140 | 147,1,0,-1,1,0,0,0.0714285714285714,0.5,0.8,1,0,0,0.2,0,0.6,0.2,0,0,0 141 | 149,0.5,0,-0.25,0,0,0.75,-0.178571428571429,0,0.9,0,1,0,0,0.25,0.5,0.5,0,0,0 142 | 150,0,0,-1.33333333333333,0.666666666666667,0,0,0.0476190476190476,0.333333333333333,0.9,0,1,0,0,0,0.5,0.5,0,0,0 143 | 151,1,0,1,0,0,0,0.214285714285714,0,0.7,1,0,0,0.333333333333333,0.333333333333333,0.666666666666667,0,0,0,0 144 | 152,0.75,0.25,0,0.75,0,0.25,0.214285714285714,0,0.7,1,0,0,0.5,0,0.5,0.5,0,0,0 145 | 153,0.25,0,-0.25,0,0,1,0.0357142857142857,0,0.9,0,1,0,0,0,1.5,0,1,0,0 146 | 154,1,0,1.5,0.5,0.5,0.5,0.0714285714285714,0,0.7,1,0,0,0,0,0.666666666666667,0,0,1,0 147 | 155,1,0,0,1,0,0,0.214285714285714,1,0.9,1,0,0,0,0,0.2,0,1,1,0 148 | 156,1,0,0,0,1,1,0,0,0.6,0,0,1,0.666666666666667,0.666666666666667,0.333333333333333,0.333333333333333,0,0,0 149 | 158,0.75,0,10.25,0.5,0.25,0.5,0.214285714285714,0.25,0.5,1,0,0,0,0,0.25,0,0,0,0 150 | 159,0.333333333333333,0.666666666666667,3,0.333333333333333,1,0.666666666666667,0,0.666666666666667,0.8,0,1,0,0,0,0,0,1,1,1 151 | 160,0.666666666666667,0.333333333333333,-0.666666666666667,0.666666666666667,0,0,0.0952380952380952,0.333333333333333,0.8,1,0,0,0.142857142857143,0.142857142857143,0.142857142857143,0.285714285714286,1,1,0 152 | 162,1,0,0,1,0,0,0.142857142857143,0.333333333333333,0.7,1,0,0,0.25,0.25,0.25,0.25,0,0,0 153 | 163,0.5,0.25,3,0.5,0,0.25,-0.0714285714285714,0.25,0.9,1,0,0,0,0,1,1,1,0,0 154 | 164,1,0,-0.333333333333333,0,0,0,0.19047619047619,0,0.8,1,0,0,0,0,0.666666666666667,0.666666666666667,0,1,0 155 | 165,1,0,0,1,0,0,0.142857142857143,0,0.8,0,1,0,0.4,0.6,0.2,0,0,1,0 156 | 166,1,0,-1,1,0,0,0.142857142857143,0.5,0.5,0,1,0,0,1,1,1,0,0,0 157 | 167,1,0,3,1,0,0,0.214285714285714,0,0.7,1,0,0,0.4,0.2,0.8,0.4,0,0,0 158 | 168,0,0,-0.666666666666667,0,0,1,0,0,0.5,0,1,0,0,0,1,0,0,0,0 159 | 169,0.75,0,-1,0.75,0,0.25,0.0714285714285714,0,0.8,1,0,0,0,0.166666666666667,0.5,0.166666666666667,0,1,0 160 | 170,0,0,0,1,0,0,0.285714285714286,1,0.8,1,0,0,0,0,0.5,0.5,0,0,0 161 | 171,0.75,0,-0.75,0.75,0,0.25,0.142857142857143,0.5,0.9,1,0,0,0.333333333333333,0.333333333333333,0.666666666666667,0.333333333333333,1,0,0 162 | 172,1,0,-1,1,0,0,0.142857142857143,0,0.7,0,1,0,0,0,0.75,0.25,1,1,0 163 | 173,0,1,0,0,0,1,0.142857142857143,0,0.7,0,1,0,0,0.5,1,0,0,1,0 164 | 175,1,0,0,1,0,0,0.285714285714286,1,0.8,0,0,1,0,0,0,0,0,0,0 165 | 176,0.666666666666667,0,0.333333333333333,0.666666666666667,0,0.333333333333333,-0.19047619047619,0.333333333333333,0.9,0,1,0,0,0,0,0.25,1,1,0 166 | 178,1,0,0,0,0,1,0.142857142857143,0,1,0,0,1,0,0,0.25,0,0,0,0 167 | 179,1,0,0,1,0,0,0.285714285714286,0,0.7,0,1,0,0,0,0,0.333333333333333,0,0,0 168 | 180,1,0,1,0,1,1,0,1,0.9,0,1,0,0.2,0.2,0.2,0.2,1,0,0 169 | 181,1,0,0,1,0,0,0.285714285714286,1,0.9,1,0,0,0,0,0,0.333333333333333,0,0,0 170 | 182,0.5,0,4,0,0.5,0.5,0.142857142857143,0,0.7,0,1,0,0,0,1,0.5,0,0,0 171 | 184,0,0,0.5,0,0,0,0.285714285714286,0,1,1,0,0,0,0,0.5,0,0,0,0 172 | 185,0,0,4,0,0,1,0,0,0.9,1,0,0,0,0,0.333333333333333,0,1,1,0 173 | 186,1,0,0.5,0,0,0.5,0.0714285714285714,0.5,0.9,0,1,0,0,0.333333333333333,0.333333333333333,0,0,1,0 174 | 187,0.666666666666667,0,-1.33333333333333,0.333333333333333,0.666666666666667,0.333333333333333,0,0,0.8,0,1,0,0,0,0,1,1,1,0 175 | 188,0,1,2,0,1,0,0,0,1,0,1,0,0,0,0,0.25,1,0,0 176 | 190,1,0,4,0,1,1,0,0,0.8,0,1,0,0,0,0.666666666666667,0.666666666666667,0,1,0 177 | 191,0.5,0,-1,0,0.5,1,0,0,0.6,0,0,0,0,0.25,0,0.5,0,1,0 178 | 192,1,0,0,1,0,0,0,1,0.7,0,0,1,0,0,0.333333333333333,0,0,0,0 179 | -------------------------------------------------------------------------------- /figures/calibrationPlot_success.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghamut/automated-venture-capitalist/45f7c130ced7f846b878e85e0d239d35324536d7/figures/calibrationPlot_success.png -------------------------------------------------------------------------------- /figures/costPlot_nomination.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghamut/automated-venture-capitalist/45f7c130ced7f846b878e85e0d239d35324536d7/figures/costPlot_nomination.png -------------------------------------------------------------------------------- /figures/costPlot_success.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ghamut/automated-venture-capitalist/45f7c130ced7f846b878e85e0d239d35324536d7/figures/costPlot_success.png -------------------------------------------------------------------------------- /functions/HosmerLemeshowTest.m: -------------------------------------------------------------------------------- 1 | function p = HosmerLemeshowTest(Yest,Ytrue,n) 2 | 3 | % This function implements the HosmerLemeshow goodness-of-fit test. When 4 | % the p-value is larger than a given significance level (e.g. 0.05), the 5 | % model is calibrated. 6 | % 7 | % Inputs: 8 | % Yest - 1D vector that contains model outputs. The values should be between 0 and 1. 9 | % Ytrue - 1D vector of binary target values. The values should be either 0 or 1. 10 | % 11 | % Outputs: 12 | % p - p-value 13 | % 14 | % Written by Joon Lee, August 2010. 15 | 16 | 17 | [Yest_sorted,idx]=sort(Yest); 18 | Ytrue_sorted=Ytrue(idx); 19 | 20 | decileSize=round(length(Yest)/n); 21 | HLstat=0; 22 | O=zeros(n,1); 23 | E=zeros(n,1); 24 | 25 | % first 9 bins 26 | for i=1:n-1 27 | first=(i-1)*decileSize+1; 28 | last=i*decileSize; 29 | O(i)=sum(Ytrue_sorted(first:last)); 30 | E(i)=sum(Yest_sorted(first:last)); 31 | HLstat=HLstat+(O(i)-E(i))^2/E(i)/(1-E(i)/decileSize); 32 | end 33 | 34 | % 10th bin (possibly with a different size than the other bins) 35 | first=(n-1)*decileSize+1; 36 | O(n)=sum(Ytrue_sorted(first:end)); 37 | E(n)=sum(Yest_sorted(first:end)); 38 | nn=length(Ytrue_sorted(first:end)); 39 | HLstat=HLstat+(O(n)-E(n))^2/E(n)/(1-E(n)/nn); 40 | 41 | p=1-cdf('chi2',HLstat,n-2); -------------------------------------------------------------------------------- /functions/InterX.m: -------------------------------------------------------------------------------- 1 | function P = InterX(L1,varargin) 2 | %INTERX Intersection of curves 3 | % P = INTERX(L1,L2) returns the intersection points of two curves L1 4 | % and L2. The curves L1,L2 can be either closed or open and are described 5 | % by two-row-matrices, where each row contains its x- and y- coordinates. 6 | % The intersection of groups of curves (e.g. contour lines, multiply 7 | % connected regions etc) can also be computed by separating them with a 8 | % column of NaNs as for example 9 | % 10 | % L = [x11 x12 x13 ... NaN x21 x22 x23 ...; 11 | % y11 y12 y13 ... NaN y21 y22 y23 ...] 12 | % 13 | % P has the same structure as L1 and L2, and its rows correspond to the 14 | % x- and y- coordinates of the intersection points of L1 and L2. If no 15 | % intersections are found, the returned P is empty. 16 | % 17 | % P = INTERX(L1) returns the self-intersection points of L1. To keep 18 | % the code simple, the points at which the curve is tangent to itself are 19 | % not included. P = INTERX(L1,L1) returns all the points of the curve 20 | % together with any self-intersection points. 21 | % 22 | % Example: 23 | % t = linspace(0,2*pi); 24 | % r1 = sin(4*t)+2; x1 = r1.*cos(t); y1 = r1.*sin(t); 25 | % r2 = sin(8*t)+2; x2 = r2.*cos(t); y2 = r2.*sin(t); 26 | % P = InterX([x1;y1],[x2;y2]); 27 | % plot(x1,y1,x2,y2,P(1,:),P(2,:),'ro') 28 | 29 | % Author : NS 30 | % Version: 3.0, 21 Sept. 2010 31 | 32 | % Two words about the algorithm: Most of the code is self-explanatory. 33 | % The only trick lies in the calculation of C1 and C2. To be brief, this 34 | % is essentially the two-dimensional analog of the condition that needs 35 | % to be satisfied by a function F(x) that has a zero in the interval 36 | % [a,b], namely 37 | % F(a)*F(b) <= 0 38 | % C1 and C2 exactly do this for each segment of curves 1 and 2 39 | % respectively. If this condition is satisfied simultaneously for two 40 | % segments then we know that they will cross at some point. 41 | % Each factor of the 'C' arrays is essentially a matrix containing 42 | % the numerators of the signed distances between points of one curve 43 | % and line segments of the other. 44 | 45 | %...Argument checks and assignment of L2 46 | error(nargchk(1,2,nargin)); 47 | if nargin == 1, 48 | L2 = L1; hF = @lt; %...Avoid the inclusion of common points 49 | else 50 | L2 = varargin{1}; hF = @le; 51 | end 52 | 53 | %...Preliminary stuff 54 | x1 = L1(1,:)'; x2 = L2(1,:); 55 | y1 = L1(2,:)'; y2 = L2(2,:); 56 | dx1 = diff(x1); dy1 = diff(y1); 57 | dx2 = diff(x2); dy2 = diff(y2); 58 | 59 | %...Determine 'signed distances' 60 | S1 = dx1.*y1(1:end-1) - dy1.*x1(1:end-1); 61 | S2 = dx2.*y2(1:end-1) - dy2.*x2(1:end-1); 62 | 63 | C1 = feval(hF,D(bsxfun(@times,dx1,y2)-bsxfun(@times,dy1,x2),S1),0); 64 | C2 = feval(hF,D((bsxfun(@times,y1,dx2)-bsxfun(@times,x1,dy2))',S2'),0)'; 65 | 66 | %...Obtain the segments where an intersection is expected 67 | [i,j] = find(C1 & C2); 68 | if isempty(i),P = zeros(2,0);return; end; 69 | 70 | %...Transpose and prepare for output 71 | i=i'; dx2=dx2'; dy2=dy2'; S2 = S2'; 72 | L = dy2(j).*dx1(i) - dy1(i).*dx2(j); 73 | i = i(L~=0); j=j(L~=0); L=L(L~=0); %...Avoid divisions by 0 74 | 75 | %...Solve system of eqs to get the common points 76 | P = unique([dx2(j).*S1(i) - dx1(i).*S2(j), ... 77 | dy2(j).*S1(i) - dy1(i).*S2(j)]./[L L],'rows')'; 78 | 79 | function u = D(x,y) 80 | u = bsxfun(@minus,x(:,1:end-1),y).*bsxfun(@minus,x(:,2:end),y); 81 | end 82 | end -------------------------------------------------------------------------------- /functions/calibrate.m: -------------------------------------------------------------------------------- 1 | function [perf, X, Y] = calibrate(actual,predicted,trueClass,Nbins) 2 | %% 3 | % perf = CALIBRATE(actual,predicted,trueClass,Nbins) 4 | % 5 | % Returns performance metrics of your model. 6 | % 7 | % actual : Ground Truth (binary class labels, 1 or 0) 8 | % predicted : Model predictions 9 | % trueClass : Label for Class of Interest (1 or 0) 10 | % Nbins : Number of bins to use for HL-test 11 | % 12 | % AUTHOR: MOHAMMAD GHASSEMI ~ March 2016 13 | % EDITED: Tuka Alhanai ~ March 2016 14 | 15 | %% SWITCH OFF WARNING 16 | warning('off','MATLAB:nargchk:deprecated'); 17 | 18 | %% FLAGS FOR SECTIONS 19 | calFlag = 0; 20 | bbqFlag = 0; 21 | 22 | 23 | %% MAKING SURE EVERYTHING IS A COLUMN VECTOR (BBQ cries otherwise) 24 | if isrow(predicted) 25 | predicted = predicted'; 26 | end 27 | 28 | if isrow(actual) 29 | actual = actual'; 30 | end 31 | 32 | %% SCALING PREDICTIONS 33 | % predicted_sc = (predicted - min(predicted)) / max((predicted - min(predicted))); 34 | predicted_sc = predicted / max(predicted); 35 | % predicted_sc = predicted; 36 | 37 | %% CALCULATE AUC 38 | % AUC - AREA UNDER THE RECEIVER OPERATING CURVE 39 | [X,Y,T,AUC,OPTROCPT] = perfcurve(actual, predicted,trueClass); 40 | % if AUC < 0.5 41 | % [X,Y,T,AUC,OPTROCPT] = perfcurve(actual, predicted,~trueClass); 42 | % end 43 | 44 | % plot(X,Y) 45 | % hold on 46 | % plot(OPTROCPT(1),OPTROCPT(2),'rx') 47 | 48 | 49 | %% ROUNDING INTO PERCENTILES 50 | Xr = round(X*100)/100; 51 | Yr = round(Y*100)/100; 52 | 53 | %plot(Xr,Yr); 54 | %xlabel('False Predicted Dead'); ylabel('True Predicted Survivors') 55 | 56 | %% EXTRACT CALIBRATION 57 | if calFlag == 1 58 | step = 0.10; indi = 1; 59 | this = round(10*(predicted))/(10); 60 | range= 0:step:1; 61 | clear percy; 62 | for iii =[0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0] 63 | percy(indi)= nanmean(actual(find(this == iii))); 64 | indi = indi+1; 65 | end 66 | end 67 | 68 | %% BBQ CALIBRATION 69 | % DOWNLOAD TOOLKIT FROM https://github.com/pakdaman/calibration 70 | if bbqFlag == 1 71 | addpath calibration-master/BBQ/ 72 | options.N0 = 2; 73 | BBQ = build(predicted, actual, options); 74 | predicted2 = predict(BBQ, predicted', 1); 75 | 76 | step = 0.10; indi = 1; 77 | this = round(10*(predicted2))/(10); 78 | range= 0:step:1; 79 | clear percyBBQ; 80 | for iii =[0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0] 81 | percyBBQ(indi)= nanmean(actual(find(this == iii))); 82 | indi = indi+1; 83 | end 84 | rmpath calibration-master/BBQ/ 85 | end 86 | 87 | %% EXTRACT ERROR RATE 88 | 89 | % ACCURACY AT OPTIMUM ROC POINT 90 | ind_opt = find(X == OPTROCPT(1) & Y == OPTROCPT(2)); 91 | OPT_ER = nanmean(((predicted > T(ind_opt(1))) == actual)); 92 | 93 | % THE EER POINT IS THE ACCURACY WHERE THE DIAGONAL LINE CROSS THE ROC LINE 94 | % get line intercept code from: 95 | % http://www.mathworks.com/matlabcentral/fileexchange/22441-curve-intersections/content/InterX.m 96 | P = InterX([X,Y]',[[0:0.01:1];[1:-0.01:0]]); 97 | ind_opt = find(X == OPTROCPT(1) & Y == OPTROCPT(2)); 98 | EER = nanmean(((predicted > T(ind_opt(1))) == actual)); 99 | 100 | %% EXTRACT ALL OTHER METRICS 101 | ind = 1; 102 | 103 | perf(ind).AUC = AUC; 104 | perf(ind).OPT_ER = OPT_ER; 105 | perf(ind).EER = EER; 106 | 107 | % THIS ASSUMES THE PREDICTED PROBABILITIES ARE BETWEEN 0 and 1 108 | % IF DECISION MAKING IS AT 0.5 THRESHOLD, THEN GET ACCURACY, etc. 109 | % UNLIKE THE AUC MEASURE - THE FOLLOWING METRICS ASSUME THAT ALL 110 | % MISCLASSIFCICATIONS ARE EQUAL 111 | perf(ind).Accuracy = nanmean(round(predicted_sc) == actual); 112 | 113 | % TRUE POSITIVE, etc. (GOOD TO USE FOR CONFUSION MATRIX) 114 | perf(ind).TP = sum((round(predicted_sc) == trueClass) & (actual == trueClass)); 115 | perf(ind).FP = sum((round(predicted_sc) == trueClass) & (actual ~= trueClass)); 116 | perf(ind).TN = sum((round(predicted_sc) ~= trueClass) & (actual ~= trueClass)); 117 | perf(ind).FN = sum((round(predicted_sc) ~= trueClass) & (actual == trueClass)); 118 | 119 | % TP RATE, FP RATE, RECALL, PRECISION, F1 etc. 120 | % FALL-OUT 121 | perf(ind).FPR = perf(ind).FP / sum(actual ~= trueClass); 122 | % SENSITIVITY/RECALL 123 | perf(ind).TPR = perf(ind).TP / sum(actual == trueClass); 124 | perf(ind).Recall = perf(ind).TPR; 125 | perf(ind).Precision = perf(ind).TP / sum(round(predicted_sc) == trueClass); 126 | perf(ind).F1_score = 2 * (perf(ind).Recall * perf(ind).Precision) / (perf(ind).Recall + perf(ind).Precision ); 127 | 128 | % PERFROMANCE AT FPR THRESHOLDS 129 | perf(ind).TPR_when_FPR0p10 = Yr(max(find(Xr <= 0.10))); 130 | perf(ind).TPR_when_FPR0p05 = Yr(max(find(Xr <= 0.05))); 131 | perf(ind).TPR_when_FPR0 = Yr(max(find(Xr == 0))); 132 | 133 | % PERFROMANCE AT TPR THRESHOLDS 134 | perf(ind).FPR_when_TPR0p90 = Xr(min(find(Yr >= 0.90))); 135 | perf(ind).FPR_when_TPR0p95 = Xr(min(find(Yr >= 0.95))); 136 | perf(ind).FPR_when_TPR1p00 = Xr(min(find(Yr == 1))); 137 | 138 | % CALLIBRATION 139 | perf(ind).HL_test = HosmerLemeshowTest(predicted,actual,Nbins); 140 | % perf(ind).calibration = percy; 141 | % perf(ind).calibration_mSSE = nanmean((percy - [0:.1:1]).^2); 142 | % perf(ind).calibration_SSE = nansum((percy - [0:.1:1]).^2); 143 | % perf(ind).calibrationBBQ = percyBBQ; 144 | % perf(ind).calibrationBBQ_mSSE = nanmean((percyBBQ - [0:.1:1]).^2); 145 | % perf(ind).calibrationBBQ_SSE = nansum((percyBBQ - [0:.1:1]).^2); 146 | 147 | %% EOF -------------------------------------------------------------------------------- /functions/findoptimalclassifcationthreshold.m: -------------------------------------------------------------------------------- 1 | function [X,Y,optimal_threshold,optimal_cost] = findoptimalclassifcationthreshold(cost,fixed_cost,predictions,labels) 2 | %% IDENTIFY THE OPTIMAL CLASSIFICATION THRESHOLD GIVEN A COST MATRIX: 3 | % 4 | % Cost analysis %%%%%%%%%%%%%%%%%%%%%%%% 5 | % 6 | %% AUTHOR: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 7 | % Mohammad M. Ghassemi 8 | % Wednesday, August 16th, 2017 9 | %% PURPOSE: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 10 | % Identify an optimal classification threshold, given information 11 | % About the costs of operating the algorithm, and misclassifcaiton. 12 | %% INPUTS(4): %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 13 | %1. cost: A 2x2 matrix describing the costs --------------------------------- 14 | % | Predicted 15 | % | N Y 16 | % ------------------------ 17 | % Actual N | [-1.0 4.0 ; 18 | % Actual Y | 2.0 -2.0 ] 19 | % ------------------------ 20 | % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 21 | % cost(1,1): Cost of True Negatives 22 | % cost(2,1): Cost of False Negatives 23 | % cost(1,2): Cost of False Positives 24 | % cost(2,2): Cost of True Positives 25 | % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 26 | % Example: cost = [-1, 4; 2 -4] 27 | % 28 | %2. fixed_cost: cost to simply run the algorithm? --------------------------- 29 | % Let's assume that one of the inputs to your 30 | % algorithm is an Amazon mechanical turker (AMT) worker's rating 31 | % of something. Given that AMT workers must be paid, there is a 32 | % fixed overhead cost, every time you want to run the algorithm. 33 | % this fixed cost is what you report here. 34 | % Example: fixed_cost = 5.00 35 | % 36 | %3. predictions: propobabilities of the true class from the model ----------- 37 | % Example: predictions = [.1 .2 .3 .2 .6 .9 .9 .9 .8] 38 | % 39 | %4. labels: the actual class from the model --------------------------------- 40 | % Example: labels = [ 0 0 0 1 0 0 1 1 1 ] 41 | %% OUTPUTS(4): %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 42 | % 1. X: The probability thresholds (use for plotting curve) 43 | % 44 | % 2. Y: The Costs (use for plotting curve) 45 | % 46 | % 1. optimal_threshold: The optimal threshold for classification. 47 | % 48 | % 2. optimal_cost: The cost corresponding to the optimal threshold. 49 | 50 | 51 | 52 | %% ALGORITHM : %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 53 | % We will explore varous clasification tresholds, and score the confusion 54 | % matrix according to our cost matrix. 55 | ind = 1; step = -1:.01:1; 56 | for i = step 57 | 58 | %Adjust the predictions with the new threshold. 59 | pred_mod = min(max(predictions-i,0),1); 60 | 61 | %compute the confusion matrix 62 | [cm,order] = confusionmat(1*labels, round(pred_mod)); 63 | 64 | %Extract the performance with the new classigfication threshold 65 | True_Negatives = cm(1,1); False_Positives = cm(1,2); 66 | Flase_Negatives = cm(2,1); True_Positives = cm(2,2); 67 | 68 | %Get the fixed costs required to run the mdoel 69 | %i.e. the costs to simply run the model 70 | total = sum(sum(cm)); 71 | mdl_fixed_costs = total* fixed_cost; 72 | 73 | %Get the costs as a fucntion of performance 74 | mdl_elastic_costs = True_Negatives * cost(1,1) +... 75 | False_Positives * cost(1,2) +... 76 | Flase_Negatives * cost(2,1) +... 77 | True_Positives * cost(2,2); 78 | 79 | %total costs 80 | total_costs(ind) = mdl_elastic_costs + mdl_fixed_costs; 81 | 82 | ind = ind + 1; 83 | end 84 | 85 | %Identify the optimal threshold and cost. 86 | [optimal_cost, ind_thresh] = min(total_costs); 87 | optimal_threshold = 0.5 + step(ind_thresh); 88 | 89 | %Generate a plot showing the cost curve... 90 | %the cost curve... 91 | X = 0.5+step; 92 | Y = total_costs; 93 | plot(X,Y,'LineWidth',2); 94 | xlim([0 1]); 95 | xlabel('Classification Threshold Probability'); 96 | ylabel('Expected Cost'); 97 | hold on; 98 | 99 | %zero cost line... 100 | plot([0 1],[0 0],'black--','Linewidth',2); 101 | plot(optimal_threshold, optimal_cost,'o', 'color','k','MarkerFaceColor','k'); 102 | 103 | %and the optimal point... 104 | text(optimal_threshold + 0.01,optimal_cost,'Optimal Threshold'); 105 | end -------------------------------------------------------------------------------- /functions/trainClassifier.m: -------------------------------------------------------------------------------- 1 | function [trainedClassifier,validationScores,validationPredictions] = trainClassifier(trainingData,outcomeTrain,testingData,outcomeTest,headers,type) 2 | % [trainedClassifier, validationScores, validationPredictions] = 3 | % trainClassifier(trainingData,outcomeTrain,testingData,outcomeTest,headers,type) 4 | % returns a trained classifier and its accuracy. This code recreates the 5 | % classification model trained in Classification Learner app. Use the 6 | % generated code to automate training the same model with new data, or to 7 | % learn how to programmatically train models. 8 | % 9 | % Input: 10 | % trainingData: rows are observations and columns are predictors. 11 | % outcomeTrain: contains the binary outcome of trainingData. 12 | % testingData : contains test examples formatted like trainingData. 13 | % outcomeTest : contains the binary outcome of testingData. 14 | % headers : contains the names of each predictor. If left empty 15 | % generic names are created. 16 | % type : is the name of classifier to run. The set is 17 | % {'linearSVM' 'cubicSVM' 'quadraticSVM' 'fineGaussianSVM' 18 | % 'mediumGaussianSVM' 'coarseGaussianSVM' 'linearDisc' 'quadraticDisc' 19 | % 'simpleTree' 'mediumTree' 'complexTree' 'RUSBoostedTrees' 'ensembleBoostedTrees' 20 | % 'ensembleBaggedTrees' 'fineKNN' 'mediumKNN' 'coarseKNN' 'cosineKNN' 21 | % 'cubicKNN' 'weightedKNN' 'logReg'} 22 | % 23 | % Output: 24 | % trainedClassifier: a struct containing the trained classifier. The 25 | % struct contains various fields with information about the trained 26 | % classifier. 27 | % 28 | % trainedClassifier.predictFcn: a function to make predictions on new 29 | % data. 30 | % 31 | % validationScores: a two-column prediction for each class (first 32 | % column == class 0, second column == class 1) 33 | % 34 | % validationPredictions: a vector with class predictions. 35 | % 36 | 37 | % Auto-generated by MATLAB on 10-Aug-2017 16:43:48 38 | % Edited by: Tuka Alhanai and Mohammad Ghassemi - Aug 2017 39 | 40 | %% INIT VARS 41 | if ~exist('headers','var') 42 | for i = 1:size(X_train,1) 43 | headers(i,1) = {strcat(['headers_x', num2str(i)])}; 44 | end 45 | end 46 | 47 | %% INITIALIZE TRAINING 48 | % Extract predictors and response 49 | % This code processes the data into the right shape for training the 50 | % model. 51 | % Convert input to table 52 | % inputTable = array2table(trainingData, 'VariableNames', {'column_1', 'column_2', 'column_3', 'column_4'}); 53 | 54 | inputTable = array2table([trainingData outcomeTrain], 'VariableNames', [headers; {'outcome'}]); 55 | 56 | % predictorNames = {'column_1', 'column_2', 'column_3'}; 57 | predictorNames = headers; 58 | 59 | predictors = inputTable(:, predictorNames); 60 | response = outcomeTrain; 61 | % response = inputTable.column_4; 62 | % isCategoricalPredictor = [false, false, false]; 63 | 64 | %% TRAIN CLASSIFIER 65 | % This code specifies all the classifier options and trains the classifier. 66 | if strmatch(type,'quadraticSVM','exact') 67 | 68 | classification = fitcsvm(... 69 | predictors, ... 70 | response, ... 71 | 'KernelFunction', 'polynomial', ... 72 | 'PolynomialOrder', 2, ... 73 | 'KernelScale', 'auto', ... 74 | 'BoxConstraint', 1, ... 75 | 'Standardize', true, ... 76 | 'ClassNames', [0; 1]); 77 | 78 | elseif strmatch(type,'mediumGaussianSVM','exact') 79 | 80 | classification = fitcsvm(... 81 | predictors, ... 82 | response, ... 83 | 'KernelFunction', 'gaussian', ... 84 | 'PolynomialOrder', [], ... 85 | 'KernelScale', 3.2, ... 86 | 'BoxConstraint', 1, ... 87 | 'Standardize', true, ... 88 | 'ClassNames', [0; 1]); 89 | 90 | elseif strmatch(type,'coarseGaussianSVM','exact') 91 | 92 | classification = fitcsvm(... 93 | predictors, ... 94 | response, ... 95 | 'KernelFunction', 'gaussian', ... 96 | 'PolynomialOrder', [], ... 97 | 'KernelScale', 13, ... 98 | 'BoxConstraint', 1, ... 99 | 'Standardize', true, ... 100 | 'ClassNames', [0; 1]); 101 | 102 | elseif strmatch(type,'fineGaussianSVM','exact') 103 | 104 | classification = fitcsvm(... 105 | predictors, ... 106 | response, ... 107 | 'KernelFunction', 'gaussian', ... 108 | 'PolynomialOrder', [], ... 109 | 'KernelScale', 0.79, ... 110 | 'BoxConstraint', 1, ... 111 | 'Standardize', true, ... 112 | 'ClassNames', [0; 1]); 113 | 114 | elseif strmatch(type,'cubicSVM','exact') 115 | 116 | classification = fitcsvm(... 117 | predictors, ... 118 | response, ... 119 | 'KernelFunction', 'polynomial', ... 120 | 'PolynomialOrder', 3, ... 121 | 'KernelScale', 'auto', ... 122 | 'BoxConstraint', 1, ... 123 | 'Standardize', true, ... 124 | 'ClassNames', [0; 1]); 125 | 126 | elseif strmatch(type,'linearSVM','exact') 127 | 128 | classification = fitcsvm(... 129 | predictors, ... 130 | response, ... 131 | 'KernelFunction', 'linear', ... 132 | 'PolynomialOrder', [], ... 133 | 'KernelScale', 'auto', ... 134 | 'BoxConstraint', 1, ... 135 | 'Standardize', true, ... 136 | 'ClassNames', [single(0); single(1)]); 137 | 138 | elseif strmatch(type,'linearDisc','exact') 139 | 140 | classification = fitcdiscr(... 141 | predictors, ... 142 | response, ... 143 | 'DiscrimType', 'diagLinear', ... 144 | 'FillCoeffs', 'off', ... 145 | 'SaveMemory', 'on', ... 146 | 'ClassNames', [0; 1]); 147 | 148 | elseif strmatch(type,'quadraticDisc','exact') 149 | 150 | classification = fitcdiscr(... 151 | predictors, ... 152 | response, ... 153 | 'DiscrimType', 'diagQuadratic', ... 154 | 'FillCoeffs', 'off', ... 155 | 'SaveMemory', 'on', ... 156 | 'ClassNames', [0; 1]); 157 | 158 | elseif strmatch(type,'simpleTree','exact') 159 | 160 | classification = fitctree(... 161 | predictors, ... 162 | response, ... 163 | 'SplitCriterion', 'gdi', ... 164 | 'MaxNumSplits', 4, ... 165 | 'Surrogate', 'off', ... 166 | 'ClassNames', [0; 1]); 167 | 168 | elseif strmatch(type,'mediumTree','exact') 169 | 170 | classification = fitctree(... 171 | predictors, ... 172 | response, ... 173 | 'SplitCriterion', 'gdi', ... 174 | 'MaxNumSplits', 20, ... 175 | 'Surrogate', 'off', ... 176 | 'ClassNames', [0; 1]); 177 | 178 | elseif strmatch(type,'complexTree','exact') 179 | 180 | classification = fitctree(... 181 | predictors, ... 182 | response, ... 183 | 'SplitCriterion', 'gdi', ... 184 | 'MaxNumSplits', 100, ... 185 | 'Surrogate', 'off', ... 186 | 'ClassNames', [0; 1]); 187 | 188 | elseif strmatch(type,'RUSBoostedTrees','exact') 189 | 190 | template = templateTree(... 191 | 'MaxNumSplits', 20); 192 | classification = fitensemble(... 193 | predictors, ... 194 | response, ... 195 | 'RUSBoost', ... 196 | 30, ... 197 | template, ... 198 | 'Type', 'Classification', ... 199 | 'LearnRate', 0.1, ... 200 | 'ClassNames', [0; 1]); 201 | 202 | elseif strmatch(type,'ensembleBoostedTrees','exact') 203 | 204 | template = templateTree(... 205 | 'MaxNumSplits', 20); 206 | classification = fitensemble(... 207 | predictors, ... 208 | response, ... 209 | 'AdaBoostM1', ... 210 | 30, ... 211 | template, ... 212 | 'Type', 'Classification', ... 213 | 'LearnRate', 0.1, ... 214 | 'ClassNames', [0; 1]); 215 | 216 | elseif strmatch(type,'ensembleBaggedTrees','exact') 217 | 218 | classification = fitensemble(... 219 | predictors, ... 220 | response, ... 221 | 'Bag', ... 222 | 30, ... 223 | 'Tree', ... 224 | 'Type', 'Classification', ... 225 | 'ClassNames', [0; 1]); 226 | 227 | elseif strmatch(type,'fineKNN','exact') 228 | 229 | classification = fitcknn(... 230 | predictors, ... 231 | response, ... 232 | 'Distance', 'Euclidean', ... 233 | 'Exponent', [], ... 234 | 'NumNeighbors', 1, ... 235 | 'DistanceWeight', 'Equal', ... 236 | 'Standardize', true, ... 237 | 'ClassNames', [0; 1]); 238 | 239 | elseif strmatch(type,'mediumKNN','exact') 240 | 241 | classification = fitcknn(... 242 | predictors, ... 243 | response, ... 244 | 'Distance', 'Euclidean', ... 245 | 'Exponent', [], ... 246 | 'NumNeighbors', 10, ... 247 | 'DistanceWeight', 'Equal', ... 248 | 'Standardize', true, ... 249 | 'ClassNames', [0; 1]); 250 | 251 | elseif strmatch(type,'coarseKNN','exact') 252 | 253 | classification = fitcknn(... 254 | predictors, ... 255 | response, ... 256 | 'Distance', 'Euclidean', ... 257 | 'Exponent', [], ... 258 | 'NumNeighbors', 100, ... 259 | 'DistanceWeight', 'Equal', ... 260 | 'Standardize', true, ... 261 | 'ClassNames', [0; 1]); 262 | 263 | elseif strmatch(type,'cubicKNN','exact') 264 | 265 | classification = fitcknn(... 266 | predictors, ... 267 | response, ... 268 | 'Distance', 'Minkowski', ... 269 | 'Exponent', 3, ... 270 | 'NumNeighbors', 10, ... 271 | 'DistanceWeight', 'Equal', ... 272 | 'Standardize', true, ... 273 | 'ClassNames', [0; 1]); 274 | 275 | elseif strmatch(type,'cosineKNN','exact') 276 | 277 | classification = fitcknn(... 278 | predictors, ... 279 | response, ... 280 | 'Distance', 'Cosine', ... 281 | 'Exponent', [], ... 282 | 'NumNeighbors', 10, ... 283 | 'DistanceWeight', 'Equal', ... 284 | 'Standardize', true, ... 285 | 'ClassNames', [0; 1]); 286 | 287 | elseif strmatch(type,'weightedKNN','exact') 288 | 289 | classification = fitcknn(... 290 | predictors, ... 291 | response, ... 292 | 'Distance', 'Euclidean', ... 293 | 'Exponent', [], ... 294 | 'NumNeighbors', 10, ... 295 | 'DistanceWeight', 'SquaredInverse', ... 296 | 'Standardize', true, ... 297 | 'ClassNames', [0; 1]); 298 | 299 | elseif strmatch(type,'logReg','exact') 300 | 301 | classification = fitglm(... 302 | inputTable, ... 303 | 'Distribution', 'binomial', ... 304 | 'link', 'logit'); 305 | 306 | else 307 | sprintf('Error: The type variable you defined does not match.') 308 | end 309 | % Create the result struct with predict function 310 | predictorExtractionFcn = @(x) array2table(x, 'VariableNames', headers); 311 | svmPredictFcn = @(x) predict(classification, x); 312 | trainedClassifier.predictFcn = @(x) svmPredictFcn(predictorExtractionFcn(x)); 313 | 314 | % Add additional fields to the result struct 315 | trainedClassifier.Classification = classification; 316 | % trainedClassifier.About = 'This struct is a trained model exported from Classification Learner R2017a.'; 317 | % trainedClassifier.HowToPredict = sprintf('To make predictions on a new predictor column matrix, X, use: \n yfit = c.predictFcn(X) \nreplacing ''c'' with the name of the variable that is this struct, e.g. ''trainedModel''. \n \nX must contain exactly 3 columns because this model was trained using 3 predictors. \nX must contain only predictor columns in exactly the same order and format as your training \ndata. Do not include the response column or any columns you did not import into the app. \n \nFor more information, see How to predict using an exported model.'); 318 | 319 | %% PREDICTING ON TEST SET 320 | % Extract predictors and response 321 | % This code processes the data into the right shape for training the 322 | % model. 323 | 324 | % Convert input to table 325 | inputTable = array2table([testingData outcomeTest], 'VariableNames', [headers; 'outcome']); 326 | 327 | predictorNames = headers; 328 | predictors = inputTable(:, predictorNames); 329 | response = outcomeTest; 330 | 331 | 332 | % Compute resubstitution predictions 333 | [validationPredictions, validationScores] = predict(trainedClassifier.Classification, predictors); 334 | 335 | 336 | % Compute resubstitution accuracy 337 | % validationAccuracy = 1 - resubLoss(trainedClassifier.ClassificationSVM, 'LossFun', 'ClassifError'); 338 | 339 | end 340 | -------------------------------------------------------------------------------- /modelCoeff/nominationModel_coeff.csv: -------------------------------------------------------------------------------- 1 | Row,Estimate,SE,tStat,pValue,OddsRatio,OddsRatio_95CI_1,OddsRatio_95CI_2 2 | (Intercept),-5.59158534257214,2.07598946346545,-2.69345555022139,0.00707155740026364,0.00372911125717011,6.18090865648355e-05,0.224987482281681 3 | is_mit,1.17376859280953,0.703030455132392,1.66958427510583,0.095001643723847,3.23415792542688,0.806825917367705,12.9641069547281 4 | is_harvard,2.64675667988125,1.09915521455158,2.40799174205896,0.0160405438459644,14.1082069307125,1.60967666877529,123.65309546994 5 | years_since_graduation,0.0356755056376838,0.061000366965076,0.584840836418391,0.558654743126972,1.03631951208534,0.918701320597702,1.16899595880637 6 | is_mba,0.14880254914894,0.791014240018282,0.188116144591153,0.850785605476675,1.16044383596356,0.243321246308578,5.53437037190759 7 | is_phd,0.904585391410404,0.616370001785724,1.46760126026522,0.142212565484319,2.47090725128281,0.731480521780805,8.34661000894227 8 | is_stem,0.118773503223152,0.765061207877401,0.155247059974036,0.876626549500187,1.12611482802197,0.248541096286078,5.10231356037514 9 | skills_soft,-4.06481039233722,2.01166349385995,-2.02062144327018,0.0433189674402757,0.0171662438164186,0.000323067989023926,0.912129758367693 10 | pic_rating_total_3,0.703518940437767,0.559838426621708,1.25664639471621,0.208881706947856,2.02085146603345,0.668909274504561,6.10522353841529 11 | idea_rating_2min,3.3905925307571,1.60673159658233,2.11024202049005,0.0348375148021901,29.6835354683062,1.24291048439635,708.910487890945 12 | topic_inessential,0.288828045862961,1.1822117597202,0.244311599413729,0.806989500595052,1.33486217371948,0.129260723404016,13.7849841460173 13 | topic_essentialperiodic,0.538775153650838,1.15455425114215,0.466652089425724,0.640748812828525,1.71390630413762,0.175282584638265,16.7585092690458 14 | topic_essentialdaily,0.780572745165688,1.21893293163067,0.640373826082004,0.521929594956609,2.1827220510625,0.196577248448811,24.2361493498832 15 | wd_speaking_to_you,-0.310941436006422,1.69614037413688,-0.183322937622219,0.854544637748878,0.732756787776587,0.0257157481344352,20.8795212655576 16 | wd_questions,-2.71668515102187,1.25616331981612,-2.16268466700615,0.0305654412049068,0.0660934816123067,0.00553046129039314,0.78987051572434 17 | wd_adjectives,1.22080334264859,0.500266409153425,2.44030644534878,0.0146748075075877,3.38990989925602,1.26216238779244,9.10460431733589 18 | positive_sentiment,0.147114781699519,0.719828224656953,0.204374844803605,0.838060586250963,1.15848692849723,0.279577679448395,4.80042600735112 19 | -------------------------------------------------------------------------------- /modelCoeff/nominationModel_perf.csv: -------------------------------------------------------------------------------- 1 | AUC,OPT_ER,EER,Accuracy,TP,FP,TN,FN,FPR,TPR,Recall,Precision,F1_score,TPR_when_FPR0p10,TPR_when_FPR0p05,TPR_when_FPR0,FPR_when_TPR0p90,FPR_when_TPR0p95,FPR_when_TPR1p00,HL_test 2 | 0.75609756097561,0.779661016949153,0.779661016949153,0.774011299435028,28,14,109,26,0.113821138211382,0.518518518518518,0.518518518518518,0.666666666666667,0.583333333333333,0.5,0.22,0.07,0.64,0.69,0.72,0.0418256603205727 3 | -------------------------------------------------------------------------------- /modelCoeff/successModel_coeff.csv: -------------------------------------------------------------------------------- 1 | Row,Estimate,SE,tStat,pValue,OddsRatio,OddsRatio_95CI_1,OddsRatio_95CI_2 2 | (Intercept),-5.67209444511088,2.26405922973971,-2.50527652748863,0.0122355690817201,0.00344065146863157,3.9335287159333e-05,0.300953250465537 3 | is_mit,1.36127956987546,0.80112422777111,1.69921158627647,0.089279324095634,3.90118194435088,0.801827391134176,18.9806693201163 4 | is_harvard,2.57737065327669,1.25639651767882,2.05139907426548,0.0402280991408477,13.1624838866958,1.10088148680366,157.374780250461 5 | years_since_graduation,-0.306310658093869,0.125876661567644,-2.43341898553023,0.014956982122355,0.736157890522636,0.574126988166555,0.943917375334258 6 | is_mba,2.16848828837191,1.09614834082467,1.97827995318634,0.0478971333479244,8.74505404340426,1.00371008547655,76.1932866159764 7 | is_phd,-0.163860917982628,0.730538204299132,-0.224301640924903,0.822522599463366,0.84886007484217,0.200567996053168,3.5926141799315 8 | is_stem,2.30001049135625,1.01021410929078,2.27675546223657,0.0228008324947447,9.97428709806506,1.35653963461453,73.3383681361414 9 | skills_soft,-4.21141682444069,2.24370948257507,-1.87698846804681,0.0605196744189427,0.0148253485347717,0.000176441323474476,1.24568867909932 10 | pic_rating_total_3,-1.19586772547618,0.666995456542112,-1.79291734860667,0.0729861408879609,0.302441404176498,0.0810152319587964,1.12905685447858 11 | idea_rating_2min,4.44097253594939,1.96800467627212,2.2565863737487,0.0240339326049977,84.8574284563925,1.7408213301726,4136.42861528922 12 | topic_inessential,-0.0885106718871519,0.906329994391926,-0.0976583280205081,0.922203606744915,0.915293342776611,0.152830900898078,5.4816264146076 13 | topic_essentialperiodic,-0.537931676301196,0.862530042018565,-0.623667176904682,0.532846183319455,0.583954811742345,0.106315562587751,3.20746289496028 14 | topic_essentialdaily,-3.57593368822128,1.39004288979155,-2.57253478614428,0.01009568098311,0.0279892803089181,0.00179790791454111,0.435728551988236 15 | wd_speaking_to_you,-5.11225957032946,2.03414217881822,-2.5132262747236,0.0119632575604331,0.00602245936720757,0.000108420851272848,0.334529902724988 16 | wd_questions,1.76835260946181,1.10314851213001,1.60300502608428,0.108933544446894,5.86118973517265,0.663479642243702,51.7778435454616 17 | wd_adjectives,-0.274732041906443,0.529203247153174,-0.519142774320362,0.603661181666814,0.759775683994687,0.26717367596532,2.16061364542712 18 | positive_sentiment,-1.84623581078509,0.830741545258209,-2.22239494500212,0.0262566266630805,0.157830152114452,0.0305965327743014,0.814156201953502 19 | -------------------------------------------------------------------------------- /modelCoeff/successModel_perf.csv: -------------------------------------------------------------------------------- 1 | AUC,OPT_ER,EER,Accuracy,TP,FP,TN,FN,FPR,TPR,Recall,Precision,F1_score,TPR_when_FPR0p10,TPR_when_FPR0p05,TPR_when_FPR0,FPR_when_TPR0p90,FPR_when_TPR0p95,FPR_when_TPR1p00,HL_test 2 | 0.821109693877551,0.790960451977401,0.790960451977401,0.745762711864407,20,16,112,29,0.125,0.408163265306122,0.408163265306122,0.555555555555556,0.470588235294118,0.37,0.33,0.14,0.41,0.66,0.71,0.115344357939548 3 | -------------------------------------------------------------------------------- /results/comparison.csv: -------------------------------------------------------------------------------- 1 | info,val 2 | "how many successful teams are in the data?",0.27683615819209 3 | "how many nominated teams succeeded according to MIT100K judges?",0.388888888888889 4 | "how many nominated teams succeeded according to MIT100K judges, excluding finalists?",0.361702127659574 5 | "how many successful teams did the mit100k judges catch?",0.428571428571429 6 | "how many successful teams did the mit100k judges catch, excluding finalists?",0.377777777777778 7 | "how many unnominated teams became successful?",0.227642276422764 8 | "how many successful teams did the algorithm find?",0.448979591836735 9 | "how many successful teams did the algorithm find if only nominated 54?",0.407407407407407 10 | "toss out finalists, how many successful teams did the algorithm find? (given success)",0.422222222222222 11 | "toss out finalists, how many successful teams did the algorithm find? (given nomination)",0.404255319148936 12 | "how many successful teams did the algorithm find?",0.36734693877551 13 | "how many successful teams did the algorithm find if only nominated 54?",0.333333333333333 14 | "toss out finalists, how many successful teams did the algorithm find? (given success)",0.355555555555556 15 | "toss out finalists, how many successful teams did the algorithm find? (given nomination)",0.340425531914894 16 | -------------------------------------------------------------------------------- /results/results.csv: -------------------------------------------------------------------------------- 1 | AUC,OPT_ER,EER,Accuracy,TP,FP,TN,FN,FPR,TPR,Recall,Precision,F1_score,TPR_when_FPR0p10,TPR_when_FPR0p05,TPR_when_FPR0,FPR_when_TPR0p90,FPR_when_TPR0p95,FPR_when_TPR1p00,HL_test,model_type,model_name 2 | 0.721619897959184,0.757062146892655,0.757062146892655,0.694915254237288,17,22,106,32,0.171875,0.346938775510204,0.346938775510204,0.435897435897436,0.386363636363636,0.29,0.24,0.06,0.55,0.78,1,2.24220642053297e-12,Logistic_Regression,Success_given_idea_member_crowd_nomination 3 | 0.716677295918368,0.751412429378531,0.751412429378531,0.694915254237288,16,21,107,33,0.1640625,0.326530612244898,0.326530612244898,0.432432432432432,0.372093023255814,0.31,0.2,0.12,0.62,0.73,1,1.18872278687121e-09,Logistic_Regression,Success_given_idea_member_crowd 4 | 0.651785714285715,0.728813559322034,0.728813559322034,0.672316384180791,17,26,102,32,0.203125,0.346938775510204,0.346938775510204,0.395348837209302,0.369565217391304,0.24,0.12,0.04,0.66,0.74,1,0.152657340016274,Logistic_Regression,Success_given_idea_crowd 5 | 0.609215561224489,0.72316384180791,0.72316384180791,0.68361581920904,17,24,104,32,0.1875,0.346938775510204,0.346938775510204,0.414634146341463,0.377777777777778,0.24,0.08,0,0.8,0.89,0.92,0.0654277725377325,Logistic_Regression,Success_given_member_crowd 6 | 0.543048469387755,0.72316384180791,0.72316384180791,0.468926553672316,41,86,42,8,0.671875,0.836734693877551,0.836734693877551,0.322834645669291,0.465909090909091,0.08,0,0,0.78,0.8,0.92,4.35649837315921e-06,Logistic_Regression,Success_given_crowd 7 | 0.629027401385125,0.706214689265537,0.706214689265537,0.694915254237288,19,19,104,35,0.154471544715447,0.351851851851852,0.351851851851852,0.5,0.41304347826087,0.24,0.15,0,0.79,0.84,1,0.00133007344219005,Logistic_Regression,Nomination_given_idea_member_crowd 8 | 0.579945799457995,0.72316384180791,0.72316384180791,0.621468926553672,24,37,86,30,0.300813008130081,0.444444444444444,0.444444444444444,0.39344262295082,0.417391304347826,0.22,0.19,0,0.87,0.95,1,0.0421579399442779,Logistic_Regression,Nomiantion_given_idea_crowd 9 | 0.579945799457994,0.700564971751412,0.700564971751412,0.689265536723164,14,15,108,40,0.121951219512195,0.259259259259259,0.259259259259259,0.482758620689655,0.337349397590361,0.17,0.13,0,0.85,0.92,1,0.0837435183344489,Logistic_Regression,Nomination_given_member_crowd 10 | 0.538693164709425,0.700564971751412,0.700564971751412,0.446327683615819,33,77,46,21,0.626016260162602,0.611111111111111,0.611111111111111,0.3,0.402439024390244,0.13,0.13,0.02,0.89,0.89,0.96,1.82033287721151e-06,Logistic_Regression,Nomination_given_crowd 11 | 0.629120879120879,0.88135593220339,0.88135593220339,0.813559322033898,4,16,140,17,0.102564102564103,0.19047619047619,0.19047619047619,0.2,0.195121951219512,0.24,0.1,0,0.72,1,1,0,Logistic_Regression,NominationandSuccess_given_idea_member_crowd 12 | 0.710140306122449,0.728813559322034,0.728813559322034,0.175141242937853,2,3,125,47,0.0234375,0.0408163265306122,0.0408163265306122,0.4,0.0740740740740741,0.16,0.1,0.04,0.65,0.77,0.86,1,linearSVM,Success_given_idea_member 13 | 0.61750637755102,0.728813559322034,0.728813559322034,0.559322033898305,3,1,127,46,0.0078125,0.0612244897959184,0.0612244897959184,0.75,0.113207547169811,0.18,0.06,0.02,0.78,0.95,0.95,1,cubicSVM,Success_given_idea_member 14 | 0.61750637755102,0.728813559322034,0.728813559322034,0.519774011299435,2,0,128,47,0,0.0408163265306122,0.0408163265306122,1,0.0784313725490196,0.1,0.06,0.04,0.77,0.94,0.95,1,quadraticSVM,Success_given_idea_member 15 | 0.665497448979591,0.72316384180791,0.72316384180791,0.096045197740113,0,1,127,49,0.0078125,0,0,0,NaN,0.24,0.12,0,0.82,0.92,0.97,1,mediumGaussianSVM,Success_given_idea_member 16 | 0.674107142857143,0.72316384180791,0.72316384180791,0.220338983050847,39,67,61,10,0.5234375,0.795918367346939,0.795918367346939,0.367924528301887,0.503225806451613,0.1,0.06,0,0.67,0.71,0.88,1,coarseGaussianSVM,Success_given_idea_member 17 | 0.684470663265306,0.728813559322034,0.728813559322034,0.706214689265537,17,20,108,32,0.15625,0.346938775510204,0.346938775510204,0.459459459459459,0.395348837209302,0.31,0.14,0.02,0.61,0.86,0.88,0.000435013119040706,linearDisc,Success_given_idea_member 18 | 0.705835459183674,0.740112994350282,0.740112994350282,0.604519774011299,29,50,78,20,0.390625,0.591836734693878,0.591836734693878,0.367088607594937,0.453125,0.33,0.08,0,0.5,0.69,0.77,0,quadraticDisc,Success_given_idea_member 19 | 0.442442602040816,0.72316384180791,0.72316384180791,0.559322033898305,0,29,99,49,0.2265625,0,0,0,NaN,0,0,0,0.98,1,1,0,simpleTree,Success_given_idea_member 20 | 0.505500637755102,0.72316384180791,0.72316384180791,0.661016949152542,13,24,104,36,0.1875,0.26530612244898,0.26530612244898,0.351351351351351,0.302325581395349,0.04,0.04,0,1,1,1,0,mediumTree,Success_given_idea_member 21 | 0.458625637755102,0.72316384180791,0.72316384180791,0.655367231638418,11,23,105,38,0.1796875,0.224489795918367,0.224489795918367,0.323529411764706,0.265060240963855,0.04,0,0,1,1,1,0,complexTree,Success_given_idea_member 22 | 0.627232142857142,0.734463276836158,0.734463276836158,0.598870056497175,30,52,76,19,0.40625,0.612244897959184,0.612244897959184,0.365853658536585,0.458015267175573,0.22,0.16,0,0.84,0.9,0.99,0,RUSBoostedTrees,Success_given_idea_member 23 | 0.657684948979592,0.757062146892655,0.757062146892655,0.31638418079096,7,3,125,42,0.0234375,0.142857142857143,0.142857142857143,0.7,0.23728813559322,0.37,0.29,0,0.77,0.95,1,1,ensembleBoostedTrees,Success_given_idea_member 24 | 0.655691964285715,0.745762711864407,0.745762711864407,0.745762711864407,19,15,113,30,0.1171875,0.387755102040816,0.387755102040816,0.558823529411765,0.457831325301205,0.35,0.12,0.04,0.7,0.77,0.88,3.70024895525178e-05,ensembleBaggedTrees,Success_given_idea_member 25 | 0.634008290816327,0.72316384180791,0.72316384180791,0.689265536723164,25,31,97,24,0.2421875,0.510204081632653,0.510204081632653,0.446428571428571,0.476190476190476,0,0,0,1,1,1,0,fineKNN,Success_given_idea_member 26 | 0.653938137755102,0.72316384180791,0.72316384180791,0.649717514124294,28,41,87,21,0.3203125,0.571428571428571,0.571428571428571,0.405797101449275,0.474576271186441,0.06,0.06,0,0.92,0.92,1,0.000523500619192929,mediumKNN,Success_given_idea_member 27 | 0.616390306122449,0.72316384180791,0.72316384180791,0.27683615819209,49,128,0,0,1,1,1,0.27683615819209,0.433628318584071,0.04,0.04,0.02,0.69,0.9,0.94,0.296036793732158,coarseKNN,Success_given_idea_member 28 | 0.629304846938776,0.72316384180791,0.72316384180791,0.649717514124294,22,35,93,27,0.2734375,0.448979591836735,0.448979591836735,0.385964912280702,0.415094339622642,0.08,0.02,0,0.91,1,1,7.38864525118288e-11,cosineKNN,Success_given_idea_member 29 | 0.64827806122449,0.72316384180791,0.72316384180791,0.666666666666667,13,23,105,36,0.1796875,0.26530612244898,0.26530612244898,0.361111111111111,0.305882352941176,0.08,0.04,0,0.89,0.89,1,0.000204430134331801,cubicKNN,Success_given_idea_member 30 | 0.685905612244897,0.72316384180791,0.72316384180791,0.694915254237288,30,35,93,19,0.2734375,0.612244897959184,0.612244897959184,0.461538461538462,0.526315789473684,0.18,0.14,0,0.82,0.88,1,0.00035004940121397,weightedKNN,Success_given_idea_member 31 | 0.733258928571429,0.751412429378531,0.751412429378531,0.581920903954802,43,68,60,6,0.53125,0.877551020408163,0.877551020408163,0.387387387387387,0.5375,0.27,0.2,0.12,0.54,0.7,0.89,0,logReg,Success_given_idea_member 32 | --------------------------------------------------------------------------------