├── README.md ├── codejl ├── ccopfmodel_simulation.jl ├── input.jl ├── matrix.jl └── test_prog.jl ├── data ├── bpa │ ├── bpawind_det_forecast10.csv │ ├── bpawind_det_sigma10.csv │ ├── casedjbpa.mat │ ├── coal_power_plants_indices.csv │ ├── costbpa.csv │ ├── gas_power_plants_indices.csv │ ├── hydro_power_plants_indices.csv │ ├── nuclear_power_plants_indices.csv │ ├── overload_line_ind.csv │ ├── rampbpa.csv │ └── season1 │ │ ├── bpawind_det_forecast2160.csv │ │ ├── bpawind_det_sigma2160.csv │ │ ├── bpawind_rob_forecast2160.csv │ │ ├── bpawind_rob_mean_dn2160.csv │ │ ├── bpawind_rob_mean_up2160.csv │ │ ├── bpawind_rob_sigma2160.csv │ │ ├── bpawind_rob_sigma_dn2160.csv │ │ ├── bpawind_rob_sigma_up2160.csv │ │ ├── coal_power_plants_indices.csv │ │ ├── costbpa.csv │ │ ├── gas_power_plants_indices.csv │ │ ├── hydro_power_plants2160.csv │ │ ├── hydro_power_plants_indices.csv │ │ ├── load2160.csv │ │ ├── nuclear_power_plants_indices.csv │ │ └── rampbpa.csv └── casedjbpa.m └── run └── bpa-season1-gamma1.0.dat /README.md: -------------------------------------------------------------------------------- 1 | # RobustCCOPFSupplement 2 | Repository containing supplementary data and code for "A Robust Approach to Chance Constrained Optimal Power Flow with Renewable Generation" by Lubin, Dvorkin, and Backhaus. [DOI](http://dx.doi.org/10.1109/TPWRS.2015.2499753) 3 | 4 | *Installation instructions:* 5 | 6 | The optimization model was implemented by using the [JuMPChance](https://github.com/mlubin/JuMPChance.jl) extension to [JuMP](https://github.com/JuliaOpt/JuMP.jl) in the [Julia](http://julialang.org/downloads/) programming language. 7 | Additionally, we used Gurobi 6.0 in our numerical experiments. [Gurobi](http://www.gurobi.com/) is a commercial solver which must be installed and licensed separately (one may easily use a different solver if Gurobi is not available, see the JuMP documentation). 8 | 9 | The experiments require Julia 0.3 or later, and the following Julia packages: 10 | - [JuMP](https://github.com/JuliaOpt/JuMP.jl) 0.9.0 11 | - [JuMPChance](https://github.com/mlubin/JuMPChance.jl) 0.1.1 12 | - [Gurobi.jl](https://github.com/JuliaOpt/Gurobi.jl) 0.1.26 13 | - [MAT](https://github.com/simonster/MAT.jl) 14 | 15 | You should force the use of particular versions of these Julia packages with 16 | ``` 17 | julia> Pkg.pin("JuMP", v"0.9.0") 18 | julia> Pkg.pin("JuMPChance", v"0.1.1") 19 | julia> Pkg.pin("Gurobi", v"0.1.26") 20 | ``` 21 | 22 | *Running the code:* 23 | 24 | The code for the experiments is contained in the ``codejl`` directory. Note that it is under 700 lines of code. The file ``input.jl`` contains routines and data structures for processing the input, and the file ``ccopfmodel_simulation.jl`` (heavily commented) contains the main simulation logic and optimization model. 25 | 26 | You can run the robust chance-constrained OPF model by entering the ``run`` directory and executing: 27 | ``` 28 | julia ../codejl/ccopfmodel_simulation.jl bpa-season1-gamma1.0.dat 29 | ``` 30 | 31 | By default, this will run a small sample (10 hours) from the first season used in the experiment. See line 220 of ``ccopfmodel_simulation.jl`` to adjust this. The output of the simulation is a ``.mat`` file (``ccopf_bpa_simulation_results_season1_gamma1.0.mat``) which can be opened directly in MATLAB or loaded in Julia via the MAT package. Contained in the ``.mat`` file are the optimal objective values, solution times, solution status, and optimal values for the decision variables. See lines 323 and below of ``ccopfmodel_simulation.jl`` for more details on the output format. 32 | 33 | The file ``bpa-season1-gamma1.0.dat`` specifies all of the input paths and parameters for the simulation. In particular, one can modify the ``robust_budget`` to chance the budget of uncertainty Γ for the parameters of the Gaussian distributions, as discussed in the paper. 34 | -------------------------------------------------------------------------------- /codejl/ccopfmodel_simulation.jl: -------------------------------------------------------------------------------- 1 | #= 2 | Copyright (c) 2015 Miles Lubin and Yury Dvorkin 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 5 | 6 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 7 | 8 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 9 | =# 10 | 11 | # This model refers to the paper: "A robust approach to chance constrained optimal power flow with renewable generation" 12 | # published at http://dx.doi.org/10.1109/TPWRS.2015.2499753. 13 | # Interested readers are referred to the paper for further description of the model. 14 | 15 | # Define packages to be used: 16 | using JuMP # Optimization package 17 | using JuMPChance # Chance constraints package 18 | using Gurobi # Solver, could be altered if needed 19 | using MAT # Package to interface with .mat files 20 | 21 | # Include the file with input data functions 22 | include("input.jl") 23 | # Include the file recalculating the B matrix 24 | include("matrix.jl") 25 | 26 | # Main function solving chance constrained opf 27 | function solve_ccopf(logfilename, refbus, line_probability_threshold, gen_probability_threshold, linebufferamt, mvaBase, loadscale, thermalLimitscale, buses, lines, farms, generatorlist, Binvb, Bhatsp, sumvar, hydro_idx, nuclear_idx, hydro_limit, ramp, robust_budget, loaded_lines_idx, loaded_lines_probability_threshold) 28 | # Dimensions of sets 29 | numbuses = length(buses) # Number of buses 30 | numlines = length(lines) # Number of lines 31 | numfarms = length(farms) # Number of farms 32 | 33 | const Γ=iround(robust_budget*numfarms) # Budget of uncertainty 34 | const VoLL = 10_000 # Value of lost load 35 | 36 | # Define the name of the model and solver settings 37 | m = ChanceModel(solver=GurobiSolver(Method=1,BarHomogeneous=1)) 38 | 39 | # Define variables: 40 | # Non-negative hourly average power output bounded by the maximum limit on each generator: 41 | @defVar(m, 0 <= pbar[i=generatorlist] <= buses[i].Pgmax) 42 | # Regulation participation factor between 0 and 1: 43 | @defVar(m, 0 <= alpha[i=generatorlist] <= ((buses[i].Pgmax == 0) ? 0 : 1)) 44 | # Power flow in each transmission line should be within the limits: 45 | @defVar(m, -lines[i].u <= barf[i=1:numlines] <= lines[i].u) 46 | 47 | @defVar(m, delta[1:(numbuses-1)]) 48 | @defVar(m, h[1:(numbuses-1)]) # \hat B^-1 \bar p 49 | @defVar(m, θ[1:(numbuses-1)]) # thetahat 50 | 51 | @defVar(m, slack_bus[1:(numbuses-1)] >= 0) 52 | 53 | # Define random variable for each wind farm with a given mean and variance 54 | @defIndepNormal(m, winderr[i=1:numfarms], mean=farms[i].deviation_mean_interval, var=farms[i].deviation_sigmasq_interval) 55 | 56 | # Set up the reference bus: 57 | @assert refbus == numbuses 58 | @assert !(refbus in generatorlist) 59 | 60 | # Define constraints on participation factors: 61 | for i in 2:length(hydro_idx) 62 | # Enforce uniform participation factors on hydro power plants 63 | @addConstraint(m, alpha[hydro_idx[i-1]] == alpha[hydro_idx[i]]) 64 | end 65 | # Set participation factors of nuclear generators to 0 (provide no regulation due to the ramping/cycling limitations) 66 | @addConstraint(m, nuclear_alpha_fixed[i=nuclear_idx], alpha[i] == 0) 67 | # Integrality constraint on participation factors: 68 | @addConstraint(m, sumalpha, sum(alpha) == 1) 69 | 70 | # Exogenous outputs of hydro and nuclear generators: 71 | # Enforce the hourly average power output (exogenous value, obtained from a separate hydro scheduling procedure) of wind farms 72 | @addConstraint(m, hydro_ub[k=1:length(hydro_idx)], pbar[hydro_idx[k]] <= hydro_limit[k]) 73 | # Enforce the hourly average power output of nuclear power plants (always committed and output at their maximum power output - "must run" units) 74 | @addConstraint(m, nuclear_fixed[i=nuclear_idx], pbar[i] == buses[i].Pgmax) 75 | 76 | # System-wide power balance constraint: 77 | sumload = sum([getLoad(b) for b in buses]) # system-wide load 78 | sumloadminusmeanwind = sum([getLoadMinusMeanWind(b) for b in buses]) # system-wide net load, i.e. the system-wide load minus the system-wide wind 79 | # Constraint on power balance: 80 | @addConstraint(m, balance, sum(pbar) == sumloadminusmeanwind) 81 | 82 | Brow = Bhatsp' 83 | 84 | # \hat B delta = \alpha 85 | @addConstraint(m, defalpha[i=1:(numbuses-1)], 86 | sum{Brow.nzval[idx]*delta[Brow.rowval[idx]], idx in Brow.colptr[i]:(Brow.colptr[i+1]-1)} - 87 | (isgen(buses[i]) ? alpha[i] : 0) == 0) 88 | 89 | # \hat B h = p 90 | @addConstraint(m, defh[i=1:(numbuses-1)], 91 | sum{Brow.nzval[idx]*h[Brow.rowval[idx]], idx in Brow.colptr[i]:(Brow.colptr[i+1]-1)} - 92 | (isgen(buses[i]) ? pbar[i] : 0) - slack_bus[i] == 0) 93 | 94 | # theta = \hat B^{-1}(w - d) + h = \hat B^{-1}(p + w - d) 95 | @addConstraint(m, BB[i=1:(numbuses-1)], θ[i]-h[i] == Binvb[i]) 96 | 97 | # Calculating flows in transmission lines: 98 | @addConstraint(m, flowangle[i=1:numlines], barf[i] + 99 | (lines[i].tail != numbuses ? -lines[i].y*θ[lines[i].tail] : 0) + 100 | (lines[i].head != numbuses ? lines[i].y*θ[lines[i].head] : 0) == 0) 101 | 102 | 103 | # Chance constraints on power flow limits 104 | for i in 1:numlines 105 | # Calculate expr to be used in chance constraints 106 | ccexpr = 0 107 | tail = lines[i].tail 108 | head = lines[i].head 109 | for j in 1:numfarms 110 | fexpr = 0 111 | if tail != numbuses 112 | fexpr -= delta[tail] - farms[j].colbarinv[tail] 113 | end 114 | if head != numbuses 115 | fexpr += delta[head] - farms[j].colbarinv[head] 116 | end 117 | ccexpr += fexpr*winderr[j] 118 | end 119 | prob_threshold = (i in loaded_lines_idx) ? loaded_lines_probability_threshold : line_probability_threshold 120 | 121 | # Formulate chance constraints for the + and - transmission limits: 122 | addConstraint(m, barf[i] + lines[i].y*ccexpr >= getThermalCapacity(lines[i], mvaBase)*(1-linebufferamt), with_probability=prob_threshold, uncertainty_budget_mean=Γ, uncertainty_budget_variance=Γ) 123 | addConstraint(m, barf[i] + lines[i].y*ccexpr <= -getThermalCapacity(lines[i], mvaBase), with_probability= prob_threshold, uncertainty_budget_mean=Γ, uncertainty_budget_variance=Γ) 124 | end 125 | 126 | # Chance constraints for the maximum output of generators: 127 | sum_deviations = sum([winderr[i] for i in 1:numfarms]) 128 | for i in generatorlist 129 | addConstraint(m, pbar[i] - sum_deviations*alpha[i] >= buses[i].Pgmax, with_probability=gen_probability_threshold, uncertainty_budget_mean=Γ, uncertainty_budget_variance=Γ) 130 | end 131 | 132 | # Chance constraints on the upward (+) and downward(-) ramping: 133 | for (bus_idx, rampmax) in ramp 134 | addConstraint(m, -sum_deviations*alpha[bus_idx] >= rampmax, with_probability=gen_probability_threshold, uncertainty_budget_mean=Γ, uncertainty_budget_variance=Γ) 135 | addConstraint(m, -sum_deviations*alpha[bus_idx] <= -rampmax, with_probability=gen_probability_threshold, uncertainty_budget_mean=Γ, uncertainty_budget_variance=Γ) 136 | end 137 | 138 | 139 | # Set the objective function 140 | @setObjective(m, Min, sum{buses[i].pi1*pbar[i]+buses[i].pi2*(pbar[i]^2 + sumvar*alpha[i]^2), i in generatorlist} + VoLL*sum(slack_bus)) 141 | 142 | 143 | 144 | tic() # track the execution time 145 | status = solvechance(m,method=:Cuts, debug=false) # Solve the model 146 | solvetime = toq() # record the execution time 147 | if status != :Optimal 148 | # if the model isn't solved optimally, return NaNs 149 | return status, NaN, solvetime, fill(NaN, numbuses), fill(NaN, numbuses), fill(NaN, numlines), fill(NaN, numbuses-1) 150 | end 151 | # Return the optimal values if the model is solved optimally 152 | return status, getObjectiveValue(m), solvetime, getValue(alpha), getValue(pbar), getValue(barf), getValue(slack_bus) 153 | 154 | end 155 | 156 | # Read the input data: 157 | logfilename, casefilename, windfilename, costsfilename, refbus, line_probability_threshold, gen_probability_threshold, linebufferamt, uniformalphas, mvaBase, loadscale, thermalLimitscale, extras = readconfig(ARGS[1]) 158 | 159 | # Read specific data for the test case: 160 | numbuses, numgens, generatorlist, numbranches, buses, lines = readcase(casefilename, costsfilename, refbus, loadscale, thermalLimitscale) 161 | 162 | # Initialize index of specific (hydro, nucs, coal, gas) generators and transmission lines (loaded) 163 | hydro_idx = int(readcsv(extras["hydro_indices"])[:]) 164 | nuclear_idx = int(readcsv(extras["nuclear_indices"])[:]) 165 | coal_idx = int(readcsv(extras["coal_indices"])[:]) 166 | gas_idx = int(readcsv(extras["gas_indices"])[:]) 167 | loaded_lines_idx = int(readcsv(extras["loaded_lines_file"])[:]) 168 | # Threshold for the loaded line: 169 | loaded_lines_probability_threshold = float(extras["loaded_lines_probability_threshold"]) 170 | 171 | # Make sure that all generators are exactly one of the above types 172 | @assert issubset(hydro_idx, generatorlist) 173 | @assert issubset(nuclear_idx, generatorlist) 174 | @assert issubset(coal_idx, generatorlist) 175 | @assert issubset(gas_idx, generatorlist) 176 | 177 | # Define the set of indices for hydro generators. Will be used to enforce the uniform participation factors. 178 | fixed_alpha_subsets = [hydro_idx] 179 | 180 | # Extract the names of additional input files from the outputs of redconfig.jl (line 142): 181 | wind_forecast_file = extras["wind_forecast_file"] 182 | wind_sigma_file = extras["wind_sigma_file"] 183 | load_file = extras["load_file"] 184 | hydro_limit_file = extras["hydro_limit_file"] 185 | ramp_file = extras["ramp_file"] 186 | 187 | # Read the input files: 188 | wind_forecast = readcsv(wind_forecast_file) 189 | wind_sigma = readcsv(wind_sigma_file) 190 | loads = readcsv(load_file) 191 | hydro_limit = readcsv(hydro_limit_file) 192 | ramp_csv = readcsv(ramp_file) 193 | ramp = [(int(ramp_csv[i,1]),ramp_csv[i,2]) for i in 1:size(ramp_csv,1)] 194 | 195 | # Extract the name of the out file from the outputs of redconfig.jl (line 142): 196 | output_matfile = extras["output_matfile"] 197 | 198 | # Specify the name of the files, from which the ranges on the mean and sigma should be read: 199 | robust_mean_lower_file = extras["robust_mean_lower_file"] 200 | robust_mean_upper_file = extras["robust_mean_upper_file"] 201 | robust_sigma_lower_file = extras["robust_sigma_lower_file"] 202 | robust_sigma_upper_file = extras["robust_sigma_upper_file"] 203 | # Read the input range on the means and sigma 204 | robust_mean_lower = readcsv(robust_mean_lower_file) 205 | robust_mean_upper = readcsv(robust_mean_upper_file) 206 | robust_sigma_lower = readcsv(robust_sigma_lower_file) 207 | robust_sigma_upper = readcsv(robust_sigma_upper_file) 208 | 209 | # Set the value of the budget of uncertainty from the input file 210 | robust_budget = extras["robust_budget"] 211 | 212 | # determine if the robust ccopf or ccopf to be solved 213 | ROBUST = false 214 | try 215 | robust_budget = float(robust_budget) 216 | ROBUST = true 217 | catch 218 | robust_budget = 0.0 219 | end 220 | 221 | # Display the name of the model to be solved 222 | if ROBUST 223 | println("ROBUST CCOPF with budget $robust_budget") 224 | else 225 | println("CCOPF") 226 | end 227 | 228 | # Time steps to be solved: 229 | #numTimeSteps = size(wind_forecast,2)-1 # uncomment this line and comment the line below in order to run the full experiment. Note that this may take many hours to complete. 230 | numTimeSteps = 10 231 | println("$numTimeSteps time steps") 232 | 233 | # Set up wind farms, using data from time step 1 234 | @assert size(wind_forecast,1) == size(wind_sigma,1) 235 | numfarms = size(wind_forecast,1) 236 | 237 | farms = Farm[] 238 | for i in 1:numfarms 239 | busidx = int(wind_forecast[i,1]) 240 | f = Farm(busidx, 0, 0) 241 | f.colbarinv = Array(Float64, numbuses) 242 | push!(farms, f) 243 | setfarm(buses[busidx],i) 244 | end 245 | 246 | # Factorization, this only needs to be done once 247 | B = genB(buses, lines) 248 | Bhat = remove_col_and_row(B,refbus) 249 | Bhatsp = sparse(Bhat) 250 | Blu = lufact(Bhatsp) 251 | 252 | # Compute terms of the inverse vector 253 | rhs = zeros(numbuses-1) 254 | for f in farms 255 | rhs[f.node] = 1 256 | f.colbarinv[1:numbuses .!= refbus] = Blu\rhs 257 | f.colbarinv[refbus] = 0 258 | rhs[f.node] = 0 259 | end 260 | 261 | # Arrays for storing solution values 262 | objvals = Float64[] 263 | solvetimes = Float64[] 264 | statuses = ASCIIString[] 265 | alphavals = {} 266 | pbarvals = {} 267 | barfvals = {} 268 | slackvals = {} 269 | 270 | for t in 1:numTimeSteps 271 | println("\n\n######## T = $t\n") 272 | for i in 1:size(loads,1) 273 | busidx = int(loads[i,1]) 274 | Pd = float(loads[i,t+1]) 275 | buses[busidx].Pd = Pd 276 | end 277 | for i in 1:numfarms 278 | busidx = int(wind_forecast[i,1]) 279 | mean = loadscale*float(wind_forecast[i,t+1]) 280 | 281 | std = loadscale*float(wind_sigma[i,t+1]) 282 | farms[i].mean = mean 283 | farms[i].stddev = std 284 | if ROBUST 285 | #Scale the upper and lower bounds on the means and sigma ranges: 286 | mean_lb = loadscale*robust_mean_lower[i,t+1] 287 | mean_ub = loadscale*robust_mean_upper[i,t+1] 288 | std_lb = loadscale*robust_sigma_lower[i,t+1] 289 | std_ub = loadscale*robust_sigma_upper[i,t+1] 290 | if isnan(mean_lb) || isnan(mean_ub) || isnan(std_lb) || isnan(std_ub) 291 | error("Invalid data for farm at bus $busidx, T = $t") 292 | end 293 | # Write the mean and variance interval data for each wind farm: 294 | farms[i].deviation_mean_interval = (mean_lb-mean, mean_ub-mean) 295 | farms[i].deviation_sigmasq_interval = (std_lb^2,std_ub^2) 296 | else 297 | # if the ccopf to be solved, the mean is set to 0 and the variance is calculated accordingly: 298 | farms[i].deviation_mean_interval = 0.0 299 | farms[i].deviation_sigmasq_interval = std^2 300 | end 301 | 302 | end 303 | for i in 1:numbuses 304 | setMeanWindMinusLoad(buses[i], farms) 305 | end 306 | 307 | sumvar = 0.0 308 | for f in farms 309 | sumvar += f.stddev^2 310 | end 311 | println("-> sumvar ", sumvar, " stddev ", sqrt(sumvar)) 312 | 313 | barb = (Float64[b.meanwindminusload for b in buses])[1:numbuses .!= refbus] 314 | Binvb = zeros(numbuses) 315 | Binvb[1:numbuses .!= refbus] = Blu\barb 316 | 317 | 318 | # Solve the ccopf model 319 | status, objval, solvetime, alphaval, pbarval, barfval, slackval = 320 | solve_ccopf(logfilename, refbus, line_probability_threshold, gen_probability_threshold, linebufferamt, mvaBase, loadscale, thermalLimitscale, buses, lines, farms, generatorlist, Binvb, Bhatsp, sumvar, hydro_idx, nuclear_idx, hydro_limit[:,t+1], ramp, robust_budget, loaded_lines_idx, loaded_lines_probability_threshold) 321 | 322 | # Write the optimal solution: 323 | push!(objvals, objval) 324 | push!(solvetimes, solvetime) 325 | push!(statuses, string(status)) 326 | push!(alphavals, alphaval) 327 | push!(pbarvals, pbarval) 328 | push!(barfvals, barfval) 329 | push!(slackvals, slackval) 330 | end 331 | 332 | # Prepare the output arrays (first column is generator index) 333 | alphamat = Array(Float64, length(generatorlist), numTimeSteps+1) 334 | pbarmat = Array(Float64, length(generatorlist), numTimeSteps+1) 335 | barfmat = Array(Float64, length(lines), numTimeSteps+1) 336 | slackmat = Array(Float64, length(buses)-1, numTimeSteps+1) 337 | 338 | alphamat[:,1] = generatorlist 339 | pbarmat[:,1] = generatorlist 340 | barfmat[:,1] = 1:length(lines) 341 | slackmat[:,1] = 1:length(buses)-1 342 | 343 | # Create the output arrays 344 | for t in 1:numTimeSteps 345 | for i in 1:length(generatorlist) 346 | alphamat[i,t+1] = alphavals[t][generatorlist[i]] 347 | pbarmat[i,t+1] = pbarvals[t][generatorlist[i]] 348 | end 349 | for i in 1:length(lines) 350 | barfmat[i,t+1] = barfvals[t][i] 351 | end 352 | for i in 1:(length(buses)-1) 353 | slackmat[i,t+1] = slackvals[t][i] 354 | end 355 | end 356 | 357 | #Write the output arrays into the output mat file 358 | mfile = matopen(output_matfile, "w") 359 | write(mfile, "objvals", objvals) 360 | write(mfile, "solvetimes", solvetimes) 361 | write(mfile, "status", statuses) 362 | write(mfile, "alphavals", alphamat) 363 | write(mfile, "pbarvals", pbarmat) 364 | write(mfile, "barfvals", barfmat) 365 | write(mfile, "slackvals", slackmat) 366 | close(mfile) 367 | 368 | 369 | 370 | 371 | 372 | 373 | -------------------------------------------------------------------------------- /codejl/input.jl: -------------------------------------------------------------------------------- 1 | #= 2 | Copyright (c) 2015 Miles Lubin and Yury Dvorkin 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 5 | 6 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 7 | 8 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 9 | =# 10 | 11 | # Code for processing input data for CCOPF simulation 12 | # We define Julia types to store the bus and line data. 13 | 14 | using MAT 15 | 16 | type Bus 17 | nodeID::Int 18 | kind::Int 19 | Pd::Float64 20 | Qd::Float64 21 | Pg::Float64 22 | Qg::Float64 23 | Pgmax::Float64 24 | Qgmax::Float64 25 | Pgmin::Float64 26 | Qgmin::Float64 27 | pi2::Float64 28 | pi1::Float64 29 | Farmids::Vector{Int} 30 | meanwindminusload::Float64 31 | qobjcoeff::Float64 32 | genids::Vector{Int} 33 | outlist::Vector{Int} 34 | inlist::Vector{Int} 35 | function Bus(nodeID, kind, Pd, Qd) 36 | b = new(nodeID, kind, Pd, Qd) 37 | b.Pg = 0 38 | b.Qg = 0 39 | b.Pgmax = 0 40 | b.Qgmax = 0 41 | b.pi1 = 0 42 | b.pi2 = 0 43 | b.Farmids = Int[] 44 | b.meanwindminusload = 0 45 | b.genids = Int[] 46 | b.outlist = Int[] 47 | b.inlist = Int[] 48 | return b 49 | end 50 | end 51 | 52 | # copied from bus.py 53 | function setg(b::Bus, genidx, Pg, Qg, Pgmax, Pgmin) 54 | b.Pg += Pg 55 | b.Qg += Qg 56 | b.Pgmax += Pgmax 57 | b.Pgmin += Pgmin 58 | if b.kind == 1 59 | warn("Generator $genidx was assigned to bus $(b.nodeID), but this bus has type 1") 60 | end 61 | b.kind = 2 62 | push!(b.genids,genidx) 63 | end 64 | 65 | getLoad(b::Bus) = b.Pd 66 | getPg(b::Bus) = b.Pg 67 | isgen(b::Bus) = b.kind == 2 68 | getb(b::Bus) = b.Pg - b.Pd 69 | getLoadMinusMeanWind(b::Bus) = -b.meanwindminusload 70 | function setfarm(b::Bus, farmid) 71 | println("node ", b.nodeID, " is farm ", farmid) 72 | push!(b.Farmids, farmid) 73 | end 74 | function setMeanWindMinusLoad(b::Bus, farms) 75 | b.meanwindminusload = -b.Pd 76 | for farmid in b.Farmids 77 | b.meanwindminusload += farms[farmid].mean 78 | end 79 | end 80 | setqobjcoeff(b::Bus, coeff) = (b.qobjcoeff = coeff) 81 | 82 | type Line 83 | arcID::Int 84 | tail::Int # the "to" node 85 | head::Int # the "from" node 86 | y::Float64 # the susceptance value 87 | x::Float64 # the reactance value 88 | u::Float64 # the capacity of the line 89 | distance_scale::Float64 # this will be used to scale u 90 | Line(arcID, tail, head, y, x, u, d) = new(arcID, tail, head, y, x, u, d) 91 | end 92 | 93 | Line(arcID, tail, head, y, distance_scale) = Line(arcId, tail, head, y, 1/y, 0.0, distance_scale) 94 | 95 | getThermalCapacity(l::Line, mvaBase) = l.u 96 | getSyncCapacity(l::Line, mvaBase) = l.y*mvaBase 97 | 98 | type Farm 99 | node::Int 100 | mean::Float64 101 | stddev::Float64 102 | colbarinv::Vector{Float64} 103 | deviation_mean_interval 104 | deviation_sigmasq_interval 105 | Farm(idx, mean, stddev) = new(idx, mean, stddev, Float64[], mean, stddev^2) 106 | end 107 | 108 | 109 | function readcase(casefilename, costsfilename, refbus, loadscale, thermalLimitScale) 110 | # takes a MATPOWER case file, written out to .mat format 111 | file = matopen(casefilename) 112 | case = read(file, "mpc") 113 | close(file) 114 | 115 | ## bus data 116 | # bus_i type Pd Qd Gs Bs area Vm Va baseKV zone Vmax Vmin 117 | busmat = case["bus"] 118 | buses = Bus[] 119 | for i in 1:size(busmat,1) 120 | @assert busmat[i,1] == i # indexed in order 121 | bustype = int(busmat[i,2]) 122 | Pd = busmat[i,3] 123 | Qd = busmat[i,4] 124 | Gs = busmat[i,5] 125 | Bs = busmat[i,6] 126 | area = busmat[i,7] 127 | Vm = busmat[i,8] 128 | Va = busmat[i,9] 129 | baseKV = busmat[i,10] 130 | zone = busmat[i,11] 131 | Vmax = busmat[i,12] 132 | Vmin = busmat[i,13] 133 | 134 | b = Bus(i, bustype, loadscale*Pd, Qd) 135 | push!(buses, b) 136 | end 137 | 138 | ## generator data 139 | #% bus Pg Qg Qmax Qmin Vg mBase status Pmax Pmin Pc1 Pc2 Qc1min Qc1max Qc2min Qc2max ramp_agc ramp_10 ramp_30 ramp_q apf 140 | generatorlist = Int[] 141 | genmat = case["gen"] 142 | for i in 1:size(genmat,1) 143 | busidx = int(genmat[i,1]) 144 | Pg = genmat[i,2] 145 | Qg = genmat[i,3] 146 | Pgmax = loadscale*genmat[i,9] 147 | Pgmin = loadscale*genmat[i,10] 148 | push!(generatorlist, busidx) 149 | setg(buses[busidx],i,Pg, Qg, Pgmax, Pgmin) 150 | end 151 | 152 | for i in 1:length(buses) 153 | if buses[i].kind == 2 && length(buses[i].genids) == 0 154 | warn("Bus $i is listed as a generator, but no corresponding generator information found") 155 | end 156 | end 157 | 158 | 159 | ## branch data 160 | # fbus tbus r x b rateA rateB rateC ratio angle status angmin angmax 161 | branchmat = case["branch"] 162 | lines = Line[] 163 | for i in 1:size(branchmat,1) 164 | fbus = int(branchmat[i,1]) 165 | tbus = int(branchmat[i,2]) 166 | x = branchmat[i,4] 167 | y = 1/x 168 | u = branchmat[i,6] 169 | 170 | 171 | push!(buses[fbus].outlist, i) 172 | push!(buses[tbus].inlist, i) 173 | 174 | l = Line(i, tbus, fbus, y, x, u*thermalLimitScale, thermalLimitScale) 175 | push!(lines,l) 176 | end 177 | 178 | generatorlist = unique(generatorlist) 179 | 180 | 181 | if costsfilename != "none" 182 | costsmat = readcsv(costsfilename, Float64) 183 | for i in 1:size(costsmat,1) 184 | busid = int(costsmat[i,1]) 185 | @assert length(buses[busid].genids) == 1 186 | buses[busid].pi2 = costsmat[i,2] # quadratic coefficient 187 | buses[busid].pi1 = costsmat[i,3] # linear coefficient 188 | end 189 | else 190 | for g in generatorlist 191 | buses[g].pi2 = 1 # dummy cost 192 | buses[g].pi1 = 0 193 | end 194 | end 195 | 196 | return length(buses), 1:size(genmat,1), generatorlist, length(lines), buses, lines 197 | end 198 | 199 | 200 | function readconfig(configfilename) 201 | println("\nreading config $configfilename") 202 | refbus = 0 203 | uniformalphas = false 204 | 205 | lines = readlines(open(configfilename,"r")) 206 | 207 | numlines = length(lines) 208 | 209 | windfilename = "NONE" 210 | costsfilename = "none" 211 | logfilename = "NONE" 212 | casefilename = "NONE" 213 | 214 | lookingforend = true 215 | line_probability_threshold = 0.005 216 | mvaBase = 100 217 | gen_probability_threshold = 0.05 218 | linebufferamt = 0 219 | loadscale = thermalLimitscale = 1.0 220 | 221 | extras = Dict() 222 | 223 | for l in lines 224 | beginswith(l,'#') && continue 225 | 226 | thisline = split(l) 227 | length(thisline) > 0 || continue 228 | if thisline[1] == "END" 229 | break 230 | elseif thisline[1] == "case" 231 | casefilename = thisline[2] 232 | elseif thisline[1] == "wind" 233 | windfilename = thisline[2] 234 | elseif thisline[1] == "costs" 235 | costsfilename = thisline[2] 236 | elseif thisline[1] == "refbus" 237 | refbus = int(thisline[2]) 238 | elseif thisline[1] == "line_probability_threshold" 239 | line_probability_threshold = float(thisline[2]) 240 | println(">>>> line_probability_threshold = $line_probability_threshold") 241 | elseif thisline[1] == "gen_probability_threshold" 242 | gen_probability_threshold = float(thisline[2]) 243 | println(">>>> gen_probability_threshold = $gen_probability_threshold") 244 | elseif thisline[1] == "linebufferamt" 245 | linebufferamt = float(thisline[2]) 246 | println(">>>> linebufferamt = $linebufferamt") 247 | elseif thisline[1] == "uniformalphas" 248 | uniformalphas = true 249 | println(">>>> uniform alphas") 250 | elseif thisline[1] == "mvaBase" 251 | mvaBase = float(thisline[2]) 252 | println(">>>> mvaBase = $mvaBase") 253 | elseif thisline[1] == "loadscale" 254 | loadscale = float(thisline[2]) 255 | println(">>>> loadscale = $loadscale") 256 | elseif thisline[1] == "thermalLimitscale" 257 | thermalLimitscale = float(thisline[2]) 258 | println(">>>> thermalLimitscale = $thermalLimitscale") 259 | elseif thisline[1] == "logfile" 260 | logfilename = thisline[2] 261 | println(">>>> logfilename = $logfilename") 262 | elseif thisline[1] == "factor" || thisline[1] == "rmatrix" || thisline[1] == "line_sync_nu" 263 | println(">>>> ignoring $(thisline[1])") 264 | else 265 | extras[thisline[1]] = thisline[2] 266 | println(">>>> $(thisline[1]) = $(thisline[2])") 267 | end 268 | end 269 | 270 | return logfilename, casefilename, windfilename, costsfilename, refbus, line_probability_threshold, gen_probability_threshold, linebufferamt, uniformalphas, mvaBase, loadscale, thermalLimitscale, extras 271 | end 272 | 273 | 274 | # includes farmstobuses and setMeanWindMinusLoad 275 | function readwind(windfilename, buses, loadscale) 276 | println("reading wind file $windfilename") 277 | 278 | lines = readlines(open(windfilename,"r")) 279 | 280 | numfarms = int(split(lines[1])[1]) 281 | 282 | farms = Farm[] 283 | 284 | for i in 1:numfarms 285 | id, mean, std = split(lines[i+1]) 286 | push!(farms, Farm(int(id), loadscale*float(mean), loadscale*float(std))) 287 | println("farm $i : $id $mean $std") 288 | end 289 | 290 | for i in 1:numfarms 291 | setfarm(buses[farms[i].node],i) 292 | end 293 | for b in buses 294 | setMeanWindMinusLoad(b, farms) 295 | end 296 | 297 | return numfarms, farms 298 | end 299 | -------------------------------------------------------------------------------- /codejl/matrix.jl: -------------------------------------------------------------------------------- 1 | #= 2 | Copyright (c) 2015 Miles Lubin and Yury Dvorkin 3 | 4 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 5 | 6 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 7 | 8 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 9 | =# 10 | 11 | # code to generate B, the weighted Lapacian: 12 | 13 | #= 14 | B_{ij} = { -\beta_ij, for each line connecting buses (i,j) 15 | sum_k \beta_kj, i = j, for incoming lines (k,j) 16 | 0 otherwise 17 | } 18 | where \beta_ij is the line susceptance 19 | 20 | =# 21 | 22 | 23 | function genB(buses, lines) 24 | 25 | n = length(buses) 26 | B = zeros(n,n) 27 | 28 | for l in lines 29 | i = l.tail 30 | j = l.head 31 | B[i,j] = -l.y 32 | B[j,i] = -l.y 33 | B[i,i] += l.y 34 | B[j,j] += l.y 35 | end 36 | 37 | return B 38 | end 39 | 40 | # generate \hat B by removing the row and column corresponding to the reference bus 41 | function remove_col_and_row(B,refbus) 42 | @assert size(B,1) == size(B,2) 43 | n = size(B,1) 44 | return B[1:n .!= refbus, 1:n .!= refbus] 45 | end 46 | -------------------------------------------------------------------------------- /codejl/test_prog.jl: -------------------------------------------------------------------------------- 1 | using JuMP, JuMPChance 2 | using Gurobi 3 | using MAT 4 | 5 | println("works") 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /data/bpa/bpawind_det_forecast10.csv: -------------------------------------------------------------------------------- 1 | 27,0,4,8,0,0,0,0,2,0 2 | 18,0,8,15,0,0,0,0,4,0 3 | 23,0,16,31,0,0,0,0,7,0 4 | 24,0,16,31,0,0,0,0,7,0 5 | 18,0,8,15,0,0,0,0,4,0 6 | 907,0,12,23,0,0,0,0,5,0 7 | 970,0,11,21,0,0,0,0,5,0 8 | 1040,0,22,40,0,0,0,0,9,0 9 | 1384,0,8,15,0,0,0,0,4,0 10 | 22,0,8,16,0,0,0,0,4,0 11 | 25,0,8,15,0,0,0,0,4,0 12 | 2186,0,6,11,0,0,0,0,2,0 13 | 1121,0,2,3,0,0,0,0,1,0 14 | 1394,0,7,14,0,0,0,0,3,0 15 | 1390,0,2,4,0,0,0,0,1,0 16 | 1400,0,5,10,0,0,0,0,2,0 17 | 21,0,8,15,0,0,0,0,4,0 18 | 18,0,8,15,0,0,0,0,4,0 19 | 31,0,6,11,0,0,0,0,3,0 20 | 31,0,18,34,0,0,0,0,8,0 21 | 25,0,8,15,0,0,0,0,3,0 22 | 24,0,8,15,0,0,0,0,3,0 23 | 970,0,1,2,0,0,0,0,0,0 24 | 1413,0,13,24,0,0,0,0,5,0 25 | -------------------------------------------------------------------------------- /data/bpa/bpawind_det_sigma10.csv: -------------------------------------------------------------------------------- 1 | 27,0.7894,6.3772,9.5783,0.7894,0.7894,0.7894,0.7894,3.2023,0.7894 2 | 18,1.5788,12.754,19.157,1.5788,1.5788,1.5788,1.5788,6.4046,1.5788 3 | 23,3.1576,25.509,38.313,3.1576,3.1576,3.1576,3.1576,12.809,3.1576 4 | 24,3.1576,25.509,38.313,3.1576,3.1576,3.1576,3.1576,12.809,3.1576 5 | 18,1.5788,12.754,19.157,1.5788,1.5788,1.5788,1.5788,6.4046,1.5788 6 | 907,2.3287,18.813,28.256,2.3287,2.3287,2.3287,2.3287,9.4468,2.3287 7 | 970,2.1314,17.218,25.861,2.1314,2.1314,2.1314,2.1314,8.6462,2.1314 8 | 1040,4.1838,33.799,50.765,4.1838,4.1838,4.1838,4.1838,16.972,4.1838 9 | 1384,1.5788,12.754,19.157,1.5788,1.5788,1.5788,1.5788,6.4046,1.5788 10 | 22,1.6183,13.073,19.636,1.6183,1.6183,1.6183,1.6183,6.5647,1.6183 11 | 25,1.5788,12.754,19.157,1.5788,1.5788,1.5788,1.5788,6.4046,1.5788 12 | 2186,1.1052,8.9281,13.41,1.1052,1.1052,1.1052,1.1052,4.4832,1.1052 13 | 1121,0.31576,2.5509,3.8313,0.31576,0.31576,0.31576,0.31576,1.2809,0.31576 14 | 1394,1.4209,11.479,17.241,1.4209,1.4209,1.4209,1.4209,5.7642,1.4209 15 | 1390,0.3947,3.1886,4.7892,0.3947,0.3947,0.3947,0.3947,1.6012,0.3947 16 | 1400,0.98675,7.9715,11.973,0.98675,0.98675,0.98675,0.98675,4.0029,0.98675 17 | 21,1.5788,12.754,19.157,1.5788,1.5788,1.5788,1.5788,6.4046,1.5788 18 | 18,1.5788,12.754,19.157,1.5788,1.5788,1.5788,1.5788,6.4046,1.5788 19 | 31,1.1841,9.5658,14.367,1.1841,1.1841,1.1841,1.1841,4.8035,1.1841 20 | 31,3.5523,28.697,43.102,3.5523,3.5523,3.5523,3.5523,14.41,3.5523 21 | 25,1.4999,12.117,18.199,1.4999,1.4999,1.4999,1.4999,6.0844,1.4999 22 | 24,1.4999,12.117,18.199,1.4999,1.4999,1.4999,1.4999,6.0844,1.4999 23 | 970,0.15788,1.2754,1.9157,0.15788,0.15788,0.15788,0.15788,0.64046,0.15788 24 | 1413,2.4471,19.769,29.693,2.4471,2.4471,2.4471,2.4471,9.9272,2.4471 25 | -------------------------------------------------------------------------------- /data/bpa/casedjbpa.mat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mlubin/RobustCCOPFSupplement/24deb2e4dcb3d0a97ccb7c0402115786c97aa492/data/bpa/casedjbpa.mat -------------------------------------------------------------------------------- /data/bpa/coal_power_plants_indices.csv: -------------------------------------------------------------------------------- 1 | 1078 2 | -------------------------------------------------------------------------------- /data/bpa/costbpa.csv: -------------------------------------------------------------------------------- 1 | 1329,0.0001,0.0001 2 | 1294,0.0001,0.0001 3 | 1708,0.0001,0.0001 4 | 1189,0.0001,0.0001 5 | 1300,0.0001,0.0001 6 | 1712,0.0001,0.0001 7 | 1772,0.0001,0.0001 8 | 2140,0.0001,0.0001 9 | 2137,0.0014951,7.2006 10 | 1038,0.0001,0.0001 11 | 1037,0.015237,17.871 12 | 1550,0.0001,0.0001 13 | 1549,0.0001,0.0001 14 | 2194,0.0001,0.0001 15 | 1253,0.0001,0.0001 16 | 2196,0.0058398,17.467 17 | 2129,0.0058398,17.467 18 | 1095,0.0001,0.0001 19 | 1112,0.0001,0.0001 20 | 1046,0.0001,0.0001 21 | 1200,0.0001,0.0001 22 | 2170,0.0001,0.0001 23 | 793,0.0058398,17.467 24 | 1094,0.0058398,17.467 25 | 72,0.0058398,17.467 26 | 638,0.0001,0.0001 27 | 707,0.0001,0.0001 28 | 611,0.0001,0.0001 29 | 91,0.0001,0.0001 30 | 2169,0.0001,0.0001 31 | 775,0.0001,0.0001 32 | 644,0.0058398,17.467 33 | 857,0.0058398,17.467 34 | 1776,0.0001,0.0001 35 | 1780,0.13637,29.446 36 | 1110,0.02557,18.537 37 | 1097,0.0001,0.0001 38 | 2048,0.13637,29.446 39 | 2131,0.05139,28.765 40 | 760,0.0058398,17.467 41 | 997,0.13637,29.446 42 | 1007,0.13637,29.446 43 | 186,0.02557,18.537 44 | 190,0.0001,0.0001 45 | 195,0.0001,0.0001 46 | 162,0.0001,0.0001 47 | 161,0.0001,0.0001 48 | 1957,0.0001,0.0001 49 | 1995,0.0001,0.0001 50 | 1577,0.0001,0.0001 51 | 31,0.0001,0.0001 52 | 14,0.0001,0.0001 53 | 1040,0.0058398,17.467 54 | 782,0.0001,0.0001 55 | 23,0.0058398,17.467 56 | 88,0.0001,0.0001 57 | 1492,0.0001,0.0001 58 | 543,0.0001,0.0001 59 | 544,0.0001,0.0001 60 | 539,0.0001,0.0001 61 | 1483,0.0001,0.0001 62 | 757,0.0001,0.0001 63 | 756,0.0001,0.0001 64 | 46,0.0001,0.0001 65 | 352,0.0001,0.0001 66 | 419,0.0001,0.0001 67 | 513,0.0001,0.0001 68 | 1139,0.0001,0.0001 69 | 755,0.0001,0.0001 70 | 754,0.0001,0.0001 71 | 337,0.0001,0.0001 72 | 339,0.0001,0.0001 73 | 336,0.0001,0.0001 74 | 2181,0.0001,0.0001 75 | 1391,0.0001,0.0001 76 | 156,0.0001,0.0001 77 | 310,0.0001,0.0001 78 | 388,0.0001,0.0001 79 | 343,0.0001,0.0001 80 | 1480,0.0001,0.0001 81 | 21,0.0058398,17.467 82 | 38,0.0001,0.0001 83 | 63,0.0001,0.0001 84 | 51,0.0001,0.0001 85 | 480,0.0001,0.0001 86 | 487,0.0058398,17.467 87 | 491,0.0001,0.0001 88 | 130,0.015237,17.871 89 | 879,0.055305,28.092 90 | 1005,0.0001,0.0001 91 | 366,0.0001,0.0001 92 | 1412,0.0001,0.0001 93 | 1420,0.0001,0.0001 94 | 42,0.0001,0.0001 95 | 614,0.0058398,17.467 96 | 1907,0.13637,29.446 97 | 1572,0.0001,0.0001 98 | 1781,0.0001,0.0001 99 | 391,0.0001,0.0001 100 | 496,0.0001,0.0001 101 | 495,0.0001,0.0001 102 | 406,0.0001,0.0001 103 | 1292,0.0058398,17.467 104 | 1497,0.0058398,17.467 105 | 2177,0.015237,17.871 106 | 1283,0.055305,28.092 107 | 1496,0.0058398,17.467 108 | 1444,0.0001,0.0001 109 | 1644,0.0001,0.0001 110 | 1546,0.0001,0.0001 111 | 344,0.0001,0.0001 112 | 342,0.0001,0.0001 113 | 334,0.0001,0.0001 114 | 333,0.0001,0.0001 115 | 348,0.0001,0.0001 116 | 347,0.0001,0.0001 117 | 346,0.0001,0.0001 118 | 359,0.0001,0.0001 119 | 356,0.0001,0.0001 120 | 396,0.0001,0.0001 121 | 192,0.0001,0.0001 122 | 159,0.05139,28.765 123 | 174,0.02557,18.537 124 | 170,0.13637,29.446 125 | 169,0.13637,29.446 126 | 1400,0.01026,23.978 127 | 1027,0.13637,29.446 128 | 27,0.055305,28.092 129 | 18,0.02557,18.537 130 | 26,0.05139,28.765 131 | 983,0.0001,0.0001 132 | 1006,0.0001,0.0001 133 | 910,0.0001,0.0001 134 | 882,0.0001,0.0001 135 | 2207,0.0001,0.0001 136 | 179,0.0001,0.0001 137 | 748,0.0001,0.0001 138 | 1450,0.0001,0.0001 139 | 919,0.0001,0.0001 140 | 918,0.0001,0.0001 141 | 931,0.0001,0.0001 142 | 938,0.0001,0.0001 143 | 930,0.0001,0.0001 144 | 929,0.0001,0.0001 145 | 920,0.0001,0.0001 146 | 588,0.0001,0.0001 147 | 76,0.0001,0.0001 148 | 1012,0.0058398,17.467 149 | 1026,0.0058398,17.467 150 | 1489,0.0001,0.0001 151 | 1028,0.0058398,17.467 152 | 1886,0.0001,0.0001 153 | 1891,0.0001,0.0001 154 | 1888,0.0001,0.0001 155 | 1890,0.0001,0.0001 156 | 1960,0.0001,0.0001 157 | 778,0.0001,0.0001 158 | 776,0.0001,0.0001 159 | 1955,0.0001,0.0001 160 | 2027,0.0001,0.0001 161 | 1999,0.0001,0.0001 162 | 2026,0.0001,0.0001 163 | 1511,0.0001,0.0001 164 | 1186,0.0001,0.0001 165 | 1314,0.0001,0.0001 166 | 1702,0.0001,0.0001 167 | 1667,0.0001,0.0001 168 | 1515,0.0001,0.0001 169 | 1514,0.0001,0.0001 170 | 1078,0.0031257,26.47 171 | 1137,0.0001,0.0001 172 | 1063,0.0001,0.0001 173 | 1409,0.0001,0.0001 174 | 1568,0.0001,0.0001 175 | 1713,0.0001,0.0001 176 | 1142,0.0001,0.0001 177 | -------------------------------------------------------------------------------- /data/bpa/gas_power_plants_indices.csv: -------------------------------------------------------------------------------- 1 | 1037 2 | 2196 3 | 2129 4 | 793 5 | 1094 6 | 72 7 | 644 8 | 857 9 | 1780 10 | 1110 11 | 2048 12 | 2131 13 | 760 14 | 997 15 | 1007 16 | 186 17 | 1040 18 | 23 19 | 21 20 | 487 21 | 130 22 | 879 23 | 614 24 | 1907 25 | 1292 26 | 1497 27 | 2177 28 | 1283 29 | 1496 30 | 159 31 | 174 32 | 170 33 | 169 34 | 1400 35 | 1027 36 | 27 37 | 18 38 | 26 39 | 1012 40 | 1026 41 | 1028 42 | -------------------------------------------------------------------------------- /data/bpa/hydro_power_plants_indices.csv: -------------------------------------------------------------------------------- 1 | 1329 2 | 1294 3 | 1708 4 | 1189 5 | 1300 6 | 1712 7 | 1772 8 | 2140 9 | 1038 10 | 1550 11 | 1549 12 | 2194 13 | 1253 14 | 1095 15 | 1112 16 | 1046 17 | 1200 18 | 2170 19 | 638 20 | 707 21 | 611 22 | 91 23 | 2169 24 | 775 25 | 1776 26 | 1097 27 | 190 28 | 195 29 | 162 30 | 161 31 | 1957 32 | 1995 33 | 1577 34 | 31 35 | 14 36 | 782 37 | 88 38 | 1492 39 | 543 40 | 544 41 | 539 42 | 1483 43 | 757 44 | 756 45 | 46 46 | 352 47 | 419 48 | 513 49 | 1139 50 | 755 51 | 754 52 | 337 53 | 339 54 | 336 55 | 2181 56 | 1391 57 | 156 58 | 310 59 | 388 60 | 343 61 | 1480 62 | 38 63 | 63 64 | 51 65 | 480 66 | 491 67 | 1005 68 | 366 69 | 1412 70 | 1420 71 | 42 72 | 1572 73 | 1781 74 | 391 75 | 496 76 | 495 77 | 406 78 | 1444 79 | 1644 80 | 1546 81 | 344 82 | 342 83 | 334 84 | 333 85 | 348 86 | 347 87 | 346 88 | 359 89 | 356 90 | 396 91 | 192 92 | 983 93 | 1006 94 | 910 95 | 882 96 | 2207 97 | 179 98 | 748 99 | 1450 100 | 919 101 | 918 102 | 931 103 | 938 104 | 930 105 | 929 106 | 920 107 | 588 108 | 76 109 | 1489 110 | 1886 111 | 1891 112 | 1888 113 | 1890 114 | 1960 115 | 778 116 | 776 117 | 1955 118 | 2027 119 | 1999 120 | 2026 121 | 1511 122 | 1186 123 | 1314 124 | 1702 125 | 1667 126 | 1515 127 | 1514 128 | 1137 129 | 1063 130 | 1409 131 | 1568 132 | 1713 133 | 1142 134 | -------------------------------------------------------------------------------- /data/bpa/nuclear_power_plants_indices.csv: -------------------------------------------------------------------------------- 1 | 2137 2 | -------------------------------------------------------------------------------- /data/bpa/overload_line_ind.csv: -------------------------------------------------------------------------------- 1 | 667 2 | 668 3 | 669 4 | 670 5 | 674 6 | 675 7 | 676 8 | 678 9 | 679 10 | 680 11 | 682 12 | 1812 13 | 1813 14 | 1920 15 | 1922 16 | -------------------------------------------------------------------------------- /data/bpa/rampbpa.csv: -------------------------------------------------------------------------------- 1 | 1329,17.7 2 | 1294,24.6 3 | 1708,48 4 | 1189,70 5 | 1300,26.4 6 | 1712,92 7 | 1772,89.448 8 | 2140,1 9 | 2137,280 10 | 1038,2160 11 | 1037,420 12 | 1550,804.81 13 | 1549,810 14 | 2194,5.4 15 | 1253,13.305 16 | 2196,310 17 | 2129,310 18 | 1095,9.0398 19 | 1112,980 20 | 1046,6.5 21 | 1200,6809 22 | 2170,1299.6 23 | 793,310 24 | 1094,310 25 | 72,310 26 | 638,11 27 | 707,59.271 28 | 611,13.1 29 | 91,100 30 | 2169,70 31 | 775,162 32 | 644,310 33 | 857,310 34 | 1776,2456.2 35 | 1780,60 36 | 1110,120 37 | 1097,642 38 | 2048,60 39 | 2131,90 40 | 760,310 41 | 997,60 42 | 1007,60 43 | 186,120 44 | 190,20 45 | 195,26 46 | 162,15 47 | 161,112.28 48 | 1957,87.016 49 | 1995,25.5 50 | 1577,1.6 51 | 31,219.07 52 | 14,1819.7 53 | 1040,310 54 | 782,292.73 55 | 23,310 56 | 88,12.05 57 | 1492,391.5 58 | 543,3.2 59 | 544,27 60 | 539,0.6 61 | 1483,4.44 62 | 757,69.623 63 | 756,227.93 64 | 46,6 65 | 352,2.8 66 | 419,6 67 | 513,1.2 68 | 1139,6.3 69 | 755,131.61 70 | 754,107.87 71 | 337,29 72 | 339,42.6 73 | 336,15 74 | 2181,45.6 75 | 1391,175.47 76 | 156,9.5 77 | 310,3.2 78 | 388,51.5 79 | 343,10.243 80 | 1480,25.08 81 | 21,310 82 | 38,28.6 83 | 63,18.9 84 | 51,1.1 85 | 480,3.2 86 | 487,310 87 | 491,98.7 88 | 130,420 89 | 879,120 90 | 1005,3 91 | 366,11 92 | 1412,140.4 93 | 1420,2.2 94 | 42,109.8 95 | 614,310 96 | 1907,60 97 | 1572,942.66 98 | 1781,763.89 99 | 391,18 100 | 496,2.1 101 | 495,20 102 | 406,17.2 103 | 1292,310 104 | 1497,310 105 | 2177,420 106 | 1283,120 107 | 1496,310 108 | 1444,27.1 109 | 1644,42 110 | 1546,810 111 | 344,18 112 | 342,8.8093 113 | 334,26 114 | 333,33 115 | 348,5.2036 116 | 347,3.8 117 | 346,32 118 | 359,49 119 | 356,10.5 120 | 396,0.75 121 | 192,111.73 122 | 159,90 123 | 174,120 124 | 170,60 125 | 169,60 126 | 1400,70 127 | 1027,60 128 | 27,120 129 | 18,120 130 | 26,90 131 | 983,1092.9 132 | 1006,10 133 | 910,6.4 134 | 882,5.4 135 | 2207,15.4 136 | 179,3.8804 137 | 748,1.2 138 | 1450,8.798 139 | 919,35.5 140 | 918,20.8 141 | 931,18.8 142 | 938,28.378 143 | 930,11.033 144 | 929,51 145 | 920,10.73 146 | 588,1.6 147 | 76,1 148 | 1012,310 149 | 1026,310 150 | 1489,95.946 151 | 1028,310 152 | 1886,20 153 | 1891,35.9 154 | 1888,16 155 | 1890,3.7 156 | 1960,12 157 | 778,70 158 | 776,17.628 159 | 1955,198 160 | 2027,75.864 161 | 1999,51.8 162 | 2026,35.817 163 | 1511,6.6 164 | 1186,28.993 165 | 1314,10 166 | 1702,27.37 167 | 1667,32 168 | 1515,148.24 169 | 1514,1038 170 | 1078,140 171 | 1137,12 172 | 1063,1.6 173 | 1409,150 174 | 1568,9.4 175 | 1713,618.16 176 | 1142,12.9 177 | -------------------------------------------------------------------------------- /data/bpa/season1/bpawind_rob_forecast2160.csv: -------------------------------------------------------------------------------- 1 | 27,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,47,41,28,25,18,13,11,7,1,0,0,0,6,11,7,11,11,10,10,8,5,6,2,0,0,0,0,0,0,0,0,0,0,50,50,50,49,50,50,50,41,40,39,33,25,24,18,11,0,0,0,7,10,12,11,8,29,30,26,32,46,41,49,50,44,42,37,43,50,50,36,34,40,50,50,50,50,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,50,50,50,50,50,50,50,26,0,0,0,24,50,0,0,0,0,0,0,0,50,50,0,50,50,50,50,50,50,50,46,50,50,50,0,0,50,50,50,50,50,50,50,50,25,29,35,42,27,26,30,35,43,35,47,44,33,30,26,34,29,20,17,22,48,36,44,31,49,50,50,50,47,50,47,49,50,50,44,41,25,17,0,0,0,0,0,0,0,0,5,24,30,26,15,0,10,10,0,0,6,8,12,15,27,50,50,50,50,42,23,0,0,0,3,14,10,32,33,30,24,19,5,0,0,0,7,5,0,7,4,15,32,38,27,30,32,24,21,26,28,17,7,7,2,17,42,50,50,50,50,50,50,50,50,50,0,0,0,0,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,43,50,50,50,50,50,50,50,50,50,50,50,49,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,46,26,13,27,26,33,35,42,38,50,50,32,50,50,50,50,50,50,50,50,50,50,50,50,50,41,47,50,50,47,38,26,0,0,0,29,43,33,27,24,26,19,15,13,26,28,26,39,45,45,44,47,37,31,25,21,15,0,16,31,36,42,44,42,48,50,50,50,50,46,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,43,41,28,26,6,1,32,50,50,47,45,33,35,38,39,34,4,0,0,0,0,0,0,50,50,50,50,50,43,31,23,12,10,11,11,6,0,14,27,27,35,42,49,47,35,40,26,43,32,42,50,34,38,29,21,8,7,25,31,26,37,42,47,50,50,43,39,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,45,46,50,50,50,50,50,50,50,50,50,27,10,50,36,50,50,50,50,50,38,26,50,50,50,50,50,50,50,50,50,50,50,50,42,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,50,50,50,50,0,0,50,0,0,50,50,50,50,49,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,46,0,50,50,50,50,50,48,50,50,17,4,33,35,38,46,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,30,13,1,2,20,47,50,50,50,50,50,50,50,50,50,50,50,50,0,50,50,0,0,0,50,50,50,50,50,50,50,50,50,50,34,37,6,0,0,2,9,22,12,9,0,0,16,28,40,42,30,7,22,50,50,50,50,50,50,50,34,38,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,0,50,50,50,50,50,42,41,23,5,0,0,0,0,6,3,17,36,32,35,12,36,50,50,50,50,50,50,50,43,50,31,24,28,7,10,7,27,39,27,30,36,44,46,48,50,50,50,44,39,49,50,50,50,39,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,0,0,50,50,50,50,50,0,0,0,0,0,0,50,50,50,50,50,0,50,50,50,50,50,50,50,50,43,32,48,39,32,40,45,50,50,50,50,50,50,50,50,50,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,37,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,0,50,50,0,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,48,50,50,50,50,50,50,50,50,50,50,50,50,0,50,50,50,50,50,50,50,50,50,45,20,15,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,40,32,21,0,22,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,0,50,50,50,50,50,50,50,50,39,37,45,50,50,50,50,50,50,50,46,41,28,14,0,8,36,43,45,33,13,0,2,29,39,47,42,37,31,19,17,2,0,0,0,6,3,10,8,17,27,29,38,42,48,50,50,43,31,14,5,0,0,13,28,48,47,48,50,50,50,50,50,50,50,50,50,49,38,40,49,44,44,50,50,48,45,50,43,50,46,23,33,39,35,49,50,50,33,50,38,46,19,38,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,0,0,0,0,0,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,47,50,50,50,45,50,45,45,47,50,50,41,38,32,49,50,41,46,27,12,18,36,40,50,50,40,39,50,50,50,50,50,50,48,50,50,50,50,50,49,50,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,43,41,46,44,38,50,50,19,3,0,11,23,50,43,20,50,37,31,42,31,34,31,10,7,14,9,12,23,22,16,8,2,0,18,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,49,45,38,31,36,37,33,43,47,37,35,40,45,46,43,43,37,39,40,40,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,49,50,50,50,49,50,50,50,50,50,50,50,50,50,50,38,36,34,6,3,17,37,48,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,47,33,11,0,0,35,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,30,26,27,7,0,0,0,0,1,0,0,0,0,0,0,0,0,0,1,16,22,32,36,33,36,39,42,41,35,34,26,18,20,8,3,0,0,3,22,43,48,47,43,42,39,50,43,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,49,43,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,41,32,34,28,35,46,41,17,37,47,50,50,43,29,42,43,39,46,50,50,50,50,50,50,50,50,50,50,43,41,41,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,0,50,39,30,21,14,28,29,20,27,29,50,48,50,33,17,3,4,10,2,12,1,0,0,0,0,18,41,50,50,50,50,50,50,50,50,50,50,50,50,50,50,0,50,50,50,50,50,50,50,50,50,50,50,48,36,32,41,50,47,43,34,38,33,26,28,44,47,50,50,50,50,50,50,50,50,50,50,50,50,50,50,0,0,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,45,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,45,39,50,14,21,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,46,41,21,11,2,4,1,0,0,0,50,50,0,0,0,0,0,0,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,47,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,50,49,50,46,35,29,25,21,0,0,0,0,0,2,1,10,33,45,45,41,21,0,10,32,41,47,48,49,49,50,50,50,50,50,50,50,49,50,50,49,46,47,45,41,46,46,43,45,43,50,50,50,50,50,50,50,50,50,50,50,47,50,31,26,23,27,27,29,48,42,39,34,23,16,18,17,20,17,11,11,13,21,11,15,20,24,10,7,0,0,0,0,22,4,13,7,0,8,12,9,15,22,25,31,41,44,46,38,29,8,6,0,0,2,9,16,24,50,29,2,0,0,0,9,9,0,3,1,0,0,0,0,17,8,0,0,5,11,29,43,48,39,40,44,50,50,50,25,19,12,26,1,0,0,0,0,0,3,5,18,30,33,33,30,18,5,0,0,10,20,29,45,50,50,50,50,50,50,50,50,50,47,40,35,39,44,44,46,50,50,50,50,50,50,50,50,43,46,49,50,50,50,47,41,43,30,17,19,13,0,1,50,50,50 2 | 18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,67,16,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,6,0,6,1,0,9,32,29,35,0,0,5,34,52,50,81,91,87,94,95,99,100,100,100,99,83,90,78,72,72,63,52,48,56,55,40,27,10,38,50,20,52,78,82,93,93,81,100,100,100,100,98,86,86,60,54,52,56,46,12,20,16,76,73,100,100,100,47,61,82,90,62,69,72,44,50,51,40,48,34,35,30,28,30,37,35,22,22,23,14,0,0,6,10,13,29,24,29,22,18,34,29,26,7,5,21,10,0,30,43,16,13,0,0,0,0,0,1,0,0,0,0,4,0,0,17,41,39,71,70,51,62,38,12,0,0,0,0,0,0,0,0,0,0,0,0,0,4,35,82,100,100,100,100,100,100,100,100,100,100,100,88,89,100,62,26,5,1,0,0,12,9,14,19,49,19,14,3,0,0,0,7,0,13,3,9,17,10,15,28,28,3,10,9,2,0,0,0,0,0,0,0,0,0,0,4,2,2,3,4,14,4,0,0,3,2,1,0,5,6,6,0,0,0,0,0,0,5,10,5,6,8,7,0,0,0,0,0,0,3,73,100,100,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,95,9,0,0,0,0,0,0,0,0,0,0,0,46,77,100,100,100,0,0,0,0,0,0,100,100,100,100,100,100,99,100,100,84,35,33,9,21,31,29,33,37,26,22,19,37,50,50,41,22,22,22,0,0,12,15,23,23,40,15,34,28,36,45,34,33,39,32,57,29,15,18,19,23,24,39,39,35,35,41,36,37,35,40,47,48,33,29,40,37,41,30,40,26,35,50,53,57,45,40,46,45,43,38,45,59,55,40,54,49,42,69,54,72,62,81,70,76,91,84,82,95,70,92,86,100,87,89,100,93,96,86,73,81,62,68,50,67,77,70,85,78,75,59,70,65,75,88,69,84,85,85,83,71,84,72,63,50,64,55,62,65,68,66,53,53,54,74,69,62,66,80,77,69,59,47,46,32,22,37,24,32,24,39,30,17,13,1,0,0,7,4,11,0,0,0,21,7,12,11,0,10,16,0,0,0,0,0,22,46,22,72,89,100,100,100,100,100,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,1,9,11,40,14,13,7,5,6,2,19,13,0,7,1,1,2,0,0,5,11,6,15,0,0,4,8,13,0,19,30,60,88,92,70,75,82,31,100,81,100,100,100,100,100,49,25,26,27,39,37,39,27,13,20,29,28,33,36,45,73,54,22,39,61,57,59,65,66,74,49,61,64,66,54,35,38,28,32,22,26,23,6,0,18,61,100,100,100,100,100,100,100,100,29,81,33,44,40,54,44,29,8,0,0,0,7,0,0,0,0,46,84,85,32,1,0,0,0,7,0,0,9,26,10,20,0,0,17,0,4,15,0,0,5,7,9,3,24,39,43,44,30,27,25,35,31,26,18,33,23,28,15,14,7,12,13,19,21,20,20,17,15,7,0,24,10,7,0,0,0,10,33,38,7,0,0,0,0,0,0,7,1,0,2,8,24,26,23,19,25,25,31,36,29,28,31,43,48,30,17,23,12,10,13,18,20,21,2,5,28,30,19,24,20,21,23,36,42,43,46,38,43,39,40,47,46,50,33,5,28,58,56,62,75,73,62,69,60,61,56,55,55,69,63,45,65,64,54,56,58,37,50,49,34,22,17,31,9,28,29,36,40,15,30,17,5,6,3,0,3,3,0,0,0,14,3,0,0,0,0,6,0,0,42,31,50,100,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,88,22,42,37,37,13,17,29,33,50,55,88,96,81,100,100,100,72,60,77,51,53,49,59,43,37,30,45,28,10,0,0,0,0,0,4,0,0,0,9,29,15,3,22,7,21,70,100,100,100,100,100,58,0,0,0,0,0,7,12,0,0,0,0,38,51,58,100,100,100,100,100,100,100,100,100,100,100,100,89,100,100,65,21,64,70,36,22,6,40,34,22,26,12,22,28,23,26,22,28,14,0,0,10,22,9,18,14,26,24,37,17,30,30,30,41,42,46,55,56,65,55,63,55,61,68,70,54,60,83,66,43,38,53,68,72,65,73,77,90,36,57,55,61,61,62,62,60,66,57,56,81,94,96,100,94,68,100,77,93,100,100,72,100,74,66,67,85,87,92,89,54,63,56,58,61,60,54,98,42,14,75,56,25,51,45,31,31,33,14,13,23,25,31,12,4,0,2,0,0,0,0,0,0,0,0,14,45,52,62,27,28,46,54,59,100,100,85,100,92,100,94,88,81,57,58,49,100,100,100,100,73,50,75,63,59,41,49,23,18,26,25,35,26,0,0,0,0,0,11,3,5,35,63,55,53,63,39,57,2,1,0,13,29,10,3,28,24,14,23,4,0,0,4,1,0,0,0,0,0,34,19,5,24,34,65,92,94,88,61,57,53,49,50,31,34,38,56,58,54,62,68,69,72,71,63,56,58,57,57,46,62,51,65,69,61,62,55,44,26,32,13,16,14,12,0,0,0,22,22,0,0,0,0,1,8,0,0,0,23,1,5,5,14,5,8,5,25,36,29,35,48,100,100,94,100,80,66,78,81,57,44,31,38,48,40,28,31,25,24,2,0,0,0,0,11,0,9,45,13,48,91,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,100,0,0,0,0,0,100,100,100,100,100,100,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,100,100,100,40,30,57,53,47,60,52,41,46,49,50,50,48,51,52,32,25,16,13,2,0,28,38,17,17,15,0,0,0,0,16,24,42,80,100,100,100,100,100,100,100,100,100,100,100,100,100,100,59,100,74,37,0,0,7,41,49,9,7,29,16,16,17,12,25,4,12,6,25,41,18,22,11,27,26,13,12,9,24,30,34,13,5,7,7,0,0,0,0,0,19,8,5,28,36,1,8,0,0,0,0,0,0,0,5,0,15,5,6,9,6,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,3,0,7,17,21,40,49,38,18,21,18,8,24,22,25,32,42,31,21,30,48,28,7,1,0,1,18,19,20,14,20,11,21,35,19,0,0,0,9,0,0,0,0,0,4,0,13,0,0,27,89,95,100,100,99,100,100,100,100,84,63,41,14,1,6,0,0,3,40,43,44,48,65,38,31,16,51,53,31,42,54,47,22,29,31,25,23,18,4,0,1,3,22,10,29,10,33,36,54,30,46,41,36,54,65,39,33,31,47,40,50,44,74,71,52,49,81,87,87,93,100,97,76,65,84,100,93,87,88,95,83,93,87,70,66,57,41,53,54,58,48,44,41,46,61,54,71,55,71,72,28,25,35,27,28,52,43,42,24,16,26,25,18,26,16,13,10,6,0,0,8,59,85,100,100,100,0,0,0,0,0,0,100,0,0,0,0,0,100,100,100,100,0,0,0,0,0,0,0,100,100,100,100,100,93,100,72,96,100,84,62,100,100,100,100,100,100,100,100,100,87,71,77,67,74,63,90,86,71,80,84,68,63,50,35,31,19,28,100,52,100,100,100,100,100,79,70,54,38,54,83,28,39,28,31,21,41,26,7,13,10,37,58,27,38,15,8,41,37,7,15,14,0,0,0,5,13,6,20,49,44,7,0,0,9,12,0,0,1,10,4,20,47,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,99,100,100,100,100,100,100,100,100,100,100,100,100,100,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,79,5,0,0,0,0,8,0,3,2,0,14,0,0,24,77,100,100,100,100,100,100,100,100,100,100,100,100,100,100,85,49,5,0,3,40,38,12,25,50,41,45,65,35,71,100,100,100,100,100,100,100,100,76,100,100,25,0,12,43,0,4,12,26,14,7,3,0,0,0,24,100,100,100,13,0,0,0,0,1,7,5,0,0,11,55,100,100,100,100,100,100,0,0,0,0,0,100,100,0,0,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,0,100,100,100,100,100,85,100,100,100,46,2,28,40,39,44,53 3 | 23,56,59,94,56,7,0,0,0,35,0,0,0,0,0,13,0,0,0,0,23,0,0,27,0,0,0,0,40,22,17,0,0,19,4,0,0,0,40,56,72,34,8,26,60,76,90,48,10,0,6,63,81,43,0,32,1,0,0,0,2,12,38,12,26,4,0,0,0,0,0,27,23,0,0,0,0,0,0,0,0,0,8,6,27,9,3,48,73,79,200,131,146,178,177,177,152,119,111,77,46,1,0,0,0,0,0,0,7,12,0,0,0,0,0,0,0,19,144,138,30,19,43,156,200,200,200,114,21,57,154,180,139,52,38,200,200,200,200,200,200,200,200,200,200,200,182,200,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,200,200,200,200,200,200,0,200,0,0,0,0,0,0,0,0,0,0,0,0,200,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,200,200,200,200,200,200,200,200,200,200,200,200,200,154,54,5,0,12,30,56,54,200,200,200,179,196,182,181,200,200,181,154,155,91,139,88,40,85,184,200,179,123,119,141,141,172,173,153,180,160,200,200,200,200,200,200,87,17,67,106,82,36,40,86,25,0,11,104,125,124,106,33,87,38,0,6,80,150,57,0,0,9,25,55,21,0,0,0,0,0,73,105,200,200,200,200,200,200,200,200,196,173,200,200,200,154,124,152,200,200,200,200,200,200,200,154,181,200,200,200,200,200,200,200,200,200,157,196,177,115,155,133,46,38,31,0,22,14,2,0,0,0,28,69,141,200,138,106,5,0,0,39,41,29,31,50,19,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,28,76,0,0,54,58,2,0,171,137,42,4,0,0,3,3,22,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,20,26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,8,33,0,0,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,0,0,0,0,0,0,200,200,200,200,200,200,200,200,0,0,200,200,200,200,200,115,11,34,34,0,31,53,59,30,64,77,48,2,8,44,9,70,68,200,165,162,200,25,0,0,28,159,127,200,200,176,104,53,39,0,0,51,181,200,92,200,176,200,200,200,200,200,192,125,181,200,166,200,195,74,145,106,114,178,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,0,0,0,200,200,200,200,0,0,0,0,0,0,0,0,0,0,0,0,200,200,0,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,200,200,200,200,200,200,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,200,200,0,0,0,0,0,0,0,0,200,200,200,200,200,200,200,200,200,200,148,42,26,6,37,42,44,19,0,0,0,1,26,40,19,24,0,36,40,0,6,0,26,44,2,0,5,0,0,0,4,29,41,31,104,184,200,200,200,199,145,177,198,200,200,200,200,200,200,200,200,162,200,200,200,200,200,0,200,200,200,200,200,200,200,200,200,200,200,200,200,200,179,101,2,0,28,41,0,0,34,108,134,135,142,131,193,176,200,200,200,200,200,200,200,200,0,200,200,200,0,200,200,200,0,0,0,0,0,0,200,0,0,0,0,0,0,200,200,200,161,128,25,10,142,133,109,200,0,0,0,0,0,0,200,200,200,200,200,200,200,0,200,200,200,200,196,200,200,135,200,117,126,200,186,185,200,200,193,154,163,167,191,191,143,73,131,170,146,51,0,77,49,200,200,95,126,195,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,0,0,0,0,0,0,0,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,165,200,155,147,148,141,164,200,131,64,66,0,10,30,27,1,0,0,21,19,24,33,19,26,91,103,46,75,6,0,40,0,0,119,155,114,195,187,200,200,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,200,0,0,0,200,200,200,200,200,200,200,200,200,200,181,197,200,100,47,49,59,39,1,0,87,64,0,46,78,62,59,7,13,64,131,171,168,200,200,200,176,135,85,20,16,36,13,0,31,39,0,32,24,0,4,0,26,0,39,119,144,100,130,186,176,103,0,75,52,6,29,124,194,166,98,72,116,187,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,0,0,200,200,0,200,0,200,0,0,0,0,0,0,0,0,200,200,200,200,171,105,179,200,200,200,200,200,200,200,200,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,200,200,200,200,200,200,200,200,200,200,176,130,72,27,156,200,200,0,0,0,200,200,200,200,200,200,200,179,200,200,200,154,150,152,70,66,65,23,26,71,200,200,189,177,75,94,183,135,116,152,200,200,200,200,200,200,200,200,200,200,200,200,200,200,0,200,200,0,0,0,0,0,200,0,0,0,0,200,200,0,0,200,200,200,200,200,200,154,92,200,200,200,200,200,200,200,200,200,200,200,200,200,166,164,194,200,200,196,200,200,200,0,0,0,0,0,0,0,0,0,0,200,0,0,0,0,0,0,200,200,200,101,200,200,200,178,200,200,200,169,114,89,131,177,143,131,200,128,17,7,18,45,48,82,119,111,113,139,151,99,61,200,0,0,0,200,166,31,0,0,26,142,155,101,62,132,134,200,171,179,162,200,200,200,200,191,87,126,113,148,186,130,64,117,74,71,48,43,105,136,31,32,182,200,200,0,0,0,0,0,0,0,0,200,200,200,200,200,0,200,200,200,200,200,200,122,47,14,94,76,136,110,78,64,73,83,68,82,74,94,90,67,152,197,187,117,113,151,101,110,125,112,100,135,134,156,146,75,65,32,39,147,178,179,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,190,169,131,70,63,40,0,0,75,200,179,200,200,200,200,200,0,0,0,200,200,200,200,200,200,200,200,200,200,200,200,200,196,200,0,0,200,0,200,200,0,0,200,200,0,0,0,0,200,200,200,200,200,107,67,0,64,118,89,163,118,106,137,93,97,97,109,193,181,200,200,200,200,200,200,200,200,200,200,200,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,200,200,200,200,200,200,200,157,178,200,200,200,200,200,200,200,0,200,200,200,200,200,200,0,0,0,0,0,200,200,0,0,200,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,200,200,200,189,181,121,80,64,63,15,19,77,93,80,48,33,45,69,106,82,84,59,39,117,55,0,121,191,105,200,198,143,200,154,200,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,160,0,0,0,0,0,0,0,0,0,0,200,200,200,200,200,200,200,200,197,196,194,200,171,179,200,64,127,200,188,189,200,200,200,200,200,200,200,200,140,107,99,47,29,28,26,0,33,40,43,27,26,23,23,11,0,6,43,0,0,0,0,0,0,3,30,53,65,49,49,28,34,81,87,98,156,160,147,112,88,8,0,0,0,60,29,29,58,66,84,75,84,102,110,96,126,200,200,200,182,192,200,173,172,186,197,200,200,195,200,126,23,0,9,48,56,69,73,48,39,36,29,26,47,0,0,3,0,0,17,20,72,82,29,71,0,19,43,57,37,57,54,51,49,50,119,0,0,48,27,73,145,54,1,102,105,95,21,36,2,9,39,40,58,44,24,66,74,97,73,77,98,75,0,2,102,100,145,118,106,188,200,200,200,200,164,126,45,43,8,22,13,0,30,69,14,0,76,70,133,109,91,0,0,0,0,0,0,8,40,49,109,66,25,0,0,25,62,57,23,23,0,0,18,34,119,200,119,69,112,72,51,84,110,66,96,90,76,21,0,20,57,105,125,107 4 | 24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,0,200,0,0,0,0,0,0,0,0,0,161,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,200,0,0,0,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,0,0,0,0,0,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,200,0,0,0,0,0,0,0,0 5 | 18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,94,100,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,100,100,0,72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 6 | 907,24,43,89,87,86,67,56,68,52,29,16,0,0,0,0,0,0,0,1,33,50,32,60,77,72,95,111,117,95,82,82,71,69,50,99,125,89,75,100,100,103,79,38,56,96,65,74,94,45,65,55,35,42,40,29,35,57,11,0,0,0,27,0,0,32,43,12,0,14,23,13,10,16,14,18,27,37,78,9,0,16,0,0,0,0,0,0,36,64,132,79,36,0,0,10,0,0,0,5,8,3,0,0,0,0,0,14,42,25,47,46,10,23,14,19,13,6,0,0,0,3,31,46,23,10,20,31,84,28,0,0,0,0,0,0,0,0,23,0,0,0,1,0,22,0,20,39,32,2,0,0,2,12,37,42,88,148,0,0,0,0,0,0,0,0,0,0,148,148,148,148,148,148,148,148,148,148,100,8,44,0,29,0,6,79,78,18,32,84,132,148,115,56,1,0,40,66,148,75,148,125,118,148,148,0,0,0,0,148,0,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,132,111,26,14,17,104,148,148,148,123,86,148,148,96,4,0,4,16,0,0,29,25,76,117,121,24,8,0,41,113,148,148,92,0,0,40,92,23,11,6,29,12,20,12,0,0,0,5,23,0,0,0,0,7,100,79,58,59,17,0,12,0,0,73,9,0,0,31,28,2,23,37,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,21,37,22,13,16,14,11,70,98,132,94,30,82,88,141,131,28,0,0,0,34,61,4,0,0,42,0,0,3,5,12,0,0,0,0,4,11,33,8,0,18,15,49,32,30,6,0,0,6,0,0,26,0,57,72,40,6,0,0,0,12,23,35,29,0,0,0,0,0,16,0,7,32,28,20,0,0,8,10,2,0,0,0,0,0,0,3,0,0,0,30,41,58,53,12,0,0,0,0,0,0,1,0,0,0,0,4,28,31,14,26,0,0,0,1,0,0,41,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,19,32,16,5,0,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,3,9,0,0,7,0,0,33,90,74,32,11,3,0,5,16,5,36,34,33,42,49,8,1,3,38,58,81,82,70,78,110,61,40,1,0,0,30,58,62,57,58,49,29,27,17,0,6,0,0,43,82,67,52,61,40,71,66,54,54,43,20,4,0,14,19,36,26,18,21,0,0,0,26,10,23,39,21,52,67,0,0,47,66,69,47,27,3,0,0,0,0,8,57,72,0,0,0,0,16,35,60,0,0,15,14,31,25,11,19,8,0,35,9,0,0,3,0,0,0,19,63,11,0,0,0,0,8,8,12,0,0,6,0,1,0,0,0,0,1,6,0,13,52,148,148,148,148,148,148,148,148,129,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,0,0,0,0,0,0,0,0,0,0,0,0,148,148,148,148,148,148,148,148,148,148,148,148,148,0,0,0,0,0,0,0,0,0,148,0,0,0,0,0,0,0,0,148,148,0,0,0,0,0,0,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,0,148,148,148,90,43,101,22,14,3,0,0,12,28,6,0,0,28,46,56,72,47,35,0,0,6,0,0,0,0,0,20,8,9,0,0,0,0,0,0,0,0,25,72,17,19,37,12,0,0,14,4,0,0,0,27,2,72,24,0,0,0,6,66,98,17,0,3,0,0,0,66,51,9,0,0,0,0,0,0,0,0,0,0,0,0,0,8,36,34,36,26,29,18,23,34,76,14,70,76,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,34,49,0,0,148,0,0,148,148,148,148,148,148,148,142,72,91,26,0,72,26,0,0,0,32,0,35,11,11,11,19,33,72,77,65,0,1,35,0,0,0,11,1,0,0,0,0,0,0,1,4,26,25,67,103,107,59,33,43,66,79,46,46,0,0,0,0,0,0,0,0,0,75,0,0,0,0,0,0,0,0,0,0,0,148,0,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,75,61,8,0,0,21,7,2,10,10,15,26,17,0,0,22,18,0,72,77,58,68,77,33,6,6,0,37,15,60,8,0,0,2,0,0,0,0,7,7,35,8,49,53,59,24,0,1,10,26,52,63,0,16,97,51,0,21,2,34,12,11,68,148,148,148,148,148,148,148,148,148,148,148,148,148,148,129,148,148,148,148,148,0,0,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,114,102,105,109,148,148,75,148,148,148,148,148,0,0,0,0,148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,148,148,148,148,148,148,148,148,148,148,70,97,138,123,77,55,42,43,69,104,148,2,15,71,116,101,34,59,148,148,141,65,31,0,31,94,86,49,123,73,58,115,148,141,118,148,59,0,19,62,7,50,52,23,0,25,2,0,7,1,1,3,0,0,20,46,70,123,134,134,104,148,148,148,148,148,109,75,103,108,122,148,148,148,148,148,90,63,148,148,101,82,148,78,148,107,148,125,49,32,54,0,0,0,6,25,5,0,0,0,0,53,148,148,148,0,148,148,0,148,148,148,148,148,0,148,148,148,148,148,148,0,0,148,148,148,148,148,148,148,80,54,93,100,35,77,82,11,30,40,41,0,0,27,0,0,14,29,89,92,113,148,148,148,143,130,0,0,16,20,0,10,23,0,0,26,0,79,22,0,0,7,102,148,148,148,148,91,90,91,89,103,118,44,0,54,35,0,24,73,0,0,20,60,55,83,94,101,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,135,97,0,0,5,66,113,62,42,37,14,0,0,2,14,64,53,31,26,24,20,0,0,0,17,0,0,0,0,0,0,0,4,3,0,0,10,39,74,28,0,48,102,66,75,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,26,4,0,3,19,0,0,0,30,76,82,34,32,109,146,148,148,148,134,142,148,148,100,119,148,148,148,148,148,148,148,136,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,112,43,24,29,7,52,100,36,0,0,0,0,0,43,90,29,5,0,25,22,23,0,38,67,70,79,148,148,136,148,148,148,148,148,148,148,148,0,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,0,148,148,148,0,0,0,0,0,0,148,148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,148,148,0,148,148,148,148,148,148,148,148,0,0,0,0,0,0,0,0,0,0,148,148,148,148,148,113,7,16,14,0,0,0,0,0,0,0,0,0,22,81,83,0,43,73,99,86,148,24,123,99,132,33,19,42,85,73,0,2,0,0,0,139,148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,148,148,0,148,148,0,0,0,0,0,0,0,0,0,0,0,148,148,148,148,148,148,148,148,148,148,148,148,148,142,108,82,97,148,148,148,148,148,78,148,148,148,112,122,148,148,148,53,16,32,20,0,0,0,0,2,20,37,24,29,45,27,18,32,16,15,46,74,28,0,0,0,0,0,0,0,0,37,48,65,14,23,43,44,56,25,2,20,55,27,3,0,0,0,17,0,0,80,13,35,13,0,25,83,96,109,120,119,99,120,112,65,51,18,5,30,13,0,3,17,0,55,48,0,0,0,0,14,9,0,6,11,8,0,14,0,0,5,0,47,123,73,59,15,59,27,39,0,0,0,0,2,64,60,65,61,87,135,117,68,95,107,47,9,33,58,50,16,29,2,7,53,15,0,0,0,13,9,11,0,0,0,13,18,12,0,36,76,39,65,92,0,0,5,26,30,66,57,40,0,17,19,21,19,0,69,111,128,138,100,19,2,15,5,0,11,0,0,5,0,0,0,20,69,72,89,80,107,135,113,83,77,76,32,0,31,30,17,11,1,1,0,0,0,0,0,0,9,21,106,117,49,43,73,80,96,18,86 7 | 970,0,0,0,0,0,0,9,0,0,0,13,28,16,15,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,107,128,101,88,62,46,63,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,28,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,21,57,56,54,38,24,42,54,76,49,39,54,58,39,28,22,27,9,0,9,26,10,0,0,3,0,0,0,0,0,12,69,75,65,72,72,74,88,84,79,85,81,70,68,54,49,42,66,57,30,5,52,67,30,41,0,24,30,31,6,0,10,16,0,0,0,0,0,19,0,3,0,0,5,4,12,4,0,0,0,0,0,0,0,0,0,7,0,0,0,0,16,8,0,0,0,0,0,0,0,0,0,0,0,0,0,37,57,28,7,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,8,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,26,10,11,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,15,11,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,12,2,15,10,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,28,0,0,0,0,0,0,1,0,0,0,0,4,10,2,13,9,0,0,0,20,29,35,29,15,4,9,17,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,32,27,22,32,27,0,0,1,12,20,3,13,11,30,6,0,0,0,0,0,0,21,13,15,10,0,0,8,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,23,30,27,26,20,8,20,26,35,37,40,43,34,47,54,51,25,16,25,41,37,14,37,49,35,29,39,13,3,19,12,20,32,29,26,10,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,32,56,56,27,22,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,10,8,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,5,0,0,0,0,2,30,24,0,0,4,16,13,36,69,43,49,76,47,41,49,36,38,0,10,20,28,30,8,22,31,37,41,6,0,0,0,2,15,42,39,57,52,33,52,41,26,47,18,36,66,42,40,11,0,0,2,0,3,34,1,0,0,0,0,3,0,0,0,11,0,0,0,2,0,3,0,0,0,0,0,19,54,0,0,0,50,121,84,94,92,86,44,44,35,12,0,2,0,0,0,0,0,0,0,0,0,0,0,0,7,19,23,15,8,8,8,0,0,2,10,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,29,40,21,19,13,0,0,15,35,18,0,7,1,0,0,0,0,0,7,9,17,9,16,3,2,23,16,19,7,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,11,11,0,16,22,51,22,27,0,0,11,9,12,38,32,25,25,15,20,21,20,15,24,12,11,6,0,0,0,9,0,0,1,0,0,0,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0,0,0,8,0,0,7,0,0,0,0,0,0,0,3,15,27,9,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,17,3,2,6,0,1,0,0,13,13,16,12,14,19,4,34,63,75,85,36,33,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,25,21,4,15,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,31,47,51,40,33,13,5,2,2,19,0,0,5,8,17,0,5,0,0,0,8,22,8,36,43,72,84,68,73,53,44,10,0,0,0,0,0,0,1,0,0,0,0,0,0,0,8,2,12,28,47,50,25,17,1,12,24,40,31,19,23,0,15,0,0,11,22,34,24,36,43,46,59,72,73,47,43,49,55,34,39,19,21,0,0,0,15,73,57,50,56,48,67,45,92,76,60,72,76,56,54,21,27,23,5,29,31,28,22,15,2,12,9,23,28,0,6,22,0,19,45,89,95,45,39,9,19,0,0,0,0,0,0,0,0,0,0,0,0,0,7,10,0,26,34,61,47,40,19,8,5,0,6,9,36,15,58,59,49,2,0,26,0,0,36,26,34,41,79,105,135,86,39,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17,0,0,24,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,18,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,13,28,32,22,30,53,62,34,37,55,35,32,20,18,40,54,72,43,43,54,35,31,48,32,36,26,3,20,19,17,30,44,48,46,28,14,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,14,17,29,13,72,115,49,30,6,0,0,33,6,0,0,0,0,0,0,0,0,15,6,0,8,24,0,7,19,0,0,25,26,55,5,0,0,0,0,0,0,0,0,0,0,6,0,0,29,36,20,23,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,13,16,0,0,0,0,0,0,0,6,0,0,20,17,26,35,27,22,31,25,0,0,0,4,21,50,44,58,53,47,35,22,6,19,8,13,19,18,18,13,6,0,0,0,0,0,5,18,2,8,0,0,17,3,0,0,21,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,18,33,25,20,26,14,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,10,26,3,1,0,0,0,0,0,0,0,0,0,0,0,6,16,37,27,35,44,38,13,0,1,31,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,26,32,38,12,40,38,31,37,29,19,0,0,0,0,0,0,0,0,0,0,0,0,0,16,12,5,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,9,0,2,19,0,19,48,50,52,63,44,129,63,13,1,16,7,22,9,5,27,18,0,2,0,0,11,32,14,29,25,44,65,54,50,101,69,23,21,9,0,0,0,0,0,0,0,0,0,0,0,0,0,13,35,52,22,19,5,16,22,0,8,0,7,35,2,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,5,30,17,55,76,92,92,88,70,104,75,81,67,93,107,54,88,109,22,14,10,0,13,23,1,21,23,0,22,41,4,1,20,28,20,41,66,42,123,72,122,103,70,34,0,6,0,0,0,0,0,0,0,0,0,3,0,0,0,0,1,35,26,50,0,0,43,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,9,21,0,22,43,51,38,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,6,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,0,7,28,28,37,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,35,40,42,6,28,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,6,0,0,17,18,8,0,23,0,8,0,0,0,0,0,0,0,0,0,0,0,1,5,4,5,19,14,17,8,0,0,0,54,61,52,44,23,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,33,34,58,28,0,0 8 | 1040,0,0,2,0,0,0,0,0,0,0,0,0,0,0,31,101,90,118,136,79,47,39,54,97,87,122,110,80,123,112,123,142,149,151,140,162,190,193,154,166,200,226,222,258,213,150,102,81,40,6,35,66,90,81,60,100,89,68,53,6,17,8,0,0,8,0,16,0,0,8,0,1,0,0,0,0,0,0,0,18,2,0,13,0,82,158,125,0,44,114,170,130,141,130,74,69,34,4,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,0,0,0,54,0,15,0,30,90,66,61,121,36,52,69,143,164,99,231,260,265,265,243,203,207,201,180,159,106,64,168,221,265,265,213,155,208,157,182,265,265,265,265,0,265,265,265,265,265,265,265,265,265,265,265,265,265,183,205,87,77,19,0,37,103,196,206,265,265,265,265,265,265,265,265,265,265,265,265,214,243,265,265,265,265,197,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,249,265,265,242,237,263,264,259,259,261,265,245,239,202,254,265,229,250,265,265,258,265,265,265,191,110,110,135,143,133,127,7,0,37,60,62,48,41,95,96,167,138,98,56,47,13,25,0,17,37,88,56,21,75,37,108,33,37,0,4,86,157,159,89,27,0,25,51,37,22,39,23,29,5,24,29,42,0,0,0,0,0,0,0,2,22,21,28,37,3,0,0,7,27,15,59,98,83,20,6,120,122,128,258,265,265,265,265,265,265,247,145,179,228,184,265,252,151,153,94,90,86,88,172,189,206,182,101,120,168,165,125,108,83,47,51,33,69,0,46,17,53,83,113,95,100,64,63,119,99,106,118,161,163,73,0,0,0,35,63,0,0,56,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,0,34,121,168,145,192,202,187,104,79,0,0,2,61,56,167,212,169,248,212,190,252,208,135,108,157,107,14,77,47,46,19,0,0,0,0,0,24,0,0,0,0,23,59,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,31,29,0,0,0,0,0,10,0,0,0,0,0,0,0,0,41,44,28,44,21,0,0,0,63,14,28,63,130,133,237,248,265,229,238,265,265,189,177,146,54,2,0,0,4,24,3,11,77,63,47,0,59,0,41,27,18,75,75,97,25,47,88,82,135,66,20,0,0,30,46,50,106,123,239,177,113,58,82,104,151,171,162,196,183,143,110,116,112,176,151,189,193,233,265,265,214,265,265,265,265,265,265,210,207,263,265,265,265,254,259,265,265,237,254,257,265,265,259,265,250,168,238,191,98,143,105,185,265,265,265,265,265,265,265,265,255,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,0,0,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,0,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,222,211,252,265,265,265,264,265,265,265,265,253,265,265,265,250,227,265,265,0,265,265,225,193,191,198,163,61,0,0,21,25,17,0,0,0,31,130,97,70,21,128,138,138,138,138,138,138,138,138,123,114,69,92,76,90,34,0,12,96,116,43,22,10,0,50,30,81,87,46,129,155,143,106,160,233,207,265,265,265,265,265,265,256,265,265,265,265,265,230,215,265,241,201,202,179,173,246,155,185,112,134,52,12,20,0,0,0,2,9,0,78,42,58,84,0,0,18,18,222,265,265,252,265,253,257,157,151,230,265,265,265,265,263,263,265,265,231,265,265,265,265,265,265,134,121,111,174,164,117,151,83,107,129,93,38,0,0,29,66,0,103,76,37,120,175,265,265,265,265,265,265,265,265,233,178,215,192,265,245,241,203,156,160,93,86,114,98,50,89,112,74,30,44,84,30,46,0,0,6,75,121,111,90,105,123,73,140,146,210,192,265,265,265,259,265,265,263,224,60,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,78,265,265,265,265,265,265,265,265,265,265,265,265,265,265,198,190,175,199,232,265,228,265,133,120,227,195,183,127,93,71,73,100,62,13,0,51,25,0,0,30,93,120,98,82,54,46,30,22,51,111,106,80,123,79,127,48,33,0,0,0,0,31,106,0,24,230,263,248,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,258,265,265,265,251,265,265,265,223,166,123,103,107,79,13,27,0,0,9,7,25,45,0,0,21,37,141,114,197,176,195,196,150,91,58,108,61,51,3,40,0,27,33,51,73,83,16,16,60,115,86,124,123,60,75,90,1,53,67,0,54,111,114,134,83,89,121,81,84,128,90,107,184,221,265,265,265,265,265,265,177,161,247,144,153,186,202,213,208,236,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,250,259,265,265,265,265,265,236,265,236,128,198,209,260,246,265,0,0,265,0,265,265,265,265,265,265,0,265,265,0,265,265,265,265,265,265,208,265,265,265,265,265,265,265,265,265,254,265,265,249,265,265,265,265,265,265,265,265,265,264,265,265,265,265,265,265,230,265,265,155,93,151,128,96,118,89,140,157,133,132,161,265,265,265,265,0,265,265,0,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,228,245,251,249,195,251,265,231,177,161,111,54,2,0,27,38,75,83,85,95,123,112,126,172,121,148,203,168,259,207,230,194,151,203,146,101,58,74,112,104,78,115,138,127,147,150,150,0,6,59,32,75,46,87,98,92,209,265,265,265,246,265,252,228,197,224,265,265,265,265,265,265,201,97,178,265,265,265,265,265,265,265,236,265,265,265,255,265,202,189,265,265,265,265,265,265,265,253,216,168,194,163,148,216,246,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,259,265,253,249,239,265,265,265,265,265,265,265,265,206,190,209,51,0,0,0,6,29,83,32,66,106,99,59,198,156,182,146,146,117,115,147,152,249,254,219,229,186,172,192,164,163,235,148,193,265,263,265,249,145,7,15,59,98,88,84,186,170,255,265,233,198,181,177,245,152,265,265,134,188,145,67,18,52,60,123,178,225,265,265,265,265,265,265,212,219,251,227,204,243,197,222,177,165,180,157,180,153,86,66,55,44,21,34,45,30,28,8,0,95,60,52,106,104,86,106,30,56,49,24,47,85,104,118,121,83,69,62,89,74,66,64,45,22,17,32,38,64,124,91,146,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,135,265,244,168,168,138,184,121,130,110,137,175,102,107,71,31,65,213,255,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,186,178,216,210,148,185,160,146,92,177,152,127,151,105,113,27,32,79,19,28,19,0,0,3,71,131,178,202,217,261,265,265,265,265,265,265,265,265,265,195,265,265,265,265,238,229,265,265,265,265,265,265,265,265,265,265,265,265,265,242,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,0,265,265,265,0,265,265,265,265,265,265,265,252,265,265,265,265,265,265,265,0,265,265,265,265,265,265,265,265,240,265,265,265,265,265,265,265,265,244,265,265,265,265,265,265,265,265,265,265,265,198,105,65,36,140,208,226,220,205,228,258,265,252,117,133,222,89,143,111,126,141,116,130,104,0,25,12,38,0,11,100,184,247,265,265,265,265,265,265,0,0,0,0,0,0,265,265,265,265,265,265,265,265,0,0,265,265,265,265,265,0,265,265,265,265,265,265,265,265,265,265,265,265,265,265,265,248,265,261,265,265,265,263,264,265,265,265,265,265,243,265,265,242,265,265,265,240,242,242,210,181,142,104,90,23,25,22,0,0,0,0,3,32,103,107,59,67,30,17,0,21,21,28,47,125,113,53,76,119,131,159,128,119,107,73,101,100,144,209,193,151,134,100,103,52,27,65,100,131,108,93,55,123,144,111,98,92,66,119,160,184,149,115,144,170,155,227,207,140,50,46,58,33,3,0,0,4,0,0,32,0,15,44,66,56,56,27,0,9,0,34,40,29,45,21,54,113,123,51,0,7,9,0,0,50,40,57,61,33,67,72,43,51,100,120,43,81,72,70,93,128,94,103,99,52,0,3,0,0,26,52,0,24,12,37,99,96,80,43,47,70,135,65,64,115,120,145,184,198,139,112,123,131,153,68,120,153,163,146,136,149,119,139,98,89,33,0,0,0,0,25,81,110,157,171,107,176,140,130,131,160,119,16,48,189,182,199,246,97,70,150,182,195,201,181,198,191,207,167,131,143,113,89,96,136,129,140,95,185,168,165,82,24,63 9 | 1384,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0 10 | 22,0,0,4,0,0,17,11,16,9,11,24,17,20,31,25,20,31,18,0,9,17,29,20,22,29,27,33,37,37,50,46,61,64,72,85,69,61,56,53,50,42,36,47,68,80,70,73,62,55,59,51,37,35,33,60,40,45,56,30,60,60,58,31,20,14,0,0,0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,29,29,4,19,37,31,17,24,21,28,9,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,69,65,79,89,86,103,103,103,103,103,103,103,103,103,103,77,49,0,0,0,14,10,3,0,0,0,0,0,0,0,0,0,0,67,94,43,0,0,0,0,0,0,0,0,0,0,15,57,83,57,53,66,37,24,17,31,0,0,0,0,0,0,1,0,0,0,29,52,26,17,54,51,41,63,63,90,62,64,66,45,26,54,72,75,50,74,11,0,20,0,55,26,11,0,0,0,0,0,0,4,14,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,11,60,44,103,103,90,82,98,99,103,103,103,103,103,102,49,55,77,76,80,57,6,0,0,0,0,0,0,0,0,0,0,13,28,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16,22,31,12,11,14,0,7,12,4,14,11,8,23,16,22,22,18,17,11,17,21,20,20,17,15,9,5,7,14,9,0,0,0,0,0,0,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,0,10,12,15,19,12,19,18,15,12,17,20,18,10,15,19,17,11,10,19,15,23,24,25,27,16,20,29,19,22,18,24,27,24,33,34,36,40,32,23,31,31,14,22,25,26,20,18,3,8,7,13,19,19,0,5,9,23,24,22,17,17,12,14,11,9,9,16,8,18,15,22,3,13,10,6,18,28,21,30,35,34,28,33,31,17,18,19,17,14,29,40,26,21,8,26,10,11,28,25,18,20,3,12,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,31,62,73,58,45,42,31,0,5,13,40,0,25,7,0,0,47,12,66,31,88,86,98,92,98,68,69,46,50,33,4,0,17,24,18,32,5,0,0,17,2,44,0,7,41,65,80,62,62,103,103,96,95,103,103,103,103,103,103,103,100,103,96,89,98,91,99,101,67,77,93,99,103,103,103,103,103,103,98,103,98,75,86,95,101,103,103,103,103,103,103,92,103,103,103,103,103,103,101,88,93,80,78,68,74,77,55,0,60,99,103,100,73,49,61,49,58,83,85,69,72,87,91,72,46,63,73,64,7,0,0,0,29,62,57,26,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,19,25,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,24,103,103,103,103,103,103,103,103,83,81,41,30,24,60,25,23,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,3,5,4,53,67,15,0,0,0,0,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,29,27,42,40,35,46,0,0,0,0,23,45,63,60,30,5,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,0,59,72,91,88,27,60,51,52,54,24,16,45,0,66,41,62,34,27,65,48,86,103,79,96,97,91,103,73,73,62,46,25,26,46,43,16,0,0,0,0,0,0,0,0,0,0,0,44,67,85,94,92,93,43,68,47,9,0,0,2,32,65,61,71,103,103,62,58,82,82,103,103,89,82,0,43,50,32,0,103,103,103,103,82,103,103,103,103,98,70,74,93,103,103,103,99,83,81,82,66,74,60,71,77,44,54,89,63,94,103,89,103,96,103,103,98,100,103,102,103,103,99,75,56,57,58,8,0,0,83,99,81,93,90,57,67,50,51,30,27,27,63,64,72,78,67,67,63,57,6,40,26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,38,30,44,30,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,71,61,103,103,76,70,42,72,59,43,78,75,98,63,2,12,60,64,84,56,40,33,57,61,78,101,103,85,67,54,43,27,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,34,40,49,49,32,19,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,12,4,0,0,16,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,34,100,103,103,98,85,59,14,19,32,1,0,0,0,0,0,0,0,31,62,86,101,76,64,103,92,87,82,65,65,23,36,59,62,42,44,42,0,0,20,6,0,4,0,0,0,0,38,15,0,0,75,66,52,97,75,52,92,103,103,67,91,100,78,70,0,0,0,52,96,101,80,87,97,103,94,81,49,60,3,75,84,63,65,30,17,41,46,40,73,96,81,66,68,80,81,89,68,67,66,57,55,17,0,2,0,0,0,0,0,0,0,0,0,0,65,59,60,14,0,86,92,103,103,71,56,38,49,38,34,74,103,15,22,24,71,103,86,74,80,91,25,47,32,24,13,0,43,41,30,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,11,51,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,26,28,59,59,50,23,35,17,10,0,0,0,0,24,17,56,49,70,65,60,27,41,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,50,103,103,103,43,31,25,72,89,55,43,49,51,96,82,69,21,7,6,6,23,58,65,92,89,84,65,77,94,72,0,3,17,0,0,0,0,0,0,0,0,0,0,0,0,11,46,22,34,44,52,69,50,36,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,0,18,5,0,0,0,4,14,38,29,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,7,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,40,90,77,64,43,76,48,35,57,39,20,0,0,0,0,0,0,0,0,0,0,0,0,0,64,103,103,103,103,103,103,101,99,86,74,69,47,20,25,0,19,29,16,0,0,0,0,0,41,64,41,61,66,59,45,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,72,103,103,103,103,103,103,92,63,43,51,45,33,0,0,0,19,66,52,81,44,0,0,0,0,0,34,21,56,43,49,64,31,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,94,103,103,103,103,81,88,67,87,100,55,87,79,62,46,20,5,13,7,31,66,70,59,73,90,75,49,51,45,23,20,0,0,0,0,0,21,38,91,94,99,63,70,73,76,103,101,88,74,103,87,103,62,1,29,33,44,103,88,81,58,65,60,90,103,93,95,90,88,103,96,88,84,62,64,86,70,67,63,34,58,81,100,79,71,63,90,56,60,61,64,66,87,88,78,64,81,91,100,91,50,11,19,0,0,0,0,0,0,0,0,0,0,0,0,0,32,23,20,5,17,4,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,103,103,103,74,90,103,101,73,95,85,92,78,37,87,81,37,0,61,52,93,100,103,103,103,103,103,102,85,85,58,56,63,79,63,66,32,57,62,76,94,79,70,39,58,67,66,92,95,87,103,89,103,83,85,71,6,13,14,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,25,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,16,21,49,32,11,0,0,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,0,15,28,61,45,35,36,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,4,16,13,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,37,0,0,1,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,13,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,45,39,36,45,49,47,34,25,1,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,37,50,30,28,15,0,0,0,0,0 11 | 25,0,20,16,31,23,0,0,0,0,2,6,0,0,0,0,0,0,1,20,28,27,32,54,57,51,50,69,37,44,59,53,49,63,64,65,56,83,84,73,68,26,27,62,84,93,83,67,67,68,64,48,39,34,28,23,24,24,3,0,0,0,0,0,0,0,7,24,27,13,28,44,25,18,18,0,0,17,6,0,0,0,0,0,0,0,2,0,45,95,100,92,100,93,83,0,0,32,5,45,19,0,9,18,4,0,0,9,37,22,39,36,19,13,3,8,16,11,3,0,0,10,7,29,12,4,0,22,14,0,0,0,0,0,0,0,0,10,34,29,0,16,7,8,0,0,0,0,3,0,0,0,19,0,11,0,34,60,100,0,0,100,0,0,100,0,0,0,100,100,100,34,97,54,45,84,46,51,4,0,0,0,23,0,0,0,15,26,0,0,0,0,0,0,0,13,34,19,0,11,11,90,26,2,64,0,100,0,100,100,100,100,100,100,100,100,100,100,75,55,99,18,22,0,0,4,0,0,0,12,6,14,7,45,47,21,52,86,100,100,100,100,100,100,100,29,35,23,62,36,37,85,79,71,41,7,0,20,78,64,33,0,0,34,10,6,12,23,16,9,0,0,0,0,0,0,0,0,7,0,0,0,20,9,7,7,5,13,9,4,0,0,4,6,0,0,9,0,0,11,8,13,11,13,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,9,7,14,0,20,3,0,24,36,29,7,0,6,0,6,0,7,1,0,0,0,9,8,0,0,0,0,0,0,0,0,0,6,53,29,6,3,4,0,1,0,0,0,1,6,0,0,0,0,0,0,0,0,32,9,0,4,6,3,10,14,15,29,16,0,0,0,0,0,0,0,18,6,7,3,0,0,0,0,0,2,0,11,0,1,4,7,21,25,18,7,0,0,0,0,0,0,0,0,0,0,0,9,8,0,5,31,51,31,10,14,10,14,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,19,0,33,30,7,22,7,0,0,12,1,0,0,37,38,20,19,11,0,0,0,0,0,0,0,0,0,0,23,11,6,9,0,0,0,11,0,0,0,0,0,1,0,7,0,10,18,0,11,33,41,38,56,53,40,8,18,21,14,9,9,18,31,32,28,46,46,40,24,6,8,29,35,63,58,41,37,44,33,38,15,18,26,35,15,25,20,18,18,12,11,15,0,0,0,17,46,47,53,40,23,26,9,0,13,42,46,17,10,17,0,12,23,0,2,0,2,0,0,17,46,19,19,0,4,0,0,2,13,7,0,0,0,0,14,15,17,0,0,1,26,0,3,0,15,0,7,2,0,10,4,14,0,11,13,26,10,0,0,1,0,6,1,0,2,0,0,11,1,0,0,0,0,0,0,1,14,0,0,0,0,0,0,0,0,0,0,0,0,0,1,100,100,100,100,41,46,57,67,0,20,54,45,76,53,55,10,15,2,0,51,100,100,100,100,100,100,100,100,100,0,0,100,100,100,100,100,100,100,100,100,100,69,51,100,100,100,100,100,100,100,100,100,100,100,100,0,0,100,100,100,0,100,100,100,100,100,100,0,0,100,100,100,100,100,100,100,100,100,100,100,100,78,93,48,20,22,56,63,24,13,59,100,100,100,100,100,100,100,84,55,27,50,66,0,0,3,22,17,48,31,9,10,28,19,0,0,0,0,0,0,4,0,1,6,1,8,29,23,67,15,2,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,9,7,9,9,0,0,0,0,0,0,0,3,7,0,14,14,0,2,31,40,0,0,7,0,0,0,0,0,0,8,8,0,0,0,0,0,0,0,2,2,1,9,23,29,28,0,0,34,9,0,0,0,0,5,24,38,0,3,1,2,43,100,100,100,91,100,100,100,100,100,100,100,73,48,83,94,100,97,22,32,4,8,19,20,25,45,0,19,51,58,59,34,13,0,14,0,7,24,29,3,4,33,87,100,100,100,100,80,74,66,30,61,20,10,36,26,0,0,2,11,2,13,0,3,6,17,8,2,3,1,0,1,3,4,0,0,0,0,18,44,0,0,22,12,23,9,9,22,39,42,12,0,0,0,0,0,0,8,0,0,8,21,42,24,40,0,0,13,17,34,35,36,12,14,27,23,6,6,0,0,0,0,0,0,0,14,40,49,66,0,24,6,0,29,43,34,30,69,33,0,0,0,0,0,17,16,0,0,2,13,27,8,0,0,16,15,37,19,27,23,15,2,0,0,0,0,0,88,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,75,24,1,0,6,0,15,31,51,46,50,14,0,0,8,4,4,0,4,2,10,6,8,4,2,19,6,24,21,28,0,0,0,0,4,5,4,0,0,0,0,0,0,7,0,22,54,37,11,7,3,30,22,0,7,19,8,6,17,1,0,0,0,0,4,75,100,0,0,0,100,100,100,0,100,100,100,100,100,100,100,100,70,10,13,34,81,100,100,100,100,100,100,100,100,100,32,32,21,0,16,42,28,21,0,0,0,0,0,0,0,1,11,16,10,5,5,0,14,23,28,38,30,14,11,0,1,28,53,21,55,67,45,54,14,24,22,10,7,10,11,10,0,0,15,14,16,5,21,9,0,12,10,0,4,8,15,0,0,0,9,13,5,27,100,100,84,30,25,75,22,0,0,0,35,33,15,39,1,13,45,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,83,79,53,72,29,0,5,63,100,100,100,100,100,0,0,100,0,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,0,100,100,100,100,77,58,21,12,24,12,12,21,0,6,0,19,0,100,100,100,100,100,83,28,10,15,61,64,32,20,22,18,0,17,31,20,0,100,100,0,0,0,0,0,0,0,0,0,0,0,100,100,100,100,100,100,100,84,45,25,16,39,35,4,0,19,50,74,71,24,0,0,36,32,8,0,0,0,0,0,0,21,4,0,0,0,5,0,0,0,0,5,21,58,52,66,76,70,45,69,45,24,4,0,37,42,45,23,14,42,35,38,0,0,0,3,6,9,8,0,7,39,56,5,0,2,70,70,48,53,4,1,15,20,45,40,42,100,100,100,37,50,100,100,29,5,15,85,60,0,15,18,20,17,3,16,10,0,0,0,0,0,0,0,0,0,8,63,100,100,100,100,80,64,100,100,100,100,100,100,97,100,100,100,100,100,100,100,100,100,100,65,100,100,100,100,100,100,100,0,7,1,13,0,0,0,0,2,0,0,0,0,0,28,54,80,96,89,100,100,29,0,29,37,74,90,95,100,100,100,83,33,0,37,100,100,100,100,100,100,100,68,74,85,100,89,100,100,94,100,100,88,53,100,100,100,100,100,100,78,33,23,100,100,100,100,100,100,88,42,53,67,79,77,81,72,20,25,2,11,28,14,47,47,46,28,12,16,10,0,0,13,0,13,19,2,0,33,0,0,14,17,24,0,6,6,0,5,13,27,9,19,2,0,0,0,0,0,0,11,20,27,27,30,21,8,0,0,9,0,0,4,2,0,13,12,4,4,49,46,12,3,4,0,27,41,33,6,0,0,12,19,0,0,0,7,11,100,100,100,100,53,100,100,83,100,82,98,37,0,0,16,14,15,23,3,4,0,0,0,0,0,18,18,15,37,57,54,47,22,3,0,58,60,26,6,26,41,48,76,79,83,100,100,100,100,100,100,100,85,77,100,100,66,100,98,96,44,100,100,100,91,82,84,82,100,96,100,100,86,32,26,14,6,1,0,2,10,13,25,38,0,0,0,0,7,0,0,0,0,0,0,0,11,31,95,100,100,80,100,100,100,100,100,100,100,100,100,100,88,100,84,78,94,100,91,100,100,100,100,100,100,100,92,44,37,31,35,0,1,0,28,66,100,93,100,100,100,100,100,100,100,100,100,100,100,100,100,0,100,100,0,100,100,100,0,0,100,0,0,0,0,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,0,100,100,100,100,37,4,51,67,46,1,22,18,22,0,0,0,6,6,38,100,100,100,67,90,100,91,88,100,88,100,84,98,18,0,0,20,0,5,8,0,0,0,62,19,100,0,100,0,0,0,100,0,0,0,100,100,0,0,0,100,100,100,100,0,0,0,0,0,0,0,0,100,0,100,100,100,100,100,100,100,100,100,100,86,100,95,100,93,68,81,58,41,89,100,100,100,81,29,18,35,39,81,25,0,28,15,8,12,9,33,46,33,22,4,0,4,17,27,33,28,14,0,0,8,0,0,0,0,27,17,0,10,0,0,0,0,0,0,0,24,25,12,27,36,21,0,0,6,66,77,66,0,0,14,0,24,28,74,71,83,77,100,100,76,63,58,82,93,100,100,92,76,72,67,46,20,0,0,0,0,18,0,0,0,0,1,6,11,18,9,19,18,16,16,22,24,0,0,0,0,11,13,7,8,27,35,27,20,2,0,0,7,31,44,37,21,48,69,99,89,95,7,18,31,24,61,23,15,10,5,0,12,0,0,0,0,8,0,0,17,10,41,47,42,0,4,0,0,17,15,0,0,11,8,6,0,1,9,5,8,7,14,13,8,0,0,19,38,9,0,16,29,13,0,13,26,24,0,0,0,0,0,0,2,15,34,50,57,69,61,58,64,16,0,0,0,0,0,0,14,18,0,0,0,0,3,0,6,27,14,32,56,57,58,89,100,83,17 12 | 2186,19,25,0,0,0,0,0,0,0,0,0,0,0,0,0,13,14,23,13,21,14,18,17,22,24,15,21,35,25,25,22,18,17,14,8,2,27,42,34,45,32,11,6,9,7,4,6,1,2,4,9,15,12,10,7,7,16,16,21,20,8,10,8,4,2,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,5,0,2,0,0,60,68,70,70,70,69,67,64,57,57,48,39,29,20,7,0,7,3,0,0,0,0,30,28,26,25,23,16,14,28,41,35,28,40,45,70,70,70,70,70,68,70,0,0,70,70,70,0,70,70,0,0,0,0,0,70,70,70,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,70,70,62,70,55,33,34,37,52,47,25,11,21,30,45,43,50,70,70,70,70,70,70,70,70,70,70,70,70,70,64,70,70,70,70,28,9,14,11,5,42,67,70,70,70,70,70,70,70,70,70,67,22,12,32,46,41,39,46,50,41,39,32,54,45,22,28,15,17,49,68,51,40,46,50,0,25,9,10,16,12,5,0,0,18,26,10,36,45,70,69,57,70,70,70,70,70,70,0,0,0,0,0,0,70,70,49,62,70,62,66,55,32,45,53,50,41,64,52,69,58,50,70,70,70,70,70,70,70,70,70,70,54,58,55,70,68,53,59,70,70,70,70,70,42,14,2,31,14,33,43,54,57,56,54,39,43,48,37,37,55,34,40,16,6,6,16,6,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,6,29,24,11,32,48,70,66,70,46,54,54,44,46,38,70,32,29,34,28,21,9,10,22,23,29,39,32,29,32,25,12,9,0,0,0,0,0,0,0,0,0,7,28,29,9,8,0,0,0,0,0,0,3,0,24,25,22,15,2,11,15,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,0,70,0,0,0,0,0,0,70,70,70,70,49,24,39,35,32,47,62,65,49,6,26,26,5,18,44,42,69,40,61,62,52,62,70,66,70,70,70,70,70,70,70,59,42,50,69,64,62,43,70,70,70,70,63,65,70,70,70,70,70,70,70,62,28,5,24,23,10,39,47,58,65,70,70,70,70,70,70,70,65,57,70,69,70,70,70,70,70,70,0,0,70,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,70,37,47,68,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,70,0,0,70,70,70,69,67,70,64,35,13,0,0,0,5,0,14,19,26,44,46,32,26,29,31,38,44,42,29,22,25,36,54,62,66,49,40,29,33,43,40,34,28,15,12,1,0,0,50,70,70,70,70,70,0,0,70,70,70,70,70,70,70,70,70,70,51,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,26,42,28,0,25,12,21,40,40,14,31,70,44,41,35,13,70,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,0,70,27,8,29,70,70,70,70,70,0,0,70,70,70,70,70,0,0,0,0,70,70,70,70,70,70,70,70,70,70,70,48,20,29,14,34,39,46,42,38,44,24,18,42,57,66,53,48,41,39,10,39,56,58,50,51,43,70,62,55,51,53,70,70,70,68,41,29,62,70,70,70,70,70,70,65,66,70,70,70,70,70,70,66,62,56,64,46,48,23,11,7,8,5,11,29,15,0,8,28,16,0,2,37,70,70,70,70,70,70,70,0,0,0,0,70,70,70,70,22,38,31,0,61,70,70,70,70,70,70,70,70,0,0,0,0,0,70,70,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,47,70,70,62,48,45,61,70,70,70,70,70,70,70,70,70,70,70,0,70,70,32,0,0,0,13,9,15,0,0,11,0,0,0,9,13,29,21,20,7,3,13,26,37,42,49,62,68,61,56,43,54,49,26,6,10,19,69,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,70,70,70,70,70,70,70,0,0,0,0,0,0,70,0,70,25,13,0,4,20,43,48,44,21,17,37,21,9,0,0,25,68,70,70,70,70,70,70,70,70,66,15,33,58,56,70,70,70,50,34,36,28,26,10,15,6,21,51,68,66,70,66,35,26,17,32,35,50,44,16,8,43,70,70,70,70,70,70,70,70,70,70,29,23,40,47,70,70,0,0,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,70,70,70,70,70,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,70,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,70,70,70,0,70,0,70,70,70,70,70,58,70,70,70,70,70,70,70,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,0,0,0,0,70,70,70,67,70,70,70,70,36,43,70,52,39,55,70,70,70,70,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,0,0,0,0,0,0,0,0,0,0,70,70,0,0,0,0,0,70,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,0,0,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,38,23,3,0,4,16,18,16,2,12,31,44,54,67,66,70,69,70,70,70,69,24,7,37,57,69,70,70,70,70,70,70,69,66,70,70,70,70,70,70,70,70,70,55,70,70,70,70,70,70,70,59,42,24,29,40,47,47,60,25,19,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,39,2,1,14,35,58,45,32,34,49,43,70,70,70,70,70,70,70,70,70,70,70,70,70,70,57,38,23,15,0,0,13,56,70,70,70,68,67,35,38,55,5,7,38,35,12,13,22,49,51,64,70,70,70,70,70,70,70,70,70,70,70,70,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,70,65,70,70,70,70,70,70,70,70,70,70,56,28,26,20,24,22,14,16,29,66,70,70,0,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,70,70,70,51,46,21,26,30,33,13,47,69,70,70,70,0,0,0,0,0,70,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,70,70,70,70,70,70,62,60,70,70,70,70,0,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,24,33,70,70,56,38,20,26,51,45,27,36,54,54,47,46,51,70,70,70,67,55,34,43,59,68,70,42,8,70,70,70,70,70,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,70,70,70,70,70,0,0,0,0,70,70,70,70,70,70,70,70,70,70,70,70,54,46,70,70,70,33,50,41,45,49,54,18,17,24,4,1,13,45,49,53,46,29,16,11,26,58,70,65,41,27,15,0,11,7,0,20,39,35,24,20,16,12,17,24,28,39,39,45,54,52,37,13,0,0,0,0,2,46,38,30,17,8,13,48,66,70,70,70,67,61,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,70,69,59,68,70,60,56,43,53,53,32,17,18,24,10,21,4,3,2,48,37,1,15,51,15,12,70,57,47,16,14,4,17,18,32,51,63,70,65,58,70,70,58,55,55,62,59,39,45,46,38,38,38,30,6,0,20,7,31,26,21,30,4,7,0,0,2,22,36,66,58,19,2,5,0,7,1,13,0,5,0,8,9,5,5,29,20,8,12,33,12,0,0,6,0,30,40,27,11,11,12,20,29,44,50,45,45,36,34,47,62,61,53,47,57,58,60,64,44,15,32,46,57,56,70,70,63,65,70,66,70,70,70,70,70,70,70,70,70,70 13 | 1121,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,0,20,20,0,20,0,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,7,3,4,1,0,0,0,0,0,0,0,0,20,20,20,20,20,20,20,20,20,20,0,0,0,0,0,0,20,0,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,19,20,20,20,20,20,15,15,16,14,17,15,14,17,18,19,19,12,12,15,14,16,13,13,8,6,3,3,3,3,20,20,20,20,20,20,20,20,18,14,12,1,4,3,3,4,0,0,0,0,0,0,6,9,10,9,3,12,18,20,20,20,20,20,20,20,20,11,13,17,11,9,9,10,10,15,15,20,20,18,6,7,15,20,17,17,14,8,3,3,4,0,0,0,0,0,5,1,3,4,5,4,1,0,0,0,0,0,4,7,6,0,7,5,0,0,0,0,0,0,1,2,5,2,3,5,2,2,0,0,1,0,0,1,2,0,0,1,1,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,2,9,12,10,7,4,0,0,0,2,0,0,0,0,0,0,1,1,1,4,5,4,0,0,2,0,3,4,0,3,0,0,0,0,0,0,0,0,0,0,0,0,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,1,0,2,3,7,8,4,2,0,1,6,3,2,1,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,0,0,0,0,0,0,1,4,6,4,0,11,10,17,20,20,20,20,17,14,14,19,18,13,13,14,15,20,10,6,12,9,7,15,9,7,6,7,6,9,11,11,8,1,0,0,0,0,0,0,6,7,7,4,4,5,5,6,10,6,3,0,6,11,20,20,19,0,3,7,10,8,4,5,8,7,6,7,7,7,4,0,0,2,20,20,20,20,20,0,0,20,20,20,0,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,0,0,0,0,0,0,0,0,0,0,0,20,0,20,20,20,0,20,20,20,20,20,20,20,4,0,0,0,0,0,0,0,0,0,0,1,5,1,4,10,2,1,18,20,20,20,20,20,20,15,20,20,20,20,20,20,20,20,20,20,20,20,14,15,9,11,14,20,11,8,7,7,5,3,3,7,10,7,5,5,7,7,7,7,3,1,0,0,0,0,16,13,9,7,9,9,1,2,2,1,4,2,0,0,0,0,0,4,4,4,0,2,3,3,7,14,11,7,14,16,14,16,7,9,9,2,0,2,2,5,4,5,6,6,11,5,3,12,15,10,17,19,20,18,16,11,15,16,17,17,13,14,13,13,11,11,10,14,16,20,20,19,20,17,14,16,17,16,17,15,14,8,13,20,19,12,20,20,18,13,7,7,7,9,13,2,2,2,4,1,0,0,0,0,4,11,13,7,6,3,1,0,0,0,0,4,3,0,0,0,0,0,2,0,0,0,0,0,0,1,2,2,0,0,0,0,0,0,0,0,0,0,0,3,3,0,0,0,1,1,0,0,0,1,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,17,10,3,1,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,1,5,0,0,1,3,1,0,1,4,2,0,4,5,0,0,0,6,20,20,19,8,0,0,3,9,12,16,14,13,15,19,13,9,0,0,0,0,0,0,5,3,6,5,12,17,17,11,20,20,20,20,11,10,16,9,7,2,5,9,0,0,0,0,0,0,0,2,4,2,0,1,2,0,0,1,0,0,0,0,0,0,0,2,0,3,1,0,0,0,0,3,3,4,6,1,0,3,1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,2,6,6,5,4,2,1,0,0,0,3,0,0,0,0,0,0,0,0,2,2,2,0,0,0,1,2,0,0,0,5,3,3,0,0,0,0,0,0,2,0,0,0,0,0,0,0,2,9,8,4,2,0,0,0,3,4,1,3,2,2,2,0,0,0,0,0,0,0,1,10,11,8,7,2,4,14,10,8,9,11,7,7,4,3,4,10,9,9,11,13,0,4,13,14,9,7,3,3,4,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,2,6,4,0,0,0,0,0,0,0,0,0,0,0,4,7,6,4,0,16,20,20,20,20,20,20,20,20,20,16,6,0,7,6,3,3,1,2,2,0,0,0,0,4,6,11,8,7,6,10,4,0,0,0,0,5,2,0,0,0,0,0,0,0,0,0,1,0,0,4,2,0,0,0,0,2,0,0,0,0,0,1,0,0,0,0,3,0,0,0,0,0,1,9,6,2,1,2,6,7,6,18,17,13,7,12,6,0,8,9,8,1,0,1,2,3,7,11,12,10,0,1,6,0,0,1,2,0,0,2,0,0,0,0,0,0,0,0,0,0,6,10,14,12,0,3,5,4,1,5,1,0,0,4,8,3,4,5,8,6,16,12,15,17,20,12,15,15,20,20,20,20,20,20,18,20,17,12,13,14,12,12,16,19,12,17,19,20,20,20,20,20,20,10,15,16,11,20,11,5,0,10,20,20,20,8,3,20,20,20,19,13,13,13,10,12,0,11,5,1,4,0,0,1,0,0,0,0,0,0,0,0,0,0,3,3,3,0,2,1,4,10,13,15,14,4,4,8,6,20,20,19,17,14,16,14,19,20,15,13,18,20,18,20,13,8,9,5,6,4,0,0,0,0,0,0,0,0,3,0,2,0,0,3,0,10,7,6,3,12,13,15,14,9,4,5,0,0,0,0,0,0,1,0,3,4,0,2,5,4,6,2,5,6,10,7,10,5,6,15,17,15,17,20,16,15,14,4,3,6,4,0,0,4,15,19,16,15,12,13,6,3,13,13,8,12,12,14,4,0,0,1,6,6,9,13,14,5,4,4,0,2,5,3,2,4,4,3,1,3,2,0,0,0,0,2,0,0,0,1,1,4,8,8,9,17,20,12,19,16,15,15,15,14,4,0,0,0,0,0,0,0,9,4,2,4,0,1,0,0,0,0,1,2,0,1,0,3,0,4,6,6,15,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,17,20,20,20,20,20,20,20,20,20,20,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,3,2,14,16,11,6,2,0,0,1,3,5,7,2,0,0,0,2,4,3,2,4,0,4,2,1,2,4,8,9,9,5,1,3,6,0,0,0,0,0,0,0,0,0,0,0,0,1,7,7,3,6,7,9,5,6,3,10,10,0,2,3,0,0,0,1,2,1,0,0,0,0,0,2,4,1,0,2,2,0,0,1,0,0,0,2,1,0,2,1,0,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,0,0,0,0,0,0,0,0,1,4,5,4,0,0,0,1,2,0,0,0,0,1,0,0,2,2,9,12,16,13,9,11,12,13,8,1,3,4,4,4,0,0,1,0,0,0,0,0,1,0,0,0,0,0,0,3,2,5,1,3,3,4,1,5,4,8,3,6,3,2,2,3,3,2,2,0,3,12,20,20,20,18,1,0,3,2,2,3,0,0,5,1,0,0,0,0,0,1,0,1,0,2,4,6,4,7,7,7,3,11,10,9,8,8,4,2,3,5,3,4,6,15,11,18,20,20,18,20,19,20,11,15,16,20,17,13,13,16,15,17,15,14,9,3,10,15,17,13,7,9,9,1,0,0,2,0,2,1,0,0,3,0,1,0,0,2,1,0,0,0,9,8,7,9,4,2,2,0,0,1,3,5,6,8,7,2,1,17,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,18,14,20,13,20,20,20,20,20,20,20,20,20,20,20,20,20,20,13,5,17,17,17,17,10,15,9,16,11,14,11,8,11,14,12,11,1,8,20,15,15,9,0,0,6,9,7,3,0,0,4,3,6,6,7,5,5,10,20,11,6,9,0,3,2,4,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,3,4,4,2,4,3,4,6,5,3,3,2,0,20,20,20,20,20,20,20,20,20,20,20,20,20,20,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,18,17,11,14,9,15,18,6,0,1,5,1,3,1,5,2,3,4,0,0,2,2,1,3,3,1,0,0,0,0,3,4,2,5,0,0,1,0,0,0,2,1,0,1,0,0,1,0,0,1,12,10,2,0,0,1,0,0,0,0,0,0,0,1,3,1,9,1,0,6,8,0,0,2,1,0,1,3,0,1,1,0,0,0,1,7,0,1,0,3,5,8,10,7,5,6,3,4,0,0,4,0,1,0,0,2,2,0,0,0,0,0,4,1,0,1,14,20,20,20,20,20,17,15,20,20,20,20,11,1,4,20,20,15,13,14,17,4,0,4,9,8,2,0,6,17,10,5,12,11 14 | 1394,54,71,81,90,90,90,90,90,90,90,90,90,90,90,90,86,73,72,69,73,79,85,90,84,89,90,90,70,77,90,90,90,90,90,90,88,78,90,82,68,90,90,75,87,90,90,90,90,90,90,90,90,90,90,90,90,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,90,90,90,90,90,90,85,40,31,36,55,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,0,0,90,90,0,90,90,90,90,90,90,90,90,80,26,0,0,0,0,0,0,0,57,88,90,90,90,90,90,90,90,90,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,90,90,90,90,90,90,90,90,90,90,90,90,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,30,32,23,30,49,14,2,0,14,26,24,9,2,2,3,0,0,0,0,0,0,42,89,90,90,90,90,90,90,90,85,90,90,85,78,57,47,41,29,17,12,8,1,0,14,15,10,8,17,56,77,90,90,90,0,0,90,90,90,90,90,0,0,0,90,90,90,90,0,0,0,0,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,89,82,85,90,90,90,90,90,75,52,35,32,36,56,79,90,90,89,79,72,60,52,38,26,0,0,14,0,0,11,8,0,0,0,0,0,15,85,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,57,37,19,20,19,48,64,85,61,70,58,38,28,30,42,20,12,33,58,56,42,35,52,62,59,51,47,32,33,56,56,62,57,54,54,72,90,89,90,90,62,73,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,0,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,0,0,90,90,90,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,82,90,90,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,1,0,0,0,89,51,29,14,8,87,90,72,90,90,90,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,71,54,55,49,41,31,55,32,32,34,14,26,21,7,14,61,88,90,90,90,90,90,86,0,44,61,48,44,40,69,90,86,81,78,90,90,90,90,90,90,90,90,90,90,80,83,80,72,78,90,47,52,69,84,90,90,90,90,90,90,90,90,90,90,90,90,86,90,90,90,90,90,90,90,85,90,90,90,90,90,90,72,54,11,9,9,32,30,40,39,55,45,26,18,25,24,29,40,14,33,56,58,40,32,13,22,33,67,90,90,90,90,90,90,90,90,0,0,90,90,26,0,0,34,0,0,0,90,90,90,90,90,0,0,90,90,90,90,66,12,5,0,0,0,0,0,1,90,85,28,18,18,28,33,69,0,0,0,0,0,90,90,90,56,24,19,9,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,73,90,90,84,85,30,19,44,51,56,73,63,74,51,56,46,15,20,35,76,71,60,46,37,23,61,89,83,84,86,74,68,68,78,90,90,72,53,38,18,17,4,0,0,0,0,0,0,0,0,0,0,0,0,28,8,29,90,72,32,17,52,46,57,36,63,90,84,24,15,25,4,22,22,57,58,61,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,87,50,40,46,66,51,82,82,88,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,52,56,70,90,90,90,90,90,90,68,52,24,4,1,82,89,90,90,77,90,90,90,77,20,12,19,44,52,56,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,72,51,49,73,82,73,67,85,87,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,64,21,0,0,0,87,86,41,47,61,17,14,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,48,23,13,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,42,75,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,35,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,90,90,90,90,90,90,0,90,77,85,90,90,90,90,90,90,47,68,73,49,90,50,22,1,43,90,90,90,37,14,90,90,90,87,56,59,59,45,52,0,49,23,4,16,0,0,2,0,0,0,0,0,0,0,0,0,0,13,14,12,0,8,3,18,45,61,66,64,16,17,35,28,90,90,87,74,64,72,65,84,90,69,57,81,90,83,90,58,37,42,23,29,19,0,0,0,1,0,0,0,0,12,2,9,6,57,90,90,90,88,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,90,90,0,0,0,0,0,0,90,90,90,90,90,90,90,90,90,90,90,90,79,81,90,90,90,90,90,89,90,89,74,78,65,52,63,67,90,90,90,74,64,90,90,90,90,90,90,90,90,90,64,33,90,90,90,67,68,75,61,55,52,31,14,6,20,13,10,32,41,52,76,90,90,90,90,90,90,90,90,90,90,90,90,90,90,85,80,90,90,79,90,90,90,90,90,90,0,0,0,0,0,0,0,0,0,0,0,90,90,90,90,90,90,90,90,90,69,0,0,0,0,0,0,67,40,35,23,31,21,29,26,46,35,32,90,90,34,80,90,35,90,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,31,25,12,49,19,40,9,86,90,90,90,90,86,90,79,56,67,59,83,86,90,74,56,57,78,86,73,49,90,84,90,90,90,90,90,90,76,63,47,61,56,59,73,54,32,5,5,0,0,0,0,0,25,5,0,19,23,0,28,11,34,84,38,49,65,73,90,90,90,90,90,88,61,90,90,90,90,90,90,90,90,73,58,13,53,69,76,73,90,87,26,47,56,59,58,43,46,55,48,55,90,90,90,80,31,16,43,49,69,90,90,90,90,90,90,90,90,90,56,54,58,31,49,40,58,60,82,88,76,90,90,90,90,90,60,0,0,0,25,7,10,12,41,44,51,66,6,9,25,63,67,90,90,90,90,90,90,90,90,90,90,0,0,0,0,0,0,0,0,90,90,90,0,0,0,0,0,0,90,90,90,90,90,90,87,86,90,45,6,0,0,15,30,30,42,40,61,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,0,0,0,90,90,85,90,90,90,90,90,90,90,73,90,76,0,0,0,0,0,0,0,0,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,7,27,76,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,39,77,50,50,37,42,62,66,90,90,90,90,90,90,90,57,8,55,32,69,90,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,0,0,0,0,90,90,90,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,90,0,0,0,0,0,0,0,0,0,0,0,0,0,90,54,4,0,11,0,0,0,90,90,90,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,90,90,90,90,90,63,22,2,19,5,10,15,4,4,0,4,15,0,0,1,0,0,0,1,22,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 15 | 1390,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,25,25,25,25,25,25,25,25,25,25,25,25,25,0,25,25,25,25,25,25,25,25,25,25,25,0,0,25,25,25,25,0,25,0,0,25,25,25,25,25,25,0,25,25,25,25,25,25,17,20,18,10,13,12,13,10,6,9,11,4,1,9,25,18,17,12,18,22,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,21,6,2,0,0,4,0,2,6,7,6,11,11,11,13,11,12,12,12,10,10,12,19,22,25,25,22,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,21,21,13,11,20,18,9,19,25,25,25,24,25,25,25,25,25,25,25,25,25,25,25,0,0,0,25,0,0,0,0,25,25,25,25,21,20,17,25,22,25,25,25,25,25,25,25,25,25,20,8,4,0,0,2,3,11,12,10,7,3,6,1,0,5,13,12,14,11,14,19,21,25,25,25,25,25,25,20,13,7,10,22,23,22,21,20,14,14,12,11,4,8,9,11,17,15,14,14,20,21,21,19,20,16,19,18,13,15,9,6,7,12,11,5,0,11,11,10,22,11,11,13,12,12,4,3,7,15,14,9,5,11,16,20,10,3,0,0,0,0,8,0,2,9,12,6,9,15,14,16,9,2,2,0,1,5,8,9,7,7,8,10,11,12,13,11,10,8,6,4,3,2,9,12,9,3,12,11,20,20,8,12,6,3,0,5,5,8,4,9,19,19,15,17,21,15,17,23,21,22,24,20,25,20,23,24,21,14,1,3,5,4,5,1,6,10,9,8,24,21,25,25,25,25,25,25,25,25,25,25,25,25,25,19,22,17,15,14,16,18,17,17,16,11,11,9,12,16,18,15,17,16,14,15,10,1,3,6,6,5,5,3,0,4,4,13,12,13,12,23,25,25,25,25,25,25,25,25,25,25,21,0,0,0,0,2,1,10,5,10,5,13,13,25,20,25,25,25,25,25,25,25,25,25,25,25,25,24,25,25,25,25,25,20,25,25,20,9,8,20,25,25,25,25,25,17,16,19,16,16,15,18,20,15,23,22,20,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,13,8,14,17,12,15,20,10,20,25,25,24,22,23,25,25,25,21,12,25,25,18,4,8,10,19,15,16,10,7,2,1,5,11,14,23,25,25,25,25,25,25,25,25,25,16,19,25,25,25,25,20,24,25,25,25,25,25,25,25,23,10,6,1,0,3,1,9,12,12,18,21,20,21,21,25,25,25,25,25,13,7,17,25,25,25,11,15,10,7,18,14,7,17,18,20,18,18,19,16,18,21,17,25,25,25,25,25,22,20,23,18,10,20,14,21,25,23,21,17,25,25,25,25,25,25,25,25,25,24,25,25,25,25,25,25,23,25,25,25,25,25,25,25,0,0,25,25,0,0,0,0,0,0,0,0,25,25,25,25,25,25,25,21,25,23,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,17,10,19,12,19,24,25,22,25,25,24,25,25,24,25,25,25,25,23,25,22,20,23,21,8,0,0,0,2,2,2,0,0,0,10,11,11,24,25,23,13,8,9,13,17,25,25,25,25,25,25,0,0,0,0,25,25,25,25,25,25,25,13,3,0,5,18,25,25,25,25,25,25,25,25,25,20,20,19,15,13,14,1,2,0,4,8,6,3,6,7,6,6,3,9,6,10,4,9,11,8,10,10,9,6,11,19,22,20,12,0,0,0,2,4,25,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,24,23,22,22,25,25,25,25,25,25,0,25,25,25,25,25,25,25,25,25,25,25,25,25,14,5,11,17,14,20,25,23,5,13,7,0,8,11,8,10,17,23,25,15,20,7,18,25,14,6,14,10,3,0,0,4,24,25,25,25,25,21,24,25,18,17,16,17,13,18,15,9,9,11,17,12,0,0,8,5,4,8,11,15,6,7,13,18,18,19,12,14,14,12,7,3,4,5,6,3,5,2,0,0,0,0,0,4,11,15,8,3,6,9,15,22,21,10,21,16,8,7,8,9,8,9,13,18,11,6,18,21,18,13,15,6,9,10,13,16,16,13,14,17,18,25,25,25,20,19,18,10,15,23,25,25,25,25,25,25,25,25,25,25,25,25,25,25,24,19,15,16,8,11,9,10,12,15,9,15,11,8,8,9,5,4,4,6,7,15,15,14,14,21,18,10,13,14,10,17,15,12,8,4,1,1,3,3,3,10,11,11,11,9,8,11,16,22,25,24,20,14,22,25,25,20,16,17,11,10,0,6,12,24,25,25,10,15,14,11,17,21,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,24,19,24,22,19,17,18,7,2,6,4,0,0,1,10,18,20,19,7,4,3,5,0,0,0,6,4,3,2,3,1,1,5,7,5,7,6,6,7,12,25,25,20,25,25,25,21,21,25,25,23,24,22,24,16,9,7,11,7,5,6,2,1,14,16,24,25,25,25,25,25,25,25,22,17,16,17,13,11,8,11,12,12,15,15,18,25,23,19,25,25,23,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,24,24,25,25,25,25,25,25,25,25,24,24,25,25,25,25,25,25,25,25,0,0,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,23,20,17,23,18,9,7,15,16,13,10,11,14,14,14,12,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,22,25,20,13,14,12,12,7,12,11,12,13,17,14,11,20,16,13,23,25,25,25,25,21,17,25,25,25,25,21,10,7,7,0,0,7,13,23,11,11,5,10,15,25,25,25,24,9,14,25,25,25,25,25,25,25,18,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,16,17,25,23,23,19,17,17,17,15,20,21,22,17,25,25,25,25,25,25,25,25,25,25,25,25,24,25,23,25,25,25,25,25,24,14,19,18,24,13,18,18,16,18,25,25,25,25,24,25,13,12,15,15,14,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,18,22,25,25,25,25,25,25,25,22,14,6,5,5,13,9,6,0,7,4,0,9,24,25,25,25,25,25,25,25,25,24,16,12,3,0,0,0,0,13,10,21,25,25,25,25,25,25,23,25,25,25,25,25,25,25,25,24,17,9,11,3,8,8,6,8,7,9,9,1,0,3,12,7,5,6,11,8,11,10,13,13,5,0,0,0,0,0,11,17,21,25,25,25,25,25,17,10,7,6,2,8,4,23,21,10,3,0,0,0,0,3,16,11,25,18,20,0,4,0,0,0,0,0,0,0,1,1,0,2,2,6,7,8,5,4,1,3,0,1,5,3,2,5,8,5,2,3,6,7,10,11,20,7,4,8,3,9,8,11,20,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,24,25,25,18,14,15,25,25,15,23,21,23,14,13,19,22,20,17,18,25,25,25,25,24,25,25,25,25,25,25,22,25,25,25,25,25,25,25,25,25,25,25,25,25,24,24,25,23,22,24,23,17,19,22,18,20,23,13,19,20,22,21,18,20,22,21,20,20,21,19,15,17,15,19,25,22,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,19,19,15,20,15,15,24,25,23,24,19,23,12,19,19,22,22,22,19,25,24,25,24,23,25,20,14,16,18,12,12,16,19,21,22,6,9,10,13,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,0,0,0,0,0,0,0,25,25,25,25,25,25,25,25,0,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,22,24,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,22,25,25,21,18,22,18,0,18,10,12,21,25,25,25,17,23,21,25,17,7,1,0,0,0,2,5,3,2,1,2,1,0,1,4,5,0,0,4,6,9,1,3,7,3,9,3,7,18,24,24,19,19,24,25,17,12,11,10,10,9,7,6,2,9,5,0,4,12,25,25,25,25,25,25,25,25,25,25,25,22,12,0,6,14,17,22,24,12,13,18,11,13,8,3,2,7,6,8,8,10,5,1,0,0,0,0,2,7,14,14,10,6,0,0,0,0,5,7,9,9,18,22,19,23,18,16,5,4,0,4,1,4,11,13,22,15,1,4,3,13,7,0,1,3,0,1,12,10,13,5,6,7,0,1,7,7,12,18,14,10,13,14,5,5,8,9,6,1,0,2,4,0,0,5,1,4,4,0,4,8,10,12,18,25,25,15,11,14,11,15,12,13,15,17,11,14,18,23,16,14,18,21,17,14,15,10,17,22,20,18,17,18,21,25,25,25,25,25,25,21,18,19,7,11,6,0,10,25,25,25,25,25,25,25,25 16 | 1400,31,34,47,63,63,63,63,63,37,39,58,48,19,26,21,25,39,41,52,43,38,37,46,57,51,41,55,28,52,41,29,50,58,54,56,54,37,42,39,42,57,50,44,28,33,21,7,44,38,41,53,49,37,55,61,55,35,32,31,38,45,48,63,52,35,63,63,63,63,63,63,63,63,61,58,54,38,28,23,21,12,11,30,26,25,29,20,21,29,31,25,46,44,47,47,40,45,39,19,26,38,47,41,44,34,23,34,48,45,44,42,43,40,42,42,43,54,22,17,25,13,21,30,18,22,18,18,27,25,20,28,31,33,37,42,47,45,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,62,54,47,30,17,26,29,29,34,38,33,58,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,58,41,63,63,63,63,53,56,55,43,50,47,56,43,37,42,54,46,30,32,34,23,30,36,45,47,44,49,44,48,63,63,63,63,63,63,63,63,63,63,63,63,63,52,46,43,30,35,47,11,8,8,6,8,1,0,0,5,0,14,19,24,25,21,27,37,33,21,17,19,16,6,2,0,7,2,21,13,28,26,2,4,19,17,22,34,42,53,57,60,63,63,60,48,40,25,35,25,16,8,4,3,8,7,24,35,21,13,29,25,50,61,63,36,28,47,37,28,38,37,35,41,35,23,17,26,37,40,39,45,50,46,51,50,42,27,27,27,20,16,16,0,0,0,13,5,12,12,36,46,45,30,25,27,18,26,47,36,36,25,27,26,15,14,23,37,42,38,22,10,11,11,20,38,63,63,20,20,23,49,60,57,59,38,31,9,16,30,30,18,27,29,38,41,33,26,8,0,6,23,14,14,14,12,6,5,4,13,18,16,0,0,0,0,0,0,7,16,1,0,0,0,0,4,10,20,19,22,13,12,20,22,25,27,29,32,41,37,33,29,32,28,28,28,25,20,22,23,22,27,31,32,22,27,34,36,34,29,43,48,51,50,39,39,7,15,22,16,5,5,11,11,8,4,5,12,16,6,16,21,21,20,20,12,14,26,61,50,49,43,42,45,35,26,19,1,21,24,63,63,49,63,51,57,49,60,62,45,41,36,39,39,31,39,49,41,33,33,32,31,41,59,37,45,31,19,14,33,56,56,40,36,35,47,63,52,50,44,52,50,51,52,50,63,63,63,63,52,40,33,45,35,1,2,0,5,18,25,20,29,36,49,47,47,52,43,53,59,63,63,63,63,63,63,63,63,63,59,53,52,51,42,39,47,44,36,36,33,30,32,28,16,30,29,41,49,53,60,63,63,46,52,53,55,50,41,49,36,35,0,0,0,0,17,24,23,33,20,23,22,32,39,30,35,37,39,45,39,39,39,36,31,19,6,5,3,4,18,24,33,27,27,25,31,44,63,60,59,48,58,63,63,0,0,0,0,0,0,0,0,0,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,56,52,56,63,63,63,63,63,63,63,63,63,62,56,53,60,58,63,58,58,59,49,53,63,63,63,63,63,63,59,42,42,39,52,63,63,63,63,63,42,59,63,58,49,42,17,7,9,5,8,8,12,18,33,43,39,33,25,0,0,0,0,0,0,0,10,16,22,21,27,30,42,37,41,34,36,43,50,60,63,62,63,61,49,33,20,28,61,48,43,50,29,17,18,17,28,26,29,24,25,48,52,55,49,52,58,46,44,46,42,41,50,43,24,29,26,23,25,10,10,11,9,21,33,24,18,16,22,19,17,20,24,40,27,8,16,11,18,0,0,6,13,8,0,0,0,0,27,49,47,40,48,63,63,63,55,46,50,52,56,54,63,63,63,63,63,63,62,60,63,63,63,63,63,63,63,63,63,63,61,63,58,63,53,58,62,61,59,55,47,46,58,47,45,61,63,63,63,59,46,54,56,56,52,44,34,33,34,31,10,20,22,20,21,7,8,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,28,59,61,43,45,54,59,62,62,63,58,43,46,59,44,56,52,50,44,54,48,45,51,54,60,45,31,34,29,36,39,49,53,40,28,28,33,29,23,0,0,0,0,0,0,0,11,0,0,0,1,14,17,17,12,27,21,13,11,7,3,11,19,41,50,15,5,7,27,37,43,47,51,43,59,55,51,44,43,44,43,39,37,44,50,48,52,48,37,36,38,33,34,48,46,50,53,47,41,38,35,35,34,55,49,53,63,53,39,44,49,58,54,47,63,63,63,63,63,63,63,53,45,25,22,35,33,29,35,49,54,49,52,29,25,0,9,6,23,23,35,44,31,21,13,12,4,8,3,8,12,28,17,12,26,20,25,20,23,25,27,49,47,46,36,35,23,10,11,8,16,13,3,5,6,2,8,27,34,42,40,55,55,50,42,47,60,63,63,63,63,63,63,52,54,63,63,63,63,63,63,63,54,49,53,55,59,44,49,59,41,26,24,12,10,8,5,16,25,9,3,11,10,2,0,0,3,0,0,0,1,16,13,14,13,27,17,13,9,12,11,19,17,23,27,22,30,34,27,15,27,32,25,23,13,9,9,14,14,18,19,20,25,14,14,15,0,20,43,63,49,28,36,43,39,42,43,42,29,29,35,45,52,52,48,42,31,0,18,24,28,36,40,54,63,45,34,40,63,63,63,63,63,62,54,56,48,40,45,41,30,22,30,43,37,61,63,63,63,63,58,49,53,36,42,42,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,59,52,48,37,26,6,0,9,21,27,34,29,48,56,63,44,34,27,23,22,25,28,39,44,60,63,63,63,63,63,63,63,63,63,63,62,63,63,63,63,63,63,63,63,63,63,63,63,63,63,62,43,41,35,3,0,0,0,0,0,0,0,0,10,20,20,42,37,24,15,20,46,57,42,57,63,63,63,51,53,63,59,63,58,52,39,31,26,22,22,23,25,34,30,30,29,35,27,28,39,53,51,59,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,60,49,50,63,62,62,63,63,63,62,63,59,62,63,63,63,63,63,63,63,63,54,53,49,36,31,27,45,39,24,22,23,15,12,8,0,0,0,0,4,18,25,32,31,38,43,46,39,34,63,63,63,63,63,63,48,38,63,54,45,42,59,63,58,42,32,34,21,7,0,19,12,27,39,32,8,23,2,33,35,8,22,34,43,46,44,55,47,48,55,53,54,49,38,50,42,16,5,13,29,32,45,56,53,39,37,50,46,41,31,29,20,23,24,27,23,20,12,1,0,5,15,25,10,8,12,28,32,20,20,17,15,1,0,0,0,0,0,0,36,63,63,63,63,63,63,63,63,63,63,63,61,61,54,41,36,32,24,24,22,10,15,10,13,3,0,0,0,3,17,1,8,12,7,13,16,16,14,0,0,13,31,36,41,19,12,11,13,5,4,18,24,38,44,44,46,44,28,20,18,11,10,7,18,13,5,22,20,26,18,6,0,4,7,0,20,18,14,20,24,24,26,29,41,50,48,48,44,43,46,39,43,40,28,46,33,34,37,34,33,32,32,29,38,31,27,18,18,15,24,28,40,45,37,21,25,18,7,11,18,3,6,14,18,15,26,35,40,47,58,33,39,35,28,23,31,32,34,38,45,51,52,52,44,40,34,23,31,30,42,51,63,51,48,45,45,48,36,39,47,45,36,26,25,21,25,19,34,20,12,7,7,16,16,12,26,28,38,50,40,54,57,63,59,42,55,63,63,63,63,63,63,61,63,34,53,46,53,63,63,56,61,55,55,53,49,41,34,36,30,34,37,31,34,27,11,17,18,18,8,21,22,20,25,18,15,18,18,25,23,22,23,30,31,48,53,54,41,44,53,47,59,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,58,40,40,33,23,32,46,42,43,45,41,40,37,35,28,26,19,20,21,12,22,26,27,28,25,28,20,22,15,0,0,0,1,4,12,21,23,45,63,63,63,63,55,42,34,38,59,63,45,37,35,42,42,54,49,49,58,49,56,63,61,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,55,60,60,55,48,63,63,60,49,46,55,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,58,63,63,54,63,55,55,40,48,40,56,54,63,63,63,63,53,46,40,54,34,26,11,9,15,0,0,0,0,0,0,0,0,0,0,0,0,0,10,2,6,11,9,16,24,24,14,11,28,28,28,15,28,25,37,34,7,0,0,0,0,1,4,3,19,17,21,8,9,7,0,0,13,0,0,0,14,18,15,6,0,0,0,0,0,1,0,6,9,3,0,0,0,0,0,0,4,2,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,6,5,15,18,17,12,14,13,10,15,18,14,3,1,2,7,4,1,0,2,9,12,34,52,38,38,33,19,26,28,21,26,26,14,14,10,2,0,1,0,0,0,9,19,6,14,11,14,16,7,25,17,20,12,12,16,13,21,17,2,0,0,0,4,1,0,0,0,0,2,15,17,15,19,19,24,29,31,30,33,32,30,31,31,26,26,19,12,0,2,0,3,3,2,11,13,23,20,13,0,11,10,21,32,33,9,29,25,12,2,0,0,0,2,32,50,63,63,63,63,63,63 17 | 21,100,100,100,100,100,100,100,100,100,100,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,100,100,100,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,100,0,0,0,0,95,34,100,31,0,0,100,100,100,100,100,100,100,100,100,86,62,34,68,100,100,91,39,87,100,0,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,100,100,100,100,100,100,100,100,100,100,42,25,42,59,59,66,80,74,78,96,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,84,60,93,61,87,100,100,100,100,100,100,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,95,100,100,89,78,64,82,68,66,93,99,92,93,77,93,75,70,70,59,59,26,21,45,57,72,79,84,55,18,0,0,22,2,29,68,78,72,88,100,100,100,100,88,89,100,97,90,78,79,57,23,45,58,63,86,78,85,67,44,30,17,6,21,36,22,54,10,45,15,2,3,8,16,8,45,63,78,83,76,61,48,42,49,37,37,55,58,56,78,100,100,100,100,99,100,100,100,100,100,100,100,94,42,20,0,25,14,0,0,0,0,0,0,3,0,2,23,8,10,14,21,25,34,36,17,3,41,51,63,78,88,78,79,76,65,56,45,27,19,25,48,50,32,36,41,24,6,28,59,65,100,84,99,70,34,43,95,100,100,100,100,100,100,60,63,61,94,100,100,100,100,100,100,100,100,88,45,30,33,32,53,71,54,15,34,50,57,57,22,0,13,31,96,100,80,34,14,0,0,0,0,0,0,0,0,24,57,65,75,79,50,50,7,0,7,27,26,69,89,100,100,100,94,75,55,7,5,0,5,41,47,34,4,0,0,1,2,7,30,46,58,84,94,80,57,100,89,73,81,50,39,26,13,28,59,51,78,100,100,100,100,100,62,70,88,92,78,56,35,24,57,71,74,85,40,58,47,96,100,56,42,38,43,100,100,100,100,100,100,100,100,0,0,100,100,65,39,17,15,37,67,95,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,81,100,84,52,32,88,47,60,51,40,39,50,33,35,63,73,91,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,98,90,85,87,85,69,68,79,94,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,84,100,83,95,100,55,77,76,67,64,65,43,67,55,70,58,48,83,76,55,59,81,97,100,100,89,100,100,100,92,89,88,86,51,89,100,100,100,100,100,100,100,100,100,100,100,100,100,84,68,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,88,57,73,70,84,100,100,100,100,100,100,100,100,98,70,67,67,68,68,64,77,68,81,92,83,92,83,89,100,88,83,62,63,72,69,74,50,69,82,83,93,100,89,100,100,100,100,100,100,100,100,100,100,100,94,87,90,79,30,0,32,59,83,36,0,15,18,0,34,65,44,44,67,65,47,76,80,94,100,100,100,100,100,0,0,0,0,0,0,0,0,0,0,0,100,100,100,76,60,60,63,82,100,95,100,100,100,0,100,100,100,100,100,100,100,100,95,86,92,100,100,94,100,89,86,91,84,73,79,50,59,75,98,77,79,100,100,100,100,100,100,100,100,35,51,55,48,14,25,100,90,100,100,0,0,0,0,0,100,0,0,100,100,100,100,100,100,100,100,0,0,100,0,100,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,0,0,0,100,100,100,100,100,94,100,78,74,86,89,55,23,16,51,39,40,54,90,76,92,100,100,100,100,100,96,95,91,81,52,24,1,8,39,85,100,100,100,100,96,93,99,85,68,61,70,97,96,62,76,53,71,67,43,42,46,43,39,28,47,38,34,26,39,40,59,64,36,37,33,24,17,32,56,45,41,44,43,23,25,9,2,1,11,38,24,35,41,33,23,36,39,79,100,100,50,87,96,100,73,38,44,34,45,52,55,37,28,28,25,28,37,36,9,28,63,63,74,72,67,74,75,83,71,63,63,58,76,62,60,100,100,100,100,100,100,100,100,100,100,100,100,100,73,98,80,64,51,33,39,40,35,46,52,31,35,30,49,21,27,29,33,39,60,59,59,95,100,100,100,100,100,100,100,100,100,100,95,70,33,34,23,7,40,40,22,32,93,100,100,100,100,100,94,100,74,100,100,89,100,100,79,100,100,100,88,100,100,96,81,100,100,100,83,67,94,97,72,91,97,100,100,88,93,78,82,87,100,100,82,100,94,100,100,100,100,100,100,99,77,67,61,31,28,19,37,20,20,17,47,61,42,26,15,3,11,0,2,0,0,16,35,9,20,36,42,62,71,61,81,95,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,75,43,34,20,49,33,32,14,3,26,21,64,80,84,94,100,100,100,100,100,99,72,64,44,40,30,43,58,72,81,100,100,100,100,100,100,100,100,100,48,44,48,74,76,100,100,85,76,100,90,100,100,100,100,100,100,100,0,100,100,100,100,96,85,100,99,100,100,100,100,100,0,0,0,0,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,99,60,61,67,49,48,71,58,42,62,92,100,100,100,100,100,100,100,100,100,100,100,0,100,100,0,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,93,82,93,82,60,45,37,69,93,79,97,100,100,100,100,100,100,100,100,100,100,100,0,100,100,100,100,100,100,0,100,83,69,24,16,0,4,38,93,100,100,100,100,92,97,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,100,100,100,0,100,100,0,0,0,0,0,0,100,100,100,0,0,0,100,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,86,91,100,100,100,100,100,100,100,100,89,100,100,96,92,97,100,88,100,100,100,100,100,97,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,75,66,90,97,100,100,100,100,100,100,100,100,100,100,100,67,93,82,86,84,75,61,31,28,73,90,100,100,100,100,100,100,100,72,62,48,25,3,0,7,28,33,73,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,74,54,41,14,16,12,20,8,29,64,73,72,60,33,44,84,84,61,52,10,46,27,0,2,19,11,51,88,100,100,100,100,100,100,100,100,86,51,65,25,53,78,20,5,0,0,0,0,26,29,17,41,35,45,0,20,19,0,15,21,41,40,8,1,25,39,81,63,90,83,38,0,0,0,0,0,0,1,23,32,58,66,51,40,26,48,70,82,95,90,89,100,92,92,100,97,96,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,100,100,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,84,91,82,68,47,69,89,93,88,66,85,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,95,100,100,100,100,100,97,100,90,100,83,100,63,58,87,83,82,100,100,88,91,65,52,58,59,73,59,97,88,94,100,100,100,100,94,90,67,39,53,43,49,37,27,29,34,55,90,61,51,65,94,100,100,100,100,100,0,0,0,0,0,100,100,100,100,100,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,85,100,100,100,80,100,80,83,85,86,76,75,82,83,87,97,100,100,100,100,100,100,100,94,100,100,100,97,100,100,100,100,100,100,100,75,59,47,62,80,90,93,87,89,88,100,96,86,50,20,3,6,0,0,0,0,0,4,13,10,18,0,0,0,0,0,0,2,7,14,31,40,44,63,57,58,66,70,80,91,99,100,100,100,100,94,92,100,100,57,34,42,87,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,38,43,26,24,31,27,42,61,54,48,25,16,23,35,32,30,25,15,27,20,21,0,0,0,0,0,4,22,16,18,18,43,49,46,25,12,27,40,59,82,89,96,100,100,100,99,62,59,59,56,47,2,18,17,31,47,0,14,0,5,17,1,16,28,50,30,22,51,89,67,83,51,55,66,14,11,13,19,22,32,24,29,4,0,14,32,22,23,41,69,68,58,54,55,44,16,0,0,14,19,43,39,71,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,65,44,22,29,56,64,81,100,100,100,100,100,100,100,100,100,100,98,100,100,74,74,95,100,74,64,59,3,15,46,69,97,100,100,100 18 | 18,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,8,40,58,64,39,51,38,37,43,7,0,0,6,60,62,89,100,100,100,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,2,4,0,13,12,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,35,44,42,23,6,13,0,0,2,1,93,100,39,39,76,100,93,73,44,50,59,23,41,47,48,24,0,0,0,0,5,19,15,21,12,19,14,1,10,34,49,56,75,82,92,78,70,78,100,100,100,100,100,100,91,100,100,100,100,100,90,100,82,85,100,100,90,100,100,98,77,78,67,62,89,100,100,100,100,100,100,0,0,0,0,100,100,100,100,0,100,100,100,100,100,100,100,89,46,40,14,0,8,43,100,100,100,95,66,96,100,100,100,100,100,100,100,100,100,100,100,93,89,100,100,0,100,0,0,0,0,0,0,0,100,100,100,100,100,0,100,100,100,100,100,100,100,100,100,100,100,100,95,87,100,100,100,100,100,100,100,100,25,47,59,46,45,41,42,9,0,0,0,6,17,49,36,74,0,26,19,20,17,13,11,0,0,7,1,24,47,39,56,75,95,100,58,0,0,8,25,10,24,12,0,6,0,0,0,0,0,0,0,0,0,17,4,0,0,5,0,0,0,0,0,0,0,33,40,0,19,0,0,7,40,58,46,69,55,74,90,100,100,100,100,100,100,100,100,100,93,46,50,43,73,97,92,64,10,0,0,32,30,83,81,78,51,52,76,100,99,68,92,96,46,7,8,9,0,0,9,64,87,96,100,100,100,100,100,43,18,0,0,0,8,30,48,87,100,69,43,49,56,31,15,21,19,24,29,24,15,2,15,2,0,0,0,0,0,0,0,0,0,0,0,2,1,0,0,0,53,78,63,38,29,0,0,0,0,0,0,0,0,20,1,72,100,12,4,65,14,27,57,7,15,24,24,0,4,49,33,15,2,0,0,0,0,0,0,0,0,0,7,12,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,52,41,21,31,31,0,0,0,58,59,69,100,100,100,100,100,100,100,100,100,100,100,60,19,43,32,0,0,29,31,18,9,31,57,45,0,14,15,9,30,23,31,42,35,22,14,9,24,31,32,4,0,25,8,0,3,36,17,54,13,0,0,36,45,22,29,57,35,51,55,36,2,37,32,45,90,84,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,100,100,100,100,100,100,0,0,0,0,0,0,100,0,0,0,100,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,100,100,100,100,100,100,100,0,100,100,0,100,100,100,100,100,100,100,100,100,0,100,100,100,100,100,100,100,55,0,2,12,9,15,11,1,14,60,99,0,0,6,0,0,39,52,68,64,52,18,54,34,15,17,19,9,0,17,15,33,61,68,49,1,8,5,0,40,73,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,78,100,100,100,100,100,100,100,100,100,100,100,100,100,89,79,73,16,0,0,17,11,0,2,4,9,0,23,27,43,82,85,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,91,95,89,92,54,52,44,29,31,31,57,83,100,49,74,30,0,33,96,77,100,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,31,1,100,37,18,12,4,11,25,42,21,12,3,0,7,25,39,35,26,23,6,0,10,36,95,86,30,66,68,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,36,0,30,72,46,64,81,25,78,0,0,1,3,10,19,48,49,40,43,36,13,12,0,0,2,35,30,62,100,100,100,100,100,100,100,100,100,0,100,100,100,100,100,100,100,100,100,0,0,0,100,0,0,100,0,0,0,100,100,100,100,100,100,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,91,87,83,49,28,36,5,0,0,11,0,0,4,5,10,0,0,0,59,82,77,57,56,47,68,81,67,66,88,0,35,0,8,6,40,45,53,62,53,67,100,100,100,100,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,100,100,100,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,96,73,55,26,8,0,0,18,21,0,1,27,64,37,34,69,100,100,99,100,100,100,100,41,8,12,34,16,2,0,52,2,36,76,8,35,10,24,55,71,66,47,22,16,9,0,0,40,0,26,47,66,62,12,0,39,0,15,0,33,74,100,100,0,0,100,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,100,100,100,100,0,0,0,0,0,0,100,100,100,100,100,0,0,0,0,0,0,100,100,100,100,100,0,0,0,0,0,100,0,100,100,0,0,0,0,0,0,0,0,100,100,0,0,0,0,0,0,0,0,0,0,100,100,100,0,100,100,100,100,100,100,100,100,100,100,100,100,100,0,100,100,100,100,100,100,95,80,61,52,88,82,89,90,91,48,68,100,100,100,0,100,0,0,0,0,0,0,0,0,0,100,0,0,0,100,0,100,100,100,100,100,100,100,100,100,100,100,100,100,91,66,39,24,12,19,1,46,68,63,100,90,100,100,100,100,100,100,100,100,100,100,96,100,100,100,100,100,99,70,68,81,66,55,58,76,0,15,20,9,0,0,0,0,0,0,8,42,85,100,100,100,100,100,100,100,100,100,100,100,100,97,100,99,100,100,100,100,100,100,0,0,100,100,0,0,0,0,100,57,100,100,99,75,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,100,100,100,0,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,100,100,100,100,100,100,38,4,0,0,26,0,0,0,10,0,27,38,50,36,73,100,100,100,100,94,99,100,100,1,0,0,0,0,0,21,25,6,0,11,5,10,12,70,65,16,7,26,42,55,26,54,100,100,100,39,11,33,77,100,100,100,19,69,100,100,100,100,60,26,28,81,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,85,46,19,8,0,0,0,0,23,0,7,0,0,13,24,22,32,4,0,0,17,22,14,21,58,65,48,34,38,7,0,5,10,16,35,61,73,51,28,34,0,29,87,60,55,73,70,32,56,63,67,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,100,100,100,100,100,100,66,51,76,68,95,98,94,84,100,96,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,0,0,0,0,0,0,100,0,100,100,100,100,100,100,100,100,100,100,100,80,68,100,97,91,75,49,39,29,53,33,0,38,41,10,60,74,67,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,75,100,94,82,57,57,89,100,100,100,100,100,100,0,0,0,0,0,100,0,0,0,0,0,0,0,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,100,0,100,97,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,0,100,100,100,43,35,39,30,76,56,88,14,4,38,0,100,100,96,100,100,100,100,100,55,97,0,11,60,12,56,22,21,37,42,40,18,0,0,0,79,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,100,100,100,0,100,100,0,0,0,0,0,0,0,100,100,100,100,100,100,100,0,0,0,100,100,100,100,100,100,89,100,89,100,33,83,100,100,100,100,100,48,0,61,15,0,55,53,20,25,7,2,0,0,0,0,27,36,42,33,16,12,26,0,0,0,2,6,11,0,0,0,0,0,0,0,29,32,50,73,79,100,100,100,100,83,38,0,0,0,0,0,0,0,0,0,29,22,35,0,0,15,42,85,100,100,100,100,100,100,0,0,6,62,54,31,30,6,10,0,0,0,0,0,0,0,20,3,0,11,17,0,3,14,19,25,23,20,12,1,5,69,58,31,34,19,35,0,0,7,10,21,33,73,73,62,48,23,0,4,38,0,0,34,10,43,22,29,18,8,0,0,0,0,8,11,23,0,17,26,13,2,0,0,0,35,59,71,66,86,72,79,100,100,69,31,54,74,50,43,54,60,53,62,80,63,49,43,48,19,0,4,0,6,17,63,59,77,56,83,49,80,95,85,100,100,95,98,100,100,100,100,77,26,0,0,0,0,0,0,19,10,3,21,17,7,0,19,67,98,100,100,99,68,0,0,24,94 19 | 31,20,8,0,0,0,0,3,0,4,16,5,22,23,22,18,13,18,47,53,36,40,49,46,64,66,70,60,61,63,50,42,63,75,56,45,41,55,68,75,75,75,75,66,50,40,39,23,20,7,0,0,1,3,0,0,0,0,0,0,0,0,8,0,27,53,74,75,75,69,60,41,21,24,7,0,10,4,6,33,60,54,29,0,12,24,75,70,75,75,75,75,75,75,75,64,54,45,50,75,74,55,44,34,37,31,15,14,6,5,11,6,0,0,5,0,0,0,0,0,0,5,2,0,11,47,58,75,71,53,67,49,34,55,54,42,24,31,40,26,0,20,7,45,32,55,49,45,75,75,61,67,75,75,51,54,54,75,75,75,75,75,75,75,75,75,75,75,65,36,59,46,54,41,8,36,64,65,43,21,75,75,75,75,0,0,0,0,0,0,0,75,75,0,75,75,75,0,75,75,75,57,75,0,75,75,75,75,75,75,75,75,72,75,75,75,75,75,75,75,73,66,72,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,66,72,24,34,75,75,53,23,15,3,0,8,0,0,49,43,27,16,18,30,28,12,24,44,50,52,61,60,50,46,44,32,29,45,25,0,0,0,42,40,42,45,28,20,12,15,0,0,0,1,20,0,0,26,40,18,0,0,0,0,26,28,37,26,3,0,0,6,25,34,56,75,75,75,75,70,75,75,75,65,55,65,75,75,75,75,75,75,75,75,75,42,21,11,27,28,30,44,39,36,26,28,28,26,31,27,38,37,24,36,5,9,4,14,39,50,63,65,57,75,75,75,75,75,75,75,43,31,20,1,9,35,42,40,47,58,36,11,3,0,4,4,9,2,1,3,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,44,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,47,47,56,44,29,36,38,34,14,0,0,0,0,3,1,0,0,0,0,0,0,40,23,5,1,1,4,6,3,7,57,41,24,19,24,18,7,0,0,0,0,7,3,3,73,50,22,5,4,13,17,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,75,67,58,27,6,0,0,3,28,17,35,67,57,75,75,53,42,1,0,0,0,25,46,32,16,25,23,13,3,24,10,0,0,0,7,25,40,68,75,75,74,59,35,4,12,0,20,14,21,53,67,75,69,68,31,13,15,20,46,50,18,66,62,56,50,39,49,47,65,74,62,65,62,44,50,59,75,72,64,43,54,66,44,36,25,41,61,63,47,44,65,39,28,35,64,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,0,75,75,75,75,75,75,75,75,75,75,75,75,0,0,75,75,75,75,75,75,41,50,75,52,75,37,75,75,75,61,75,75,75,75,75,75,65,43,57,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,61,53,47,55,0,64,65,63,64,55,56,55,45,16,10,13,10,8,9,5,27,67,75,75,75,75,75,75,75,75,75,75,74,57,59,39,26,48,62,72,55,53,30,34,48,60,30,33,27,7,19,13,35,45,58,67,49,52,51,74,75,75,75,75,75,75,75,71,70,75,75,75,75,75,75,75,75,75,75,75,75,57,56,53,29,27,37,27,15,30,0,5,17,28,3,21,13,18,56,44,0,13,46,42,72,75,72,44,73,56,47,23,11,2,29,34,53,52,50,75,75,47,50,43,68,70,75,75,75,56,57,4,11,19,55,62,75,75,75,42,14,0,0,69,75,32,73,13,17,41,51,75,75,75,75,61,75,54,60,49,47,38,30,27,64,61,63,71,62,66,60,68,70,61,67,70,66,74,71,75,75,75,75,64,49,55,36,25,20,47,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,73,75,75,75,67,62,67,66,66,42,14,4,3,5,9,10,0,9,39,59,68,74,70,61,72,56,75,75,75,75,69,75,75,75,75,75,75,0,75,75,0,75,75,75,75,75,75,75,75,75,75,75,55,75,61,75,75,75,61,75,75,75,75,75,75,75,75,75,61,72,68,63,56,22,34,29,34,38,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,69,67,66,66,65,38,43,40,35,63,75,75,75,73,75,62,45,25,4,6,0,0,0,10,15,39,75,75,65,43,53,75,75,70,75,75,75,75,75,75,69,15,0,15,0,0,24,36,50,63,63,69,65,60,75,75,75,75,75,75,75,0,75,75,75,75,0,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,69,55,46,28,24,12,0,4,9,0,0,0,0,0,8,11,6,34,46,50,44,27,29,37,42,32,14,4,0,0,0,30,33,35,18,38,48,63,75,75,75,66,46,10,1,5,20,30,29,15,1,8,30,52,68,63,68,75,55,64,58,69,70,57,38,51,72,71,75,75,75,60,35,28,23,9,19,47,43,53,45,48,58,57,52,57,70,57,37,17,0,24,13,22,21,25,46,75,75,43,60,59,55,51,41,53,75,75,70,75,75,0,0,0,0,0,0,0,0,75,0,0,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,0,75,75,75,75,0,75,75,75,75,75,75,75,75,75,75,54,62,58,67,68,68,32,15,5,11,0,37,47,48,41,28,16,16,29,37,49,75,75,75,75,75,75,75,75,75,0,75,75,0,0,75,75,75,75,75,75,75,75,75,75,75,75,75,58,61,42,55,75,67,73,51,62,53,18,13,19,32,32,25,11,23,30,35,44,39,31,29,22,0,0,6,0,12,59,31,37,19,37,6,22,39,22,45,32,29,22,52,28,24,32,11,24,58,60,20,8,0,1,4,9,19,20,23,38,64,75,75,75,59,60,60,56,75,75,75,64,62,44,75,57,61,50,38,35,31,39,40,57,75,75,69,55,49,55,71,56,63,59,59,58,50,43,44,31,32,30,47,75,57,49,75,75,75,75,63,75,75,0,0,0,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,67,46,44,11,2,20,40,33,30,61,69,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,50,75,75,75,75,75,75,75,48,14,8,18,67,75,75,75,75,75,75,75,75,75,75,75,0,75,75,75,48,20,8,0,0,0,0,0,0,22,46,71,48,47,61,75,64,71,56,42,72,62,47,15,5,5,0,0,7,16,20,22,39,18,43,27,7,17,15,6,0,17,18,7,0,5,11,14,0,1,11,8,11,19,32,32,31,36,39,44,42,31,27,20,18,27,38,42,70,72,58,62,61,54,49,35,32,69,75,75,75,75,75,75,75,75,75,75,75,75,75,36,38,59,46,36,58,59,53,64,39,31,63,75,75,75,75,75,75,75,75,75,75,65,75,75,75,75,75,75,75,75,75,75,75,73,68,44,43,40,22,11,28,26,14,35,41,65,59,68,58,57,44,46,29,40,38,28,27,19,17,49,70,75,75,55,65,75,75,75,68,71,71,65,75,68,69,66,63,62,51,25,13,0,13,1,21,33,65,51,36,61,31,6,1,0,16,0,7,1,0,6,30,47,45,49,36,47,31,41,75,69,46,75,75,75,75,75,73,37,50,42,33,56,30,39,40,42,44,50,68,53,65,75,75,75,75,75,75,75,60,13,32,35,39,44,37,41,39,49,42,47,45,47,25,65,75,70,63,75,65,75,0,75,75,75,75,75,0,75,75,75,0,75,75,75,75,75,0,0,75,75,75,75,75,75,75,68,73,75,70,54,43,32,53,60,45,44,58,75,75,75,75,75,75,0,75,75,75,75,75,75,75,75,73,34,6,18,4,34,59,75,75,75,75,75,75,75,75,75,75,75,75,63,60,7,27,53,47,75,17,26,62,75,75,75,75,0,75,75,75,0,0,0,0,0,0,0,75,0,75,75,75,75,75,75,75,75,75,75,67,75,69,40,33,75,75,75,75,75,75,75,75,75,0,0,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,72,75,75,75,66,58,50,39,33,27,18,9,0,0,3,1,0,1,16,11,21,30,20,10,0,0,0,4,21,26,35,48,64,75,75,75,70,75,75,75,75,75,75,70,65,60,75,75,66,61,48,44,43,53,61,69,70,65,45,23,55,75,75,75,75,75,75,75,75,75,75,75,75,75,47,47,1,16,33,22,23,20,7,0,0,0,0,11,16,0,4,14,5,14,6,0,0,19,37,38,25,12,0,16,20,18,16,20,22,20,22,0,6,29,45,50,7,28,27,38,44,35,40,33,43,23,2,0,23,18,10,0,0,0,0,19,18,15,27,44,29,6,16,18,17,36,34,49,56,59,48,56,64,60,51,38,28,27,11,14,9,5,4,0,1,20,32,51,36,41,38,27,0,0,0,0,7,38,48,68,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,74,64,50,50,52,35,44,75,75,73,75,75,75,75,75,75,75,62,17,0 20 | 31,0,0,0,0,0,0,0,0,0,0,60,122,139,152,161,137,135,129,124,80,85,123,136,131,155,176,151,148,195,198,170,181,175,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,216,225,225,225,215,205,201,225,225,225,225,222,107,59,16,15,51,13,0,0,0,0,12,0,0,0,0,0,0,78,58,0,93,78,74,68,131,162,162,213,225,185,167,111,56,93,113,58,89,71,66,57,23,3,52,72,66,54,38,36,16,12,10,16,15,0,0,0,0,0,17,0,0,0,7,33,6,0,0,0,0,30,20,52,8,91,33,0,0,4,0,19,98,118,66,0,0,22,8,22,123,225,225,0,0,0,0,0,0,0,0,0,225,225,225,225,225,225,225,225,225,218,63,40,24,0,0,35,10,0,113,106,180,202,200,0,121,131,138,40,141,225,205,52,44,91,225,221,225,225,225,225,225,225,225,225,225,0,225,225,225,225,225,225,225,225,225,0,0,0,225,225,225,225,225,0,0,0,0,0,0,0,225,0,0,0,225,225,225,225,225,225,225,225,225,105,0,0,9,11,7,0,0,27,14,34,26,0,0,65,82,98,79,59,36,44,129,167,197,176,156,195,135,138,200,72,0,8,51,125,112,148,96,114,78,5,48,3,0,0,0,31,17,0,0,0,0,0,0,0,0,0,11,29,16,10,26,5,0,10,55,0,9,89,172,217,213,177,179,225,225,0,0,0,0,0,0,0,0,0,0,0,0,0,225,225,208,225,225,225,218,208,212,175,220,192,173,117,129,78,125,119,90,103,121,197,225,207,225,181,194,212,225,191,225,225,210,41,0,115,119,117,129,112,113,119,116,101,44,28,9,22,34,31,18,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,30,20,0,32,17,48,11,115,173,164,148,169,182,133,116,77,57,18,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,225,217,225,225,184,101,161,170,42,0,0,2,0,21,25,0,0,0,21,73,88,118,70,71,30,18,7,0,0,0,0,0,0,26,0,26,0,0,27,0,0,0,32,99,108,67,37,13,27,58,18,0,76,9,0,0,47,114,57,126,151,213,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,186,151,147,192,216,144,149,225,225,225,225,0,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,225,225,225,225,225,225,0,0,225,0,225,0,225,0,0,0,0,225,225,225,225,225,225,0,0,0,0,0,0,0,0,225,225,225,225,225,225,225,225,0,0,225,225,225,225,225,225,225,0,225,225,225,225,144,106,217,225,45,10,0,21,37,27,47,59,77,93,119,214,198,187,102,93,86,90,118,124,163,120,124,94,57,81,115,181,170,176,145,72,66,93,110,121,66,24,9,27,106,58,61,87,196,225,225,225,225,225,225,225,225,0,0,0,0,0,0,0,0,0,0,0,225,225,225,225,0,225,225,225,186,94,50,44,0,0,1,4,0,0,0,1,26,14,33,22,105,119,225,225,225,225,225,225,225,119,191,161,225,225,225,225,225,225,225,225,225,225,200,225,181,184,177,125,148,165,113,42,32,0,6,7,10,0,1,63,122,119,113,61,7,0,1,3,23,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,0,0,225,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,225,225,225,0,0,0,0,0,225,225,225,225,225,0,0,225,225,225,225,225,225,225,225,225,225,225,0,0,225,225,225,225,225,225,168,165,165,8,0,0,0,0,0,9,22,48,116,152,141,114,142,160,160,186,187,175,166,145,50,13,0,42,102,81,75,79,28,111,225,225,225,0,0,225,225,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,225,0,225,225,225,0,0,0,0,225,225,225,225,225,225,185,85,26,0,0,0,0,0,40,49,52,53,62,181,225,225,225,131,89,64,56,13,0,25,24,0,0,0,0,0,0,0,0,0,0,103,101,94,50,30,54,41,0,0,0,0,5,104,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,186,200,125,108,61,133,188,193,213,225,225,141,113,225,225,119,188,225,225,225,225,225,225,225,225,217,143,209,225,167,225,225,225,225,182,225,225,225,87,109,27,55,141,225,225,225,225,225,225,0,0,0,225,225,0,0,225,225,225,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,225,225,0,225,225,225,225,225,225,225,225,171,139,225,225,225,225,225,225,225,225,213,175,149,115,74,41,86,36,30,153,127,215,133,225,225,225,225,225,225,0,0,225,225,225,225,225,225,0,0,225,225,225,225,225,225,225,225,130,148,97,0,0,7,26,179,186,195,217,143,123,140,176,146,187,190,225,225,208,198,55,0,0,38,0,22,30,0,3,82,139,162,115,150,172,129,116,107,53,60,33,58,40,20,27,0,0,38,75,47,34,0,72,129,170,177,162,121,103,225,188,127,127,127,127,80,13,137,225,169,182,208,200,225,124,183,225,225,225,225,225,225,225,225,196,176,222,225,225,221,225,225,225,164,191,74,82,174,225,225,225,225,0,0,0,225,225,225,225,225,225,225,225,0,0,0,0,225,225,225,225,225,225,225,225,0,0,0,0,0,0,225,225,225,225,173,58,36,0,56,68,100,67,95,101,120,223,225,225,225,225,225,225,220,110,73,72,0,21,0,0,0,0,19,47,53,90,128,112,57,12,110,94,34,0,26,50,89,176,216,194,112,43,42,51,45,87,73,12,0,0,0,0,0,65,33,0,70,154,225,225,192,186,225,192,201,212,192,225,225,89,12,18,11,53,5,0,0,0,0,0,0,37,0,5,0,0,17,105,138,129,170,152,174,180,139,126,138,125,80,46,0,16,48,71,93,71,58,64,21,28,63,11,22,159,204,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,217,182,201,139,146,178,177,185,172,200,164,9,116,225,170,14,52,0,107,164,225,225,225,225,225,225,0,0,225,225,0,225,225,225,225,225,225,225,225,206,225,155,215,206,169,176,194,150,94,112,215,225,225,225,193,86,6,3,55,119,124,172,125,122,145,173,218,225,225,225,225,225,225,0,0,0,0,0,0,0,225,225,225,225,225,225,194,218,225,225,225,198,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,0,225,225,173,225,0,0,0,225,225,0,225,225,225,0,0,225,225,219,225,225,0,0,0,225,225,225,225,225,225,225,0,0,225,225,225,225,225,225,225,225,216,117,196,225,225,225,0,0,0,0,0,0,0,0,225,225,225,225,116,40,7,32,39,72,81,88,83,82,130,142,154,125,91,99,38,0,65,48,19,28,23,125,86,64,24,103,69,44,83,54,19,117,225,191,225,225,0,0,0,225,0,0,0,225,225,223,225,225,225,225,225,225,32,52,134,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,0,0,0,0,0,0,0,0,0,225,225,225,225,225,225,225,225,225,225,225,225,225,225,185,150,88,6,0,0,0,34,54,37,40,26,0,0,88,76,119,112,68,0,0,1,31,0,0,13,0,35,72,95,140,97,135,120,101,64,96,54,83,131,92,35,18,26,53,51,45,0,0,0,0,12,34,80,161,159,202,179,156,119,115,165,139,165,65,30,21,63,127,42,55,96,114,79,91,82,8,0,0,0,5,47,11,0,18,57,99,118,145,147,172,102,98,50,6,29,49,46,0,0,42,23,40,43,39,0,190,15,66,94,28,0,17,167,128,120,174,159,205,198,225,165,32,68,107,101,36,0,171,144,36,68,131,225,189,168,175,186,215,225,225,225,225,225,220,225,211,102,2,43,46,57,0,0,0,41,100,166,154,166,206,177,164,144,130,110,66,86,38,24,33,9,70,163,137,145,148,201,176,167,146,159,158,138,116,125,122,60,13,0,0,0,0,4,0,0,23,82,111,113,130,83,86,58,19,4,0,126,225 21 | 25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,95,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 22 | 24,50,24,25,29,15,0,41,43,0,2,11,36,11,0,10,1,0,47,67,54,12,12,10,14,18,24,20,20,33,31,58,46,34,9,20,18,23,31,39,32,35,22,28,18,6,9,7,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,53,21,95,95,95,95,95,95,95,95,95,56,21,24,0,23,93,86,58,16,12,0,0,0,0,7,0,4,7,24,5,10,24,0,12,0,0,2,0,0,33,51,1,4,36,26,37,20,12,0,14,13,0,9,38,64,33,0,4,35,54,19,0,44,48,5,9,1,0,78,95,40,72,95,95,95,95,50,95,59,30,67,27,18,13,13,44,95,95,95,95,95,95,95,95,95,95,95,95,95,95,64,40,15,61,79,48,15,27,25,29,23,30,50,65,44,32,84,95,95,95,95,95,95,95,59,62,95,67,0,95,38,95,95,95,95,95,95,95,95,95,93,95,54,47,68,81,81,74,47,71,52,75,45,43,51,56,95,70,44,38,62,51,60,69,44,46,55,47,41,40,26,23,28,29,51,15,9,19,23,51,64,65,64,38,15,0,1,7,17,7,0,19,35,27,18,4,28,36,6,3,0,0,0,0,0,4,0,0,12,11,15,23,6,9,21,0,0,0,12,0,0,5,10,19,15,0,0,0,0,0,0,0,0,0,0,0,25,0,19,49,45,45,2,0,3,8,42,13,11,18,33,20,18,21,34,81,95,81,42,6,0,45,51,6,0,0,0,0,0,0,0,0,3,6,5,4,33,27,37,56,19,12,15,14,20,7,0,0,0,0,13,27,11,3,29,26,16,14,15,13,6,4,0,0,15,0,0,0,0,0,0,0,0,20,30,7,40,3,0,0,0,63,87,66,0,25,4,1,27,10,25,5,0,0,0,0,6,19,13,25,40,39,24,32,28,43,25,23,18,13,26,65,53,52,35,14,12,13,16,14,10,6,12,28,27,21,7,15,19,15,27,14,17,14,12,3,0,0,3,1,0,0,0,1,18,0,21,41,11,5,0,44,41,4,6,0,0,0,0,0,0,0,0,11,32,41,55,24,18,0,10,0,0,0,0,0,0,0,7,0,1,4,3,0,0,5,7,26,60,75,75,33,65,9,0,17,0,4,6,0,5,4,2,17,3,0,7,22,13,4,18,18,28,4,9,0,10,0,0,0,16,13,0,0,0,26,13,38,14,0,0,5,0,0,32,60,70,53,51,60,26,52,53,4,0,21,24,24,31,44,36,41,41,17,57,24,13,0,0,0,0,0,11,83,14,61,52,95,57,83,95,95,53,62,83,95,95,50,35,95,95,95,54,12,30,19,21,19,49,17,11,0,2,4,27,51,53,27,13,0,2,49,73,46,31,34,50,34,28,38,50,47,37,30,37,30,41,53,10,28,30,40,34,76,95,95,95,95,95,80,53,77,9,8,9,11,3,0,4,11,37,93,76,66,69,74,69,85,81,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,94,95,95,95,95,95,95,95,95,95,95,95,95,82,95,95,95,95,76,95,95,51,95,95,95,95,95,95,95,95,65,62,39,83,95,92,26,8,9,22,0,0,0,0,0,19,18,93,95,30,38,11,12,0,14,26,14,1,0,4,2,0,0,11,43,57,0,12,62,32,30,0,0,0,32,52,54,65,64,71,65,42,11,26,42,30,26,58,66,70,72,16,23,36,0,0,12,17,14,8,0,10,0,3,55,63,9,14,18,21,7,10,4,15,21,7,20,14,10,57,38,48,45,40,22,22,13,25,22,8,12,26,49,14,2,10,16,15,25,0,24,43,28,46,44,24,1,12,0,28,12,38,61,63,26,3,7,17,42,19,8,8,39,29,17,61,11,50,33,71,62,32,47,30,41,19,33,0,6,50,8,9,22,41,34,6,29,77,36,64,95,74,74,63,79,32,19,22,13,18,40,22,59,76,95,40,48,48,54,33,43,28,28,10,13,7,12,18,25,45,67,50,48,43,69,60,48,41,46,37,30,39,31,29,16,8,13,14,26,37,50,69,92,59,47,27,42,43,45,42,47,16,0,0,0,0,6,0,12,11,11,3,28,44,45,50,45,48,49,51,46,13,9,26,13,21,16,18,26,21,9,13,0,0,0,0,6,4,8,0,0,0,0,0,0,1,0,0,0,50,40,4,25,53,18,70,15,7,2,1,37,59,92,95,95,95,57,41,43,44,53,20,58,83,56,50,72,60,35,17,28,47,35,95,95,95,95,95,95,95,73,95,51,95,95,95,95,95,88,95,95,95,95,46,59,77,95,95,95,95,91,95,95,95,77,66,65,40,40,78,63,62,50,9,0,3,8,7,2,20,11,7,20,24,8,28,17,17,46,3,13,0,11,25,35,44,53,56,64,72,73,80,61,16,0,7,14,35,54,38,33,24,34,39,40,0,0,0,10,25,72,43,7,3,40,56,31,13,21,90,94,93,95,95,95,95,95,92,95,95,95,95,59,82,91,73,50,59,57,54,63,50,60,67,75,59,43,33,68,61,50,41,3,0,7,12,12,16,16,18,8,36,43,46,19,4,7,22,23,28,32,33,36,23,32,18,0,0,0,0,0,0,30,31,40,41,40,30,35,47,75,84,69,71,78,89,95,73,48,18,18,1,0,3,15,29,26,19,1,25,32,0,0,0,32,28,56,74,77,67,83,94,57,20,0,0,0,42,26,3,0,7,28,48,50,51,95,95,95,95,95,95,95,95,86,75,46,91,81,13,5,31,62,18,34,11,38,35,14,23,46,45,34,55,85,57,71,95,57,57,53,81,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,67,74,38,41,44,45,33,32,23,27,40,12,10,12,7,18,16,42,28,20,52,49,36,4,1,0,12,7,31,31,23,13,23,33,95,95,95,95,95,95,95,95,95,95,95,95,95,95,70,95,70,90,95,95,57,76,32,35,1,0,0,3,2,8,67,64,23,21,33,20,6,1,27,25,24,4,0,0,19,1,4,0,11,0,1,0,0,57,60,45,49,44,60,47,34,20,9,0,40,28,6,0,33,44,95,95,66,30,13,15,17,22,53,86,95,69,73,95,95,95,58,13,24,6,27,8,8,51,61,95,87,49,50,79,57,23,24,22,35,62,64,44,45,31,0,22,3,0,0,0,0,12,10,0,4,22,17,0,7,0,0,26,5,13,23,51,44,95,72,95,95,63,95,95,95,95,95,95,95,69,15,19,7,15,32,53,65,77,94,95,95,95,95,81,92,95,69,58,50,24,49,95,91,95,95,95,82,82,62,43,31,24,13,37,28,57,88,95,95,82,72,40,36,5,8,5,27,7,26,60,69,26,15,45,71,80,74,52,94,95,71,29,2,10,28,9,16,39,64,55,52,29,27,18,14,0,0,24,33,5,37,95,70,32,15,19,24,11,9,17,10,43,29,9,15,24,0,0,2,32,26,14,3,0,1,45,62,71,93,75,71,95,95,93,95,95,95,95,95,95,63,55,58,87,93,95,91,73,92,95,92,95,70,56,39,10,0,4,12,18,10,14,17,0,0,20,55,28,9,32,33,13,27,66,66,46,19,14,17,44,40,51,51,35,0,0,18,13,2,18,3,18,10,16,18,43,84,95,95,95,94,74,46,37,36,66,90,82,67,44,43,53,47,57,58,47,42,49,27,18,18,0,21,43,34,24,34,27,74,30,9,21,83,37,20,25,24,4,0,1,11,32,38,32,72,78,54,58,56,46,48,42,16,21,25,36,33,23,18,37,25,0,33,51,50,15,19,7,33,48,45,55,37,1,0,6,28,53,72,18,5,54,60,63,66,68,95,24,18,25,29,63,80,95,91,78,95,94,65,37,94,95,95,95,89,54,4,67,95,95,64,69,95,65,64,78,74,83,78,73,42,19,3,56,32,53,60,80,24,34,56,63,0,22,29,32,84,88,66,88,95,95,68,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,95,72,82,95,95,95,79,55,74,94,72,22,47,75,77,95,94,75,44,37,58,48,59,46,31,45,47,55,65,67,38,45,55,27,5,7,0,3,27,26,51,55,66,47,63,19,0,15,31,5,95,95,95,91,95,95,95,65,79,41,95,95,95,95,95,0,0,0,95,95,95,95,95,95,95,95,95,95,95,90,60,43,39,16,67,95,95,95,95,95,95,95,95,95,95,95,80,79,71,45,50,68,65,44,53,70,57,79,74,75,63,95,95,61,90,95,95,68,13,35,41,39,42,34,22,9,7,0,22,0,0,4,0,11,2,0,0,0,18,36,57,52,40,52,66,65,65,55,58,52,53,76,78,79,78,72,62,32,31,35,51,72,71,82,95,70,54,54,47,33,40,37,31,44,45,47,19,32,35,18,29,16,44,52,54,75,95,95,95,95,95,95,95,87,42,50,47,15,32,40,25,6,17,24,16,21,20,18,7,13,20,54,61,51,61,51,33,1,19,43,44,27,4,19,19,15,22,23,21,13,0,22,45,4,37,59,60,61,37,9,17,17,35,25,5,0,6,1,0,6,0,3,6,16,17,17,0,41,95,95,88,74,52,32,21,1,15,17,15,8,5,0,3,0,0,15,51,49,15,30,1,10,23,39,29,25,21,14,41,48,52,52,45,35,39,43,37,72,61,37,0,22,28,44,37,42,81,95,95,95,95,95,95,95,95,95,95,95,95,95,95,67,72,93,95,95,95,82,95,95,95,95,95,95,95,95,95 23 | 970,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,6,5,5,3,5,2,2,3,2,1,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,0,0,0,0,0,0,0,0,6,8,6,9,10,10,7,2,2,6,6,5,5,10,9,10,10,10,10,10,10,10,10,10,10,6,6,5,5,10,10,9,3,0,10,2,6,10,10,5,7,3,10,9,4,6,10,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,10,0,0,10,10,10,10,10,10,10,10,10,10,0,10,10,10,10,0,10,0,10,10,10,10,10,10,10,10,7,10,8,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,0,0,10,10,10,10,10,5,4,0,1,2,3,4,4,6,7,6,4,1,0,0,0,4,10,7,5,4,0,1,9,10,9,10,10,7,3,1,1,2,3,4,7,8,7,1,4,5,6,8,9,7,1,0,0,4,2,1,3,4,1,2,2,4,3,3,5,3,4,5,5,10,9,10,7,7,0,0,2,10,10,9,4,6,6,5,4,3,3,1,1,4,3,1,1,0,2,0,0,0,0,0,2,1,2,1,4,2,5,5,9,10,10,10,10,10,10,10,4,0,1,2,0,0,0,0,4,0,0,0,2,1,0,0,4,4,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,0,1,0,0,3,2,7,8,5,4,1,3,3,7,10,10,8,10,10,10,9,6,7,5,3,2,1,1,0,3,1,0,0,0,0,0,0,0,0,0,0,0,0,2,1,4,0,1,3,3,4,8,3,8,10,10,7,1,3,2,4,0,1,0,1,5,3,1,0,2,4,5,2,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,9,4,4,4,9,10,8,7,9,3,6,7,3,7,4,7,4,0,1,0,5,7,6,10,10,10,10,10,10,10,10,10,5,0,2,4,3,6,7,5,1,1,7,8,10,9,10,10,9,6,6,8,7,10,10,10,10,10,10,9,10,10,10,10,10,9,8,5,9,7,6,0,3,10,6,6,6,8,10,10,10,10,6,5,5,4,5,2,3,6,9,10,9,10,3,4,10,10,10,10,10,10,10,10,8,10,10,8,10,7,10,10,10,10,10,10,10,10,9,8,10,10,10,10,10,10,10,9,9,10,10,10,9,3,6,8,4,3,7,7,6,10,10,10,10,10,10,10,10,10,0,10,10,10,10,10,10,10,9,4,5,6,10,10,10,9,10,10,10,9,10,10,9,7,5,10,0,10,10,10,10,9,3,4,10,6,7,10,10,10,0,0,0,0,10,10,10,10,6,10,10,10,10,10,10,10,10,4,3,6,6,6,7,6,10,10,10,0,10,10,10,10,10,10,10,10,0,0,2,5,5,6,4,3,6,8,2,0,0,0,3,2,0,0,1,0,0,0,0,1,1,1,0,1,2,1,0,0,0,0,1,4,6,6,8,6,3,2,4,1,1,5,5,1,0,0,0,0,1,3,1,6,0,0,0,2,7,7,2,7,10,10,10,9,8,10,10,10,10,10,6,3,4,1,2,0,5,9,8,10,4,10,5,10,10,10,10,10,7,10,10,10,10,10,10,10,10,0,0,0,0,10,10,10,10,0,0,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,6,10,10,10,7,10,10,10,10,10,10,10,10,8,6,3,6,5,6,8,9,2,6,9,10,10,6,5,5,3,4,5,4,7,5,8,8,6,8,8,10,10,1,1,0,0,3,6,10,10,10,7,7,0,2,10,1,1,2,5,3,6,2,4,1,1,0,3,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,3,3,0,3,5,2,2,5,7,7,8,6,3,6,5,5,4,1,1,4,8,10,8,7,6,3,0,0,5,8,6,4,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,9,7,10,10,8,6,10,10,6,10,10,10,10,10,10,10,10,10,10,10,10,10,10,6,10,10,10,10,10,10,10,10,0,0,0,0,10,10,10,10,10,10,8,5,10,10,7,0,0,3,1,5,3,1,0,1,2,0,1,1,0,0,0,0,0,0,0,1,0,5,4,5,4,4,1,1,0,3,0,0,3,6,2,0,1,3,5,6,8,10,10,8,7,7,5,4,4,6,8,10,10,10,0,0,10,10,10,10,10,10,10,10,0,0,0,0,10,10,10,10,10,10,9,7,5,4,8,10,10,7,7,7,7,7,8,10,10,4,7,7,8,6,4,3,0,0,5,5,7,10,7,3,7,5,1,0,0,3,0,0,6,10,10,10,10,10,10,10,6,3,3,1,1,4,2,0,0,0,0,0,0,0,1,1,1,2,0,0,1,0,5,5,9,9,10,10,9,3,5,8,2,2,4,5,9,10,10,7,6,7,10,9,4,3,4,5,7,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,0,0,0,0,0,0,0,0,0,0,0,0,10,0,0,0,0,0,10,10,10,6,9,7,1,10,10,10,10,10,0,0,0,0,10,0,10,10,10,10,0,0,0,10,10,10,10,8,10,10,8,5,4,4,7,10,8,10,6,5,10,10,10,10,10,10,10,10,0,0,10,10,10,10,10,0,0,10,0,10,0,0,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,5,10,10,10,10,10,10,0,0,10,10,0,10,10,10,10,10,10,10,6,6,5,5,4,2,4,5,6,6,6,7,6,10,10,10,10,7,8,10,3,4,3,1,4,4,3,4,5,8,10,10,10,10,10,10,10,10,9,10,10,10,10,9,9,10,10,10,0,0,10,10,10,10,10,10,10,10,10,10,10,0,10,10,10,9,10,10,8,9,9,4,9,4,2,3,1,4,2,1,4,7,8,10,10,10,10,0,10,10,10,10,10,10,0,10,10,0,10,10,10,10,10,10,10,0,0,0,0,0,0,0,0,10,10,8,9,10,10,10,10,9,10,10,8,4,2,6,7,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,9,10,10,10,10,10,10,10,10,10,10,10,8,9,5,3,5,10,10,7,8,8,10,10,10,10,10,10,10,10,8,6,9,9,10,6,9,7,7,6,8,6,3,0,0,1,0,2,4,6,5,5,5,6,8,9,10,10,10,9,8,5,3,1,1,1,0,2,6,8,8,9,4,3,2,1,5,7,6,2,3,6,6,7,2,6,7,5,2,3,6,10,10,7,1,5,8,6,6,10,10,10,10,10,10,9,10,10,7,6,4,3,4,4,7,10,10,10,10,10,0,0,0,10,10,10,10,10,10,10,10,10,8,8,7,4,3,6,10,10,10,10,10,10,10,10,10,10,8,8,10,10,10,10,10,10,10,10,10,0,10,10,10,0,10,10,10,10,10,10,10,7,10,10,10,8,10,6,3,4,6,10,10,9,4,4,2,5,9,10,10,7,5,6,2,6,9,10,10,10,10,10,10,9,7,10,10,0,0,0,0,0,0,0,0,0,0,10,10,10,10,9,5,3,9,10,10,10,10,10,3,5,10,8,7,7,5,10,10,10,10,10,10,10,10,10,10,8,9,5,7,8,10,10,10,0,0,0,0,0,0,0,0,0,10,10,10,10,10,10,10,0,0,0,0,10,0,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,8,9,10,10,10,0,0,10,10,10,10,10,10,0,10,10,10,10,10,10,7,5,9,4,0,7,5,8,8,10,10,10,10,8,10,8,5,5,5,0,1,4,4,5,10,10,10,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,10,0,10,10,10,8,10,10,8,10,10,10,10,9,5,9,10,9,10,10,10,10,10,10,0,0,0,0,0,10,0,0,0,10,10,10,10,7,8,9,10,10,10,10,10,10,10,10,10,7,6,8,5,1,2,5,3,3,3,3,7,7,7,7,5,4,3,4,2,1,4,5,4,1,0,1,6,8,7,6,5,4,5,6,7,7,8,5,1,4,4,4,2,2,4,6,7,9,10,10,10,10,10,10,10,10,8,8,9,9,8,7,6,10,10,10,10,10,7,5,6,7,7,10,10,9,7,6,4,3,2,3,4,1,0,3,10,6,7,5,3,5,7,9,8,6,4,5,5,2,6,4,8,2,5,3,0,4,6,6,6,7,6,8,10,10,10,5,3,2,0,2,7,9,3,0,4,0,2,5,6,7,7,8,6,0,1,3,2,3,3,5,8,10,10,10,10,10,10,10,9,7,4,0,1,6,10,10,10,10,10,9,7,3,2,0,0,1,0,1,4,5,8,6,8,7,8,8,5,4,5,4,1,3,4,9,10,10,8,4,3,0,1,2,3,2,2,3,9,10,9,8,7,4,5,8,10,10,10,10,10,6,2,4 24 | 1413,104,91,74,101,18,53,50,105,107,139,138,106,83,93,122,109,123,152,155,155,155,155,143,155,155,155,155,155,155,155,155,155,155,155,155,155,143,116,128,155,155,155,155,155,155,155,143,155,155,155,155,155,155,155,155,155,132,155,155,41,31,88,137,29,48,81,47,1,0,0,21,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,2,21,0,3,12,0,0,0,0,1,2,12,91,33,0,0,5,0,0,21,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,7,0,0,0,11,5,1,0,12,4,4,1,13,0,2,2,90,88,22,21,17,50,52,69,61,70,43,42,37,92,60,52,32,0,0,0,0,0,0,6,27,14,20,14,43,91,95,111,104,99,112,140,151,129,116,155,155,155,155,155,155,134,84,136,155,155,131,112,144,38,0,8,76,11,1,0,63,70,43,29,0,0,0,8,0,0,7,0,0,0,0,0,2,2,0,0,0,0,0,0,13,26,42,0,0,2,0,0,0,0,0,0,10,0,0,0,0,0,0,38,22,41,61,64,54,36,0,0,0,0,0,0,0,0,0,0,0,0,4,7,1,15,5,0,0,0,0,0,0,15,26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,0,18,34,20,0,0,12,20,17,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,17,9,0,0,0,0,0,0,0,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,0,0,2,0,0,0,0,0,0,0,0,0,0,18,28,3,0,0,0,0,2,7,12,3,0,0,0,0,2,0,0,0,0,0,0,0,2,20,27,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,40,45,29,0,0,0,0,0,0,0,0,0,0,0,0,5,8,0,0,0,0,0,0,0,0,11,0,0,0,0,0,7,41,13,0,22,22,30,12,20,8,23,33,4,0,0,10,12,5,0,0,0,0,3,0,20,0,0,0,0,10,0,4,0,0,0,20,49,38,3,0,16,84,0,0,0,0,0,7,0,0,0,0,0,0,0,5,0,10,8,43,0,0,16,0,0,0,0,0,0,0,0,15,18,5,0,0,0,0,0,0,0,0,0,0,0,0,29,26,19,40,25,12,0,0,0,1,25,27,31,16,0,19,7,11,0,0,0,5,0,1,0,1,0,0,0,4,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,0,0,0,0,0,0,0,23,0,28,57,18,8,25,40,56,93,105,108,65,112,119,123,129,109,98,113,118,121,104,117,126,127,119,111,97,71,52,69,51,40,13,27,19,18,9,0,0,0,0,0,0,6,0,1,3,0,21,16,15,9,2,15,10,0,0,53,22,14,0,0,0,0,21,14,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,14,46,57,85,72,39,34,55,62,13,0,0,0,7,0,13,53,97,105,127,142,124,130,89,39,39,31,22,22,10,7,63,6,0,0,0,0,0,0,0,31,5,0,0,0,0,0,3,0,0,0,0,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,23,33,0,3,0,0,0,0,90,107,67,71,40,0,31,38,9,61,41,84,110,57,49,95,94,115,65,65,57,79,51,18,0,32,53,41,8,0,19,10,18,12,16,10,22,62,64,84,100,71,43,69,63,36,19,103,35,22,3,0,0,4,15,25,8,17,12,6,0,0,14,0,0,8,4,0,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25,130,125,111,71,33,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,23,23,19,40,32,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,62,81,98,67,35,33,15,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,0,0,0,0,0,8,6,42,24,25,0,2,0,15,30,18,17,52,0,0,0,0,11,12,4,5,0,10,0,65,68,21,0,0,13,0,0,7,14,4,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,20,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21,62,57,51,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,35,71,76,86,73,66,116,85,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,39,4,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,64,33,25,42,25,33,0,18,12,8,15,53,0,0,0,0,0,0,7,0,6,0,0,9,54,108,110,116,83,64,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,1,15,54,45,10,61,36,18,14,8,0,8,77,29,36,48,0,0,0,0,0,0,28,24,10,0,63,88,56,48,46,0,0,0,0,0,0,0,0,11,29,99,106,122,61,155,151,144,155,155,155,55,112,101,107,117,106,95,107,30,65,35,14,10,0,29,74,76,15,46,20,0,0,77,83,81,91,66,57,28,0,0,0,4,0,0,0,0,0,0,0,0,0,0,0,43,33,87,67,67,45,19,6,0,15,16,83,64,38,146,121,141,125,112,96,120,77,92,82,64,68,99,112,15,83,62,33,0,0,0,0,0,0,15,0,0,0,0,0,0,1,0,0,0,2,56,59,48,66,30,0,9,2,0,0,0,0,14,7,18,13,19,7,12,5,10,18,0,0,0,0,25,31,11,0,0,0,0,0,0,0,37,29,5,37,87,38,51,6,37,14,0,45,86,86,25,87,102,70,68,78,73,104,56,70,70,60,90,56,38,63,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,36,70,103,82,71,48,21,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,34,95,47,31,73,42,0,6,4,0,0,0,0,0,0,0,0,0,0,112,35,96,111,93,114,101,60,94,56,13,1,0,0,0,0,7,0,8,0,0,0,0,7,0,0,0,0,0,0,3,10,33,0,0,0,0,0,0,0,75,85,84,79,42,0,0,0,0,0,0,0,0,63,68,49,57,39,41,34,0,2,3,9,27,28,15,0,14,0,0,0,0,0,0,0,14,1,41,60,77,73,28,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,46,65,74,103,104,109,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,90,71,69,39,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,49,80,87,59,37,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,31,44,18,28,11,0,0,0,0,0,0,3,0,12,0,0,0,0,0,0,0,0,17,27,57,62,34,52,53,25,0,12,91,95,83,46,24,3,25,0,0,0,0,0,0,19,0,8,56,72,48,20,24,26,6,1,0,0,5,0,0,0,0,0,0,0,0,0,0,50,30,38,49,62,114,17,24,24,97,155,119,135,65,0,0,32,47,14,42,22,0,3,19,0,0,60,68,68,69,60,48,34,49,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,63,61,44,29,8,0,0,2,59,71,82,50,55,22,14,0,33,18,51,1,5,0,7,21,27,18,35,16,11,0,0,0,107,155,155,155,155,155,155,155,127,126,108,150,131,134,107,155,155,155,136,142,124,126,0,25,0,0,0,0,31,3,7,0,0,0,29,7,52,60,102,105,114,50,54,75,82,28,0,0,51,23,0,2,0,0,0,0,0,0,16,0,0,39,53,64,110,97,94,36,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,46,79,97,76,55,34,0,0,0,0,1,0,0,0,0,0,0,0,0,14,0,0,12,56,70,59,56,59,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,15,3,41,50,68,83,68,42,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,22,36,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,35,60,48,64,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,51,85,86,70,53,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,45,76,103,98,91,34,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,55,88,105,96,67,39,16,0,0,0,0,2,43,16,0,0,0,0,0,0,0,0,0,8,64,76,38,52,78,34,0,0,0,0,0 25 | -------------------------------------------------------------------------------- /data/bpa/season1/coal_power_plants_indices.csv: -------------------------------------------------------------------------------- 1 | 1078 2 | -------------------------------------------------------------------------------- /data/bpa/season1/costbpa.csv: -------------------------------------------------------------------------------- 1 | 1329,0.0001,0.0001 2 | 1294,0.0001,0.0001 3 | 1708,0.0001,0.0001 4 | 1189,0.0001,0.0001 5 | 1300,0.0001,0.0001 6 | 1712,0.0001,0.0001 7 | 1772,0.0001,0.0001 8 | 2140,0.0001,0.0001 9 | 2137,0.0014951,7.2006 10 | 1038,0.0001,0.0001 11 | 1037,0.015237,17.871 12 | 1550,0.0001,0.0001 13 | 1549,0.0001,0.0001 14 | 2194,0.0001,0.0001 15 | 1253,0.0001,0.0001 16 | 2196,0.0058398,17.467 17 | 2129,0.0058398,17.467 18 | 1095,0.0001,0.0001 19 | 1112,0.0001,0.0001 20 | 1046,0.0001,0.0001 21 | 1200,0.0001,0.0001 22 | 2170,0.0001,0.0001 23 | 793,0.0058398,17.467 24 | 1094,0.0058398,17.467 25 | 72,0.0058398,17.467 26 | 638,0.0001,0.0001 27 | 707,0.0001,0.0001 28 | 611,0.0001,0.0001 29 | 91,0.0001,0.0001 30 | 2169,0.0001,0.0001 31 | 775,0.0001,0.0001 32 | 644,0.0058398,17.467 33 | 857,0.0058398,17.467 34 | 1776,0.0001,0.0001 35 | 1780,0.13637,29.446 36 | 1110,0.02557,18.537 37 | 1097,0.0001,0.0001 38 | 2048,0.13637,29.446 39 | 2131,0.05139,28.765 40 | 760,0.0058398,17.467 41 | 997,0.13637,29.446 42 | 1007,0.13637,29.446 43 | 186,0.02557,18.537 44 | 190,0.0001,0.0001 45 | 195,0.0001,0.0001 46 | 162,0.0001,0.0001 47 | 161,0.0001,0.0001 48 | 1957,0.0001,0.0001 49 | 1995,0.0001,0.0001 50 | 1577,0.0001,0.0001 51 | 31,0.0001,0.0001 52 | 14,0.0001,0.0001 53 | 1040,0.0058398,17.467 54 | 782,0.0001,0.0001 55 | 23,0.0058398,17.467 56 | 88,0.0001,0.0001 57 | 1492,0.0001,0.0001 58 | 543,0.0001,0.0001 59 | 544,0.0001,0.0001 60 | 539,0.0001,0.0001 61 | 1483,0.0001,0.0001 62 | 757,0.0001,0.0001 63 | 756,0.0001,0.0001 64 | 46,0.0001,0.0001 65 | 352,0.0001,0.0001 66 | 419,0.0001,0.0001 67 | 513,0.0001,0.0001 68 | 1139,0.0001,0.0001 69 | 755,0.0001,0.0001 70 | 754,0.0001,0.0001 71 | 337,0.0001,0.0001 72 | 339,0.0001,0.0001 73 | 336,0.0001,0.0001 74 | 2181,0.0001,0.0001 75 | 1391,0.0001,0.0001 76 | 156,0.0001,0.0001 77 | 310,0.0001,0.0001 78 | 388,0.0001,0.0001 79 | 343,0.0001,0.0001 80 | 1480,0.0001,0.0001 81 | 21,0.0058398,17.467 82 | 38,0.0001,0.0001 83 | 63,0.0001,0.0001 84 | 51,0.0001,0.0001 85 | 480,0.0001,0.0001 86 | 487,0.0058398,17.467 87 | 491,0.0001,0.0001 88 | 130,0.015237,17.871 89 | 879,0.055305,28.092 90 | 1005,0.0001,0.0001 91 | 366,0.0001,0.0001 92 | 1412,0.0001,0.0001 93 | 1420,0.0001,0.0001 94 | 42,0.0001,0.0001 95 | 614,0.0058398,17.467 96 | 1907,0.13637,29.446 97 | 1572,0.0001,0.0001 98 | 1781,0.0001,0.0001 99 | 391,0.0001,0.0001 100 | 496,0.0001,0.0001 101 | 495,0.0001,0.0001 102 | 406,0.0001,0.0001 103 | 1292,0.0058398,17.467 104 | 1497,0.0058398,17.467 105 | 2177,0.015237,17.871 106 | 1283,0.055305,28.092 107 | 1496,0.0058398,17.467 108 | 1444,0.0001,0.0001 109 | 1644,0.0001,0.0001 110 | 1546,0.0001,0.0001 111 | 344,0.0001,0.0001 112 | 342,0.0001,0.0001 113 | 334,0.0001,0.0001 114 | 333,0.0001,0.0001 115 | 348,0.0001,0.0001 116 | 347,0.0001,0.0001 117 | 346,0.0001,0.0001 118 | 359,0.0001,0.0001 119 | 356,0.0001,0.0001 120 | 396,0.0001,0.0001 121 | 192,0.0001,0.0001 122 | 159,0.05139,28.765 123 | 174,0.02557,18.537 124 | 170,0.13637,29.446 125 | 169,0.13637,29.446 126 | 1400,0.01026,23.978 127 | 1027,0.13637,29.446 128 | 27,0.055305,28.092 129 | 18,0.02557,18.537 130 | 26,0.05139,28.765 131 | 983,0.0001,0.0001 132 | 1006,0.0001,0.0001 133 | 910,0.0001,0.0001 134 | 882,0.0001,0.0001 135 | 2207,0.0001,0.0001 136 | 179,0.0001,0.0001 137 | 748,0.0001,0.0001 138 | 1450,0.0001,0.0001 139 | 919,0.0001,0.0001 140 | 918,0.0001,0.0001 141 | 931,0.0001,0.0001 142 | 938,0.0001,0.0001 143 | 930,0.0001,0.0001 144 | 929,0.0001,0.0001 145 | 920,0.0001,0.0001 146 | 588,0.0001,0.0001 147 | 76,0.0001,0.0001 148 | 1012,0.0058398,17.467 149 | 1026,0.0058398,17.467 150 | 1489,0.0001,0.0001 151 | 1028,0.0058398,17.467 152 | 1886,0.0001,0.0001 153 | 1891,0.0001,0.0001 154 | 1888,0.0001,0.0001 155 | 1890,0.0001,0.0001 156 | 1960,0.0001,0.0001 157 | 778,0.0001,0.0001 158 | 776,0.0001,0.0001 159 | 1955,0.0001,0.0001 160 | 2027,0.0001,0.0001 161 | 1999,0.0001,0.0001 162 | 2026,0.0001,0.0001 163 | 1511,0.0001,0.0001 164 | 1186,0.0001,0.0001 165 | 1314,0.0001,0.0001 166 | 1702,0.0001,0.0001 167 | 1667,0.0001,0.0001 168 | 1515,0.0001,0.0001 169 | 1514,0.0001,0.0001 170 | 1078,0.0031257,26.47 171 | 1137,0.0001,0.0001 172 | 1063,0.0001,0.0001 173 | 1409,0.0001,0.0001 174 | 1568,0.0001,0.0001 175 | 1713,0.0001,0.0001 176 | 1142,0.0001,0.0001 177 | -------------------------------------------------------------------------------- /data/bpa/season1/gas_power_plants_indices.csv: -------------------------------------------------------------------------------- 1 | 1037 2 | 2196 3 | 2129 4 | 793 5 | 1094 6 | 72 7 | 644 8 | 857 9 | 1780 10 | 1110 11 | 2048 12 | 2131 13 | 760 14 | 997 15 | 1007 16 | 186 17 | 1040 18 | 23 19 | 21 20 | 487 21 | 130 22 | 879 23 | 614 24 | 1907 25 | 1292 26 | 1497 27 | 2177 28 | 1283 29 | 1496 30 | 159 31 | 174 32 | 170 33 | 169 34 | 1400 35 | 1027 36 | 27 37 | 18 38 | 26 39 | 1012 40 | 1026 41 | 1028 42 | -------------------------------------------------------------------------------- /data/bpa/season1/hydro_power_plants_indices.csv: -------------------------------------------------------------------------------- 1 | 1329 2 | 1294 3 | 1708 4 | 1189 5 | 1300 6 | 1712 7 | 1772 8 | 2140 9 | 1038 10 | 1550 11 | 1549 12 | 2194 13 | 1253 14 | 1095 15 | 1112 16 | 1046 17 | 1200 18 | 2170 19 | 638 20 | 707 21 | 611 22 | 91 23 | 2169 24 | 775 25 | 1776 26 | 1097 27 | 190 28 | 195 29 | 162 30 | 161 31 | 1957 32 | 1995 33 | 1577 34 | 31 35 | 14 36 | 782 37 | 88 38 | 1492 39 | 543 40 | 544 41 | 539 42 | 1483 43 | 757 44 | 756 45 | 46 46 | 352 47 | 419 48 | 513 49 | 1139 50 | 755 51 | 754 52 | 337 53 | 339 54 | 336 55 | 2181 56 | 1391 57 | 156 58 | 310 59 | 388 60 | 343 61 | 1480 62 | 38 63 | 63 64 | 51 65 | 480 66 | 491 67 | 1005 68 | 366 69 | 1412 70 | 1420 71 | 42 72 | 1572 73 | 1781 74 | 391 75 | 496 76 | 495 77 | 406 78 | 1444 79 | 1644 80 | 1546 81 | 344 82 | 342 83 | 334 84 | 333 85 | 348 86 | 347 87 | 346 88 | 359 89 | 356 90 | 396 91 | 192 92 | 983 93 | 1006 94 | 910 95 | 882 96 | 2207 97 | 179 98 | 748 99 | 1450 100 | 919 101 | 918 102 | 931 103 | 938 104 | 930 105 | 929 106 | 920 107 | 588 108 | 76 109 | 1489 110 | 1886 111 | 1891 112 | 1888 113 | 1890 114 | 1960 115 | 778 116 | 776 117 | 1955 118 | 2027 119 | 1999 120 | 2026 121 | 1511 122 | 1186 123 | 1314 124 | 1702 125 | 1667 126 | 1515 127 | 1514 128 | 1137 129 | 1063 130 | 1409 131 | 1568 132 | 1713 133 | 1142 134 | -------------------------------------------------------------------------------- /data/bpa/season1/nuclear_power_plants_indices.csv: -------------------------------------------------------------------------------- 1 | 2137 2 | -------------------------------------------------------------------------------- /data/bpa/season1/rampbpa.csv: -------------------------------------------------------------------------------- 1 | 1329,17.7 2 | 1294,24.6 3 | 1708,48 4 | 1189,70 5 | 1300,26.4 6 | 1712,92 7 | 1772,89.448 8 | 2140,1 9 | 2137,280 10 | 1038,2160 11 | 1037,420 12 | 1550,804.81 13 | 1549,810 14 | 2194,5.4 15 | 1253,13.305 16 | 2196,310 17 | 2129,310 18 | 1095,9.0398 19 | 1112,980 20 | 1046,6.5 21 | 1200,6809 22 | 2170,1299.6 23 | 793,310 24 | 1094,310 25 | 72,310 26 | 638,11 27 | 707,59.271 28 | 611,13.1 29 | 91,100 30 | 2169,70 31 | 775,162 32 | 644,310 33 | 857,310 34 | 1776,2456.2 35 | 1780,60 36 | 1110,120 37 | 1097,642 38 | 2048,60 39 | 2131,90 40 | 760,310 41 | 997,60 42 | 1007,60 43 | 186,120 44 | 190,20 45 | 195,26 46 | 162,15 47 | 161,112.28 48 | 1957,87.016 49 | 1995,25.5 50 | 1577,1.6 51 | 31,219.07 52 | 14,1819.7 53 | 1040,310 54 | 782,292.73 55 | 23,310 56 | 88,12.05 57 | 1492,391.5 58 | 543,3.2 59 | 544,27 60 | 539,0.6 61 | 1483,4.44 62 | 757,69.623 63 | 756,227.93 64 | 46,6 65 | 352,2.8 66 | 419,6 67 | 513,1.2 68 | 1139,6.3 69 | 755,131.61 70 | 754,107.87 71 | 337,29 72 | 339,42.6 73 | 336,15 74 | 2181,45.6 75 | 1391,175.47 76 | 156,9.5 77 | 310,3.2 78 | 388,51.5 79 | 343,10.243 80 | 1480,25.08 81 | 21,310 82 | 38,28.6 83 | 63,18.9 84 | 51,1.1 85 | 480,3.2 86 | 487,310 87 | 491,98.7 88 | 130,420 89 | 879,120 90 | 1005,3 91 | 366,11 92 | 1412,140.4 93 | 1420,2.2 94 | 42,109.8 95 | 614,310 96 | 1907,60 97 | 1572,942.66 98 | 1781,763.89 99 | 391,18 100 | 496,2.1 101 | 495,20 102 | 406,17.2 103 | 1292,310 104 | 1497,310 105 | 2177,420 106 | 1283,120 107 | 1496,310 108 | 1444,27.1 109 | 1644,42 110 | 1546,810 111 | 344,18 112 | 342,8.8093 113 | 334,26 114 | 333,33 115 | 348,5.2036 116 | 347,3.8 117 | 346,32 118 | 359,49 119 | 356,10.5 120 | 396,0.75 121 | 192,111.73 122 | 159,90 123 | 174,120 124 | 170,60 125 | 169,60 126 | 1400,70 127 | 1027,60 128 | 27,120 129 | 18,120 130 | 26,90 131 | 983,1092.9 132 | 1006,10 133 | 910,6.4 134 | 882,5.4 135 | 2207,15.4 136 | 179,3.8804 137 | 748,1.2 138 | 1450,8.798 139 | 919,35.5 140 | 918,20.8 141 | 931,18.8 142 | 938,28.378 143 | 930,11.033 144 | 929,51 145 | 920,10.73 146 | 588,1.6 147 | 76,1 148 | 1012,310 149 | 1026,310 150 | 1489,95.946 151 | 1028,310 152 | 1886,20 153 | 1891,35.9 154 | 1888,16 155 | 1890,3.7 156 | 1960,12 157 | 778,70 158 | 776,17.628 159 | 1955,198 160 | 2027,75.864 161 | 1999,51.8 162 | 2026,35.817 163 | 1511,6.6 164 | 1186,28.993 165 | 1314,10 166 | 1702,27.37 167 | 1667,32 168 | 1515,148.24 169 | 1514,1038 170 | 1078,140 171 | 1137,12 172 | 1063,1.6 173 | 1409,150 174 | 1568,9.4 175 | 1713,618.16 176 | 1142,12.9 177 | -------------------------------------------------------------------------------- /run/bpa-season1-gamma1.0.dat: -------------------------------------------------------------------------------- 1 | case ../data/bpa/casedjbpa.mat 2 | #case casedjbpa.m 3 | wind ../data/bpawind.dat 4 | costs ../data/bpa/costbpa.csv 5 | refbus 2209 6 | line_probability_threshold 0.01 7 | gen_probability_threshold 0.1666 8 | logfile casebpa.log 9 | loadscale 1.0 10 | 11 | mvaBase 100 12 | thermalLimitscale 0.9 13 | 14 | hydro_indices ../data/bpa/hydro_power_plants_indices.csv 15 | nuclear_indices ../data/bpa/nuclear_power_plants_indices.csv 16 | coal_indices ../data/bpa/coal_power_plants_indices.csv 17 | gas_indices ../data/bpa/gas_power_plants_indices.csv 18 | ramp_file ../data/bpa/rampbpa.csv 19 | loaded_lines_file ../data/bpa/overload_line_ind.csv 20 | 21 | wind_forecast_file ../data/bpa/season1/bpawind_det_forecast2160.csv 22 | wind_sigma_file ../data/bpa/season1/bpawind_det_sigma2160.csv 23 | load_file ../data/bpa/season1/load2160.csv 24 | hydro_limit_file ../data/bpa/season1/hydro_power_plants2160.csv 25 | 26 | loaded_lines_probability_threshold 0.01 27 | 28 | robust_mean_lower_file ../data/bpa/season1/bpawind_rob_mean_dn2160.csv 29 | robust_mean_upper_file ../data/bpa/season1/bpawind_rob_mean_up2160.csv 30 | robust_sigma_lower_file ../data/bpa/season1/bpawind_rob_sigma_dn2160.csv 31 | robust_sigma_upper_file ../data/bpa/season1/bpawind_rob_sigma_up2160.csv 32 | 33 | robust_budget 1.0 # fraction of wind farms. "false" to use ccopf model 34 | output_matfile ccopf_bpa_simulation_results_season1_gamma1.0.mat 35 | END 36 | --------------------------------------------------------------------------------