diff --git a/.ffmt_cache/hashes b/.ffmt_cache/hashes new file mode 100644 index 0000000000..69bf2d477d --- /dev/null +++ b/.ffmt_cache/hashes @@ -0,0 +1,249 @@ +10009860086781508725 src/simulation/m_sim_helpers.fpp +10103916424136661533 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.YNbWNpe5YF/b/src/common/m_delay_file_access.f90 +10103916424136661533 src/common/m_delay_file_access.f90 +10105209818380589033 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_rhs.fpp +10105209818380589033 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.dhTNdaQgUC/b/src/simulation/m_rhs.fpp +10105209818380589033 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.erX3snVzaV/pr.fpp +10547681541613149381 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.QwIzwEBHeU/b/src/simulation/m_compute_cbc.fpp +10547681541613149381 src/simulation/m_compute_cbc.fpp +10547908418817167772 src/common/m_checker_common.fpp +10971775388782938368 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.wXyGiacHHu/b/src/pre_process/m_initial_condition.fpp +11128781068164813518 src/simulation/m_surface_tension.fpp +1123613300469720145 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.NhWX9QvMiS/b/src/simulation/m_pressure_relaxation.fpp +11247271584116519044 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.5zMHO1bIjC/b/src/common/m_helper.fpp +11247271584116519044 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/common/m_helper.fpp +11296479789568295899 src/post_process/p_main.fpp +11299621811843082331 src/pre_process/m_icpp_patches.fpp +11328367635707741672 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.fRp2cEQ9ib/b/src/pre_process/m_grid.f90 +1152355942436141718 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.yvB87OqER1/b/src/post_process/m_derived_variables.fpp +1162163686405901254 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.IXCiOAmlT9/b/src/simulation/m_bubbles.fpp +1162163686405901254 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.OMiiuUbkm3/pr.fpp +1162163686405901254 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_bubbles.fpp +1162163686405901254 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.iJz2nMUb3Q/b/src/simulation/m_bubbles.fpp +11671852064421512331 src/simulation/m_bubbles.fpp +1177935745597610133 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.KsaCosfP7l/b/src/simulation/m_surface_tension.fpp +11799777124238319529 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.p6vSsTKmTQ/b/src/common/include/ExtrusionHardcodedIC.fpp +11844429005742744406 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.p40EgjuOZ4/b/src/common/include/macros.fpp +11844429005742744406 src/common/include/macros.fpp +11845929787624151121 src/simulation/m_igr.fpp +11858275667014895903 src/pre_process/m_perturbation.fpp +11886921327637192006 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.rNk4nDDuiA/b/src/pre_process/m_assign_variables.fpp +11928143073477354808 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.ApVsay2rl0/b/src/common/m_chemistry.fpp +11928143073477354808 src/common/m_chemistry.fpp +12464738087200294908 src/pre_process/m_initial_condition.fpp +12545196112158418286 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.4QCea7ntGd/b/src/common/m_constants.fpp +12545196112158418286 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/common/m_constants.fpp +12545196112158418286 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.pHQFxfnpka/pr.fpp +12614301032225053702 src/simulation/m_qbmm.fpp +12776587850356873970 src/simulation/m_pressure_relaxation.fpp +1298984555937275901 src/pre_process/p_main.f90 +1302629992983287045 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.jlX0OxaJWC/b/src/common/include/2dHardcodedIC.fpp +13038648724116207061 src/simulation/m_start_up.fpp +13116240964782596330 src/simulation/m_muscl.fpp +13160620054921289456 src/simulation/m_ibm.fpp +13371470821044798149 src/simulation/m_acoustic_src.fpp +13377292145430364954 src/simulation/m_mpi_proxy.fpp +13379422254557003055 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.tQPN4tJmBS/b/src/common/include/parallel_macros.fpp +13379422254557003055 src/common/include/parallel_macros.fpp +13404712065072015994 src/common/include/1dHardcodedIC.fpp +13585296417644820871 src/simulation/m_weno.fpp +13737474862947549962 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.wBcCWjwdfh/b/src/common/include/1dHardcodedIC.fpp +13778436859709422582 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.ZQxwzOCdYP/b/src/pre_process/p_main.f90 +13798070750203827352 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.9oWQDBRzDO/b/src/simulation/m_data_output.fpp +13798070750203827352 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.BPphaiI0iT/b/src/simulation/m_data_output.fpp +13798070750203827352 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.FyLr7CvpOg/b/src/simulation/m_data_output.fpp +13798070750203827352 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_data_output.fpp +13798070750203827352 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.czvPHMadlf/b/src/simulation/m_data_output.fpp +13798070750203827352 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.l4geGiBejN/b/src/simulation/m_data_output.fpp +13798070750203827352 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.mAWaP5Yqf6/pr.fpp +13798070750203827352 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.nW8Pq43Vvf/b/src/simulation/m_data_output.fpp +13920301627764782241 src/common/m_nvtx.f90 +14047356244834746872 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.xVza69symx/b/src/simulation/m_hyperelastic.fpp +14218853748338101619 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.F8v3PuEaEB/b/src/common/m_checker_common.fpp +14257682203105278348 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.CZPMCJMBJW/b/src/common/m_phase_change.fpp +14264799885104244614 src/common/m_mpi_common.fpp +14438687236384090363 src/simulation/m_bubbles_EL_kernels.fpp +14450336682570067792 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.1BExP6R8f9/b/src/simulation/m_acoustic_src.fpp +14551696709150228093 src/common/m_phase_change.fpp +14636237826800124746 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.1geSh90r6o/b/src/pre_process/m_global_parameters.fpp +14636237826800124746 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.1nYoCE2Z93/b/src/pre_process/m_global_parameters.fpp +14636237826800124746 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.CF4oy4IF0z/b/src/pre_process/m_global_parameters.fpp +14636237826800124746 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.HVIH7qJvcV/b/src/pre_process/m_global_parameters.fpp +14636237826800124746 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.PjipPs9F6i/b/src/pre_process/m_global_parameters.fpp +14636237826800124746 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.QrrnxH74mE/pr.fpp +14636237826800124746 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/pre_process/m_global_parameters.fpp +14636237826800124746 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.ketcpZUBhe/b/src/pre_process/m_global_parameters.fpp +14636237826800124746 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.kfAB4MRB1T/b/src/pre_process/m_global_parameters.fpp +14670547982328888582 src/post_process/m_derived_variables.fpp +14739644014569295158 src/common/include/SharedHardcoded.fpp +14954376616734417912 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.5wobk7aEG0/b/src/simulation/p_main.fpp +14999475271112169381 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.zed9MGw8lu/b/src/common/include/acc_macros.fpp +14999475271112169381 src/common/include/acc_macros.fpp +15049314966727887552 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.foNVQzeyQX/b/src/pre_process/m_simplex_noise.fpp +15049314966727887552 src/pre_process/m_simplex_noise.fpp +15110474130912937443 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.EOjTtcOp00/b/src/post_process/m_checker.fpp +15317541443631750607 src/simulation/m_bubbles_EE.fpp +15343341342992294043 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.ZE1xLrrD4M/b/src/simulation/m_body_forces.fpp +15508824445404703824 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.DJdV0uDXkk/pr.fpp +15508824445404703824 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/common/m_helper_basic.fpp +15508824445404703824 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.dpV8UkalaA/b/src/common/m_helper_basic.fpp +15573111593524903869 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.7rXfBv7i7f/b/src/simulation/m_qbmm.fpp +15615432817640526542 src/post_process/m_checker.fpp +15809629697745920208 src/simulation/m_body_forces.fpp +15811265556360623843 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.6h5PDEc3xX/b/src/simulation/include/inline_capillary.fpp +15811265556360623843 src/simulation/include/inline_capillary.fpp +15874659916346725348 src/pre_process/m_data_output.fpp +15941699165887750367 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.S0h68IhVLd/b/src/common/m_precision_select.f90 +16277666294786574062 src/simulation/m_viscous.fpp +16325267463833969784 src/pre_process/m_start_up.fpp +16397783534027655847 src/simulation/m_checker.fpp +16590815127468205830 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.wqmnQUCDbi/b/src/common/include/omp_macros.fpp +16590815127468205830 src/common/include/omp_macros.fpp +16613830963758284333 src/common/include/2dHardcodedIC.fpp +16666864254209086704 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.4QVjyhlBbR/b/src/simulation/m_ib_patches.fpp +16666864254209086704 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.EKTuvrJmZf/pr.fpp +16666864254209086704 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_ib_patches.fpp +16716924334175372818 src/simulation/m_global_parameters.fpp +16819660696315222173 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.wZ5g7DS74M/b/src/simulation/include/inline_riemann.fpp +16819660696315222173 src/simulation/include/inline_riemann.fpp +16863576169260976215 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.BtoC8sntqC/b/src/common/m_boundary_common.fpp +16863576169260976215 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/common/m_boundary_common.fpp +16863576169260976215 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.WV8J0UVWWc/pr.fpp +16863576169260976215 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.tPbHdHuGzL/b/src/common/m_boundary_common.fpp +17150360143499547248 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.GwPH1PymWU/b/src/pre_process/m_mpi_proxy.fpp +17150360143499547248 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/pre_process/m_mpi_proxy.fpp +17374991166589206306 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.CKefDZblI8/b/src/simulation/m_muscl.fpp +17374991166589206306 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_muscl.fpp +17374991166589206306 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.bThVXwVjHQ/pr.fpp +17383712883767117007 src/simulation/m_derived_variables.fpp +17475717397114845816 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.7vhQq2kOXS/b/src/pre_process/m_check_ib_patches.fpp +17489851833420935241 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/pre_process/m_start_up.fpp +17489851833420935241 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.jKReiOTmE3/pr.fpp +17489851833420935241 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.pN7wf0OOXk/b/src/pre_process/m_start_up.fpp +17521335209975820849 src/post_process/m_mpi_proxy.fpp +17578011942315344381 src/common/m_helper.fpp +17729534019838315074 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.5q1Y270gxY/b/src/post_process/m_global_parameters.fpp +17729534019838315074 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/post_process/m_global_parameters.fpp +17729534019838315074 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.VmGqKfWL4e/b/src/post_process/m_global_parameters.fpp +17729534019838315074 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.fEo4jGidK0/pr.fpp +17747955368322546147 src/simulation/m_time_steppers.fpp +17786640510670779223 src/common/m_derived_types.fpp +17939937579085231691 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.1FlGgFgoLk/b/src/simulation/m_riemann_solvers.fpp +17952081853197839750 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.FM3hyTJcC1/b/src/post_process/p_main.fpp +18080888037678917285 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UOicaksnAM/b/src/common/m_variables_conversion.fpp +18166547160227944552 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.04SRuU4uDG/b/src/simulation/m_sim_helpers.fpp +18166547160227944552 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UH5isBDNLP/pr.fpp +18166547160227944552 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_sim_helpers.fpp +18226449463280282712 src/simulation/m_rhs.fpp +18308153827535525888 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.LcZmBtbXI5/b/src/simulation/m_time_steppers.fpp +18308153827535525888 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.TMdfrAiUad/b/src/simulation/m_time_steppers.fpp +18308153827535525888 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_time_steppers.fpp +18308153827535525888 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.zBXQoIJ9Ns/pr.fpp +18424647052757242046 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.90F2SuKdN3/b/src/simulation/m_igr.fpp +1921723504088853053 src/simulation/m_hypoelastic.fpp +2065425623481551924 src/common/m_boundary_common.fpp +2089934286629799065 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_bubbles_EE.fpp +2089934286629799065 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.ehVOiqSEna/b/src/simulation/m_bubbles_EE.fpp +2089934286629799065 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.mGbGtZnmMH/pr.fpp +2092302292714238550 src/pre_process/m_checker.fpp +2179692337769865707 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/common/m_derived_types.fpp +2179692337769865707 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.ahYsbo4OkN/b/src/common/m_derived_types.fpp +2179692337769865707 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.u43jNT6Y9N/pr.fpp +2179692337769865707 /tmp/pr_derived.fpp +2180900767736986011 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.2wyV79dZFt/pr.fpp +2180900767736986011 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.9ywat4IE5E/b/src/simulation/m_ibm.fpp +2180900767736986011 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_ibm.fpp +2238355401608193277 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.Xeee1w2Np4/b/src/post_process/m_start_up.fpp +2246088494097541240 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.6XVxKq1Gls/b/src/simulation/m_mpi_proxy.fpp +2246088494097541240 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_mpi_proxy.fpp +2246088494097541240 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.bFnMb9Yj6X/pr.fpp +2275015924369440500 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.GyRQmToKip/b/src/simulation/m_bubbles_EL.fpp +2275015924369440500 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.QWfhmzAUhW/b/src/simulation/m_bubbles_EL.fpp +2275015924369440500 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_bubbles_EL.fpp +2275015924369440500 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.sq9eLcwlqR/pr.fpp +2431245550782554100 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.IwOd4FjXKf/b/src/simulation/m_viscous.fpp +2525268250784412532 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.2moDi289m2/b/src/simulation/m_compute_levelset.fpp +2525268250784412532 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_compute_levelset.fpp +2525268250784412532 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.fNlW6mq81s/pr.fpp +2551148861500766043 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.61vHeCBp3z/b/src/common/m_nvtx.f90 +3296338549351377009 src/post_process/m_data_input.f90 +330369965658929155 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.l3vlWwFtc6/b/src/pre_process/m_checker.fpp +3322818355154981622 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.zxtBRdLiDM/b/src/simulation/m_derived_variables.fpp +3474524733030028692 src/pre_process/m_grid.f90 +3586268134361254209 src/common/m_variables_conversion.fpp +3852216218768625740 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.ON0VZhypev/b/src/common/m_compile_specific.f90 +3852216218768625740 src/common/m_compile_specific.f90 +419528971510258904 src/common/m_constants.fpp +4271870002582174631 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.h1I7f50x8l/b/src/post_process/m_mpi_proxy.fpp +4316649851528138914 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.vJ4faZHES0/b/src/post_process/m_data_input.f90 +4353656613440585819 src/post_process/m_data_output.fpp +4417977747387015039 src/simulation/m_bubbles_EL.fpp +47037120222980462 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.oFDAmDeZN7/b/src/simulation/m_fftw.fpp +4769787692054280401 src/common/m_precision_select.f90 +4898418582330870284 src/simulation/m_data_output.fpp +4993379909229078812 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.RprlXGCudJ/b/src/simulation/m_checker.fpp +5179107110711951524 src/common/m_model.fpp +5290618235356275088 src/pre_process/m_assign_variables.fpp +5434153436692493302 src/post_process/m_start_up.fpp +5684204796802451846 src/simulation/m_cbc.fpp +5725362251714205830 src/post_process/m_global_parameters.fpp +5783893076695788858 src/pre_process/m_check_ib_patches.fpp +5871828278470799827 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.hpU6ltVEIS/b/src/syscheck/syscheck.fpp +5871828278470799827 src/syscheck/syscheck.fpp +5928207121067860413 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.mpy7h1Q0k4/b/src/common/m_model.fpp +6137784461014282246 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.21jzdeIFZA/b/src/common/include/3dHardcodedIC.fpp +6137784461014282246 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.Ngtiv1vOCD/b/src/common/include/3dHardcodedIC.fpp +6137784461014282246 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/common/include/3dHardcodedIC.fpp +6137784461014282246 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.aS6jzEPk9Y/b/src/common/include/3dHardcodedIC.fpp +6137784461014282246 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.b91atfZWFM/pr.fpp +6137784461014282246 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.ox5RwzwCDq/b/src/common/include/3dHardcodedIC.fpp +6137784461014282246 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.uHW6w2dKmd/b/src/common/include/3dHardcodedIC.fpp +6137784461014282246 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.unuGVybPf5/b/src/common/include/3dHardcodedIC.fpp +6240714802147004944 src/common/include/shared_parallel_macros.fpp +6276978915188096958 src/common/include/3dHardcodedIC.fpp +68593444489471372 src/simulation/m_compute_levelset.fpp +6938669613291679776 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.4o4LVAkqMP/b/src/common/m_finite_differences.fpp +6938669613291679776 src/common/m_finite_differences.fpp +732149268206108348 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.2J0Z5N2qcF/b/src/simulation/m_weno.fpp +732149268206108348 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.2QXPygy8q1/pr_1646504.fpp +732149268206108348 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.D9KOPlN1LD/pr.fpp +732149268206108348 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_weno.fpp +732149268206108348 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.xwrbhmKSBn/b/src/simulation/m_weno.fpp +7463753986237902141 src/common/m_helper_basic.fpp +7530723425281110009 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.A857NqLisR/b/src/simulation/m_cbc.fpp +7580365803335695134 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.WMlJs7jEPw/b/src/simulation/m_hypoelastic.fpp +7723221865542041495 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.svITM8tMXS/b/src/pre_process/m_icpp_patches.fpp +7737322002952828776 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_start_up.fpp +7737322002952828776 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.aYeUsTe6vQ/b/src/simulation/m_start_up.fpp +7737322002952828776 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.mGRII3r92Q/pr.fpp +8042763174988148227 src/simulation/m_riemann_solvers.fpp +8093344263636711422 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.CtULDFfiWw/pr.fpp +8093344263636711422 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_bubbles_EL_kernels.fpp +8093344263636711422 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.u1zFhDbdg8/b/src/simulation/m_bubbles_EL_kernels.fpp +8258277022714838383 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.7MRd899dQW/b/src/simulation/m_global_parameters.fpp +8258277022714838383 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.Du4hJUphgy/b/src/simulation/m_global_parameters.fpp +8258277022714838383 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.M29f3SMb5C/pr.fpp +8258277022714838383 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/simulation/m_global_parameters.fpp +8258277022714838383 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.cJ15SrprHl/b/src/simulation/m_global_parameters.fpp +8258277022714838383 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.yxQ0X6fv0o/b/src/simulation/m_global_parameters.fpp +8373688306336592140 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.tVW0Ag4HFB/b/src/pre_process/m_data_output.fpp +8639686218598077333 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.fo85j8vdro/b/src/post_process/m_data_output.fpp +8755329155192764099 src/pre_process/m_global_parameters.fpp +8835068673407070922 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.qfglItrwDK/b/src/pre_process/m_boundary_conditions.fpp +8835068673407070922 src/pre_process/m_boundary_conditions.fpp +8849574993014605176 src/simulation/m_ib_patches.fpp +8870602128241043159 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.V53atDEagj/b/src/pre_process/m_check_patches.fpp +8978802987682839827 src/pre_process/m_mpi_proxy.fpp +919624630099600931 src/common/include/ExtrusionHardcodedIC.fpp +9370663205287462789 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.zoRoHcwA35/b/src/pre_process/m_perturbation.fpp +9419299607787709748 src/simulation/p_main.fpp +9606486790139625748 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.QCod6CiPeT/b/src/common/m_mpi_common.fpp +9606486790139625748 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.UKcnsjaI4a/b/src/common/m_mpi_common.fpp +9606486790139625748 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.Z9FK1bV094/b/src/common/m_mpi_common.fpp +9606486790139625748 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.dF9qaNUJjz/b/src/common/m_mpi_common.fpp +9606486790139625748 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.j1H2hZqcGd/pr.fpp +9606486790139625748 /storage/home/hcoda1/6/sbryngelson3/tmp_claude/tmp.sBmtXp00OQ/b/src/common/m_mpi_common.fpp +9634210289819551950 src/pre_process/m_check_patches.fpp +9812035701611855679 /tmp/test_ffmt.fpp +9864053594660500546 src/simulation/m_fftw.fpp +9961309992593322894 src/simulation/m_hyperelastic.fpp diff --git a/docs/documentation/case.md b/docs/documentation/case.md index ecdeb786d4..9e10485f58 100644 --- a/docs/documentation/case.md +++ b/docs/documentation/case.md @@ -266,6 +266,16 @@ Setup: Only requires specifying `init_dir` and filename pattern via `zeros_defau Implementation: All variables and file handling are managed in `src/common/include/ExtrusionHardcodedIC.fpp` with no manual grid configuration needed. Usage: Ideal for initializing simulations from lower-dimensional solutions, enabling users to add perturbations or modifications to the base extruded fields for flow instability studies. +The following parameters support hardcoded initial conditions that read interface data from files: + +| Parameter | Type | Description | +| ---: | :---: | :--- | +| `interface_file` | String | Path to interface geometry data file | +| `normFac` | Real | Interface normalization factor | +| `normMag` | Real | Interface normal magnitude | +| `g0_ic` | Real | Initial gas volume fraction for interfacial IC | +| `p0_ic` | Real | Initial pressure for interfacial IC | + #### Parameter Descriptions - `num_patches` defines the total number of patches defined in the domain. @@ -349,7 +359,7 @@ Definitions for currently implemented immersed boundary patch types are listed i - `c`, `t`, `p`, and `m` specify the parameters for a NACA airfoil. `m` is the maximum camber, `p` is the location of maximum camber, `c` is the coord length, and `t` is the thickness. -Additional details on this specification can be found in [NACA airfoil](https://en.wikipedia.org/wiki/NACA_airfoil). +Additional details on this specification can be found in [The Naca Airfoil Series](https://web.stanford.edu/~cantwell/AA200_Course_Material/The%20NACA%20airfoil%20series.pdf) - `slip` applies a slip boundary to the surface of the patch if true and a no-slip boundary condition to the surface if false. diff --git a/examples/2D_moving_lag_bubs/case.py b/examples/2D_moving_lag_bubs/case.py new file mode 100644 index 0000000000..8fe7ef8107 --- /dev/null +++ b/examples/2D_moving_lag_bubs/case.py @@ -0,0 +1,202 @@ +#!/usr/bin/env python3 +import argparse +import json +import math + +import numpy as np + +# Domain extents +xb = -2 +xe = 2 +yb = -2 +ye = 2 +cw = 0.05 # Characteristic width for 3D bubble cloud + +# Reference values for nondimensionalization +L0 = 1e-3 # length - m (min bubble radius) +rho0 = 950 # density - kg/m3 +c0 = 1449.0 # speed of sound - m/s +p0 = rho0 * c0 * c0 # pressure - Pa +T0 = 298 # temperature - K + +# Host properties (water) +gamma_host = 6.12 # Specific heat ratio +pi_inf_host = 3.43e8 # Stiffness - Pa +mu_host = 0.001 +c_host = 1449.0 # speed of sound - m/s +rho_host = 950 # density kg/m3 +T_host = 298 # temperature K + +# Lagrangian bubbles' properties +R_uni = 8314 # Universal gas constant - J/kmol/K +MW_g = 28.0 # Molar weight of the gas - kg/kmol +MW_v = 18.0 # Molar weight of the vapor - kg/kmol +gamma_g = 1.4 # Specific heat ratio of the gas +gamma_v = 1.333 # Specific heat ratio of the vapor +pv = 2350 # Vapor pressure of the host - Pa +cp_g = 1.0e3 # Specific heat of the gas - J/kg/K +cp_v = 2.1e3 # Specific heat of the vapor - J/kg/K +k_g = 0.025 # Thermal conductivity of the gas - W/m/K +k_v = 0.02 # Thermal conductivity of the vapor - W/m/K +diffVapor = 2.5e-5 # Diffusivity coefficient of the vapor - m2/s +sigBubble = 0.020 # Surface tension of the bubble - N/m +mu_g = 1.48e-5 +rho_g = 1 # density kg/m3 + +# Nondimmensionalization of domain size +xb = xb / L0 +xe = xe / L0 +yb = yb / L0 +ye = ye / L0 +cw = cw / L0 + +# patm = 1.0e05 # Atmospheric pressure - Pa +patm = 1e5 +g0 = 9.81 / (c0 * c0 / L0) + +# Patch prim vars +rho_host = rho_host / rho0 +rho_g = rho_g / rho0 +pres = patm / p0 + +# Timing +tend = 0.004 * c0 / L0 +tsave = tend / 50 # save time - sec + +c_host = math.sqrt(gamma_host * (pres + pi_inf_host / p0) / rho_host) +dx = (xe - xb) / (199 + 1) +dt = 0.05 * dx / c_host + +t_step_stop = int(tend / dt) +t_step_save = int(t_step_stop / 100) + +eps = 1e-8 + +# Configuration case dictionary +data = { + # Logistics + "run_time_info": "T", + # Computational Domain + "x_domain%beg": xb, + "x_domain%end": xe, + "y_domain%beg": yb, + "y_domain%end": ye, + "m": 199, + "n": 199, + "p": 0, + "cyl_coord": "F", + "dt": 1, + "t_step_start": 0, + "t_step_stop": 6000, + "t_step_save": 60, + "adap_dt": "T", + "adap_dt_max_iters": 1000, + # Simulation Algorithm + "model_eqns": 2, + "alt_soundspeed": "F", + "mixture_err": "F", + "mpp_lim": "T", + "time_stepper": 3, + "weno_order": 5, + "mapped_weno": "T", + "mp_weno": "T", + "avg_state": 2, + "weno_eps": 1e-16, + "riemann_solver": 2, + "wave_speeds": 1, + "bc_x%beg": -1, + "bc_x%end": -1, + "bc_y%beg": -1, + "bc_y%end": -1, + "num_patches": 2, + "num_fluids": 2, + # Database Structure Parameters + "format": 1, + "precision": 2, + "prim_vars_wrt": "T", + "parallel_io": "T", + "lag_db_wrt": "T", + "lag_pres_wrt": "T", + # Fluid Parameters Host + "fluid_pp(1)%gamma": 1.0 / (gamma_host - 1.0), + "fluid_pp(1)%pi_inf": gamma_host * (pi_inf_host / p0) / (gamma_host - 1.0), + # Fluid Parameters Gas + "fluid_pp(2)%gamma": 1.0 / (gamma_g - 1.0), + "fluid_pp(2)%pi_inf": 0.0e00, + # Bubble parameters + "bub_pp%R0ref": 1.0, + "bub_pp%p0ref": 1.0, + "bub_pp%rho0ref": 1.0, + "bub_pp%T0ref": 1.0, + "bub_pp%ss": sigBubble / (rho0 * L0 * c0 * c0), + "bub_pp%pv": pv / p0, + "bub_pp%vd": diffVapor / (L0 * c0), + "bub_pp%mu_l": mu_host / (rho0 * L0 * c0), + "bub_pp%gam_v": gamma_v, + "bub_pp%gam_g": gamma_g, + "bub_pp%M_v": MW_v, + "bub_pp%M_g": MW_g, + "bub_pp%k_v": k_v * (T0 / (L0 * rho0 * c0 * c0 * c0)), + "bub_pp%k_g": k_g * (T0 / (L0 * rho0 * c0 * c0 * c0)), + "bub_pp%cp_v": cp_v * (T0 / (c0 * c0)), + "bub_pp%cp_g": cp_g * (T0 / (c0 * c0)), + "bub_pp%R_v": (R_uni / MW_v) * (T0 / (c0 * c0)), + "bub_pp%R_g": (R_uni / MW_g) * (T0 / (c0 * c0)), + # Viscosity + "viscous": "T", + "fluid_pp(1)%Re(1)": 1.0 / (mu_host / (rho0 * c0 * L0)), + "fluid_pp(2)%Re(1)": 1.0 / (mu_g / (rho0 * c0 * L0)), + # Patch for background flow + "patch_icpp(1)%geometry": 3, + "patch_icpp(1)%x_centroid": (xb + xe) / 2, + "patch_icpp(1)%y_centroid": (yb + ye) / 2, + "patch_icpp(1)%length_x": (xe - xb), + "patch_icpp(1)%length_y": (ye - yb), + "patch_icpp(1)%vel(1)": 0, + "patch_icpp(1)%vel(2)": 0, + "patch_icpp(1)%pres": pres, + "patch_icpp(1)%alpha_rho(1)": (1 - eps) * rho_host, + "patch_icpp(1)%alpha_rho(2)": eps * rho_g, + "patch_icpp(1)%alpha(1)": 1 - eps, + "patch_icpp(1)%alpha(2)": eps, + # High pressure + "patch_icpp(2)%geometry": 2, + "patch_icpp(2)%alter_patch(1)": "T", + "patch_icpp(2)%smoothen": "T", + "patch_icpp(2)%smooth_patch_id": 1, + "patch_icpp(2)%smooth_coeff": 0.5, + "patch_icpp(2)%x_centroid": 0, + "patch_icpp(2)%y_centroid": 0, + "patch_icpp(2)%radius": 0.2 / L0, + "patch_icpp(2)%vel(1)": 0, + "patch_icpp(2)%vel(2)": 0, + "patch_icpp(2)%pres": 10 * pres, + "patch_icpp(2)%alpha_rho(1)": (1 - eps) * rho_host, + "patch_icpp(2)%alpha_rho(2)": eps * rho_g, + "patch_icpp(2)%alpha(1)": 1 - eps, + "patch_icpp(2)%alpha(2)": eps, + # Lagrangian Bubbles + "bubbles_lagrange": "T", + "fd_order": 4, + "bubble_model": 2, # (0) Particle (2) KM (3) RP + "thermal": 3, + "polytropic": "F", + "lag_params%nBubs_glb": 5000, # Max number of bubbles + "lag_params%vel_model": 2, + "lag_params%drag_model": 1, + "lag_params%solver_approach": 2, + "lag_params%cluster_type": 2, + "lag_params%pressure_corrector": "F", + "lag_params%smooth_type": 1, + "lag_params%epsilonb": 1.0, + "lag_params%valmaxvoid": 0.9, + "lag_params%write_bubbles": "T", + "lag_params%write_bubbles_stats": "T", + "lag_params%write_void_evol": "T", + "lag_params%charwidth": cw, + "lag_params%charNz": 10, +} + +mods = {} + +print(json.dumps({**data, **mods}, indent=4)) diff --git a/examples/3D_lagrange_shbubcollapse/case.py b/examples/3D_lagrange_shbubcollapse/case.py index 73e0b88f69..d78095b587 100644 --- a/examples/3D_lagrange_shbubcollapse/case.py +++ b/examples/3D_lagrange_shbubcollapse/case.py @@ -155,6 +155,7 @@ "lag_params%valmaxvoid": 0.9, "lag_params%write_bubbles": "F", "lag_params%write_bubbles_stats": "F", + "lag_params%write_void_evol": "T", # Bubble parameters "bub_pp%R0ref": 1.0, "bub_pp%p0ref": 1.0, diff --git a/examples/3D_moving_lag_particles/case.py b/examples/3D_moving_lag_particles/case.py new file mode 100644 index 0000000000..aac411908c --- /dev/null +++ b/examples/3D_moving_lag_particles/case.py @@ -0,0 +1,199 @@ +#!/usr/bin/env python3 +import argparse +import json +import math + +import numpy as np + +# Domain extents +xb = -2 +xe = 2 +yb = -2 +ye = 2 +zb = -2 +ze = 2 + +# Reference values for nondimensionalization +L0 = 1e-3 # length - m (min bubble radius) +rho0 = 950 # density - kg/m3 +c0 = 1449.0 # speed of sound - m/s +p0 = rho0 * c0 * c0 # pressure - Pa +T0 = 298 # temperature - K + +# Host properties (water) +gamma_host = 6.12 # Specific heat ratio +pi_inf_host = 3.43e8 # Stiffness - Pa +mu_host = 0.001 +c_host = 1449.0 # speed of sound - m/s +rho_host = 950 # density kg/m3 +T_host = 298 # temperature K + +# Lagrangian bubbles' properties +R_uni = 8314 # Universal gas constant - J/kmol/K +MW_g = 28.0 # Molar weight of the gas - kg/kmol +MW_v = 18.0 # Molar weight of the vapor - kg/kmol +gamma_g = 1.4 # Specific heat ratio of the gas +gamma_v = 1.333 # Specific heat ratio of the vapor +pv = 2350 # Vapor pressure of the host - Pa +cp_g = 1.0e3 # Specific heat of the gas - J/kg/K +cp_v = 2.1e3 # Specific heat of the vapor - J/kg/K +k_g = 0.025 # Thermal conductivity of the gas - W/m/K +k_v = 0.02 # Thermal conductivity of the vapor - W/m/K +diffVapor = 2.5e-5 # Diffusivity coefficient of the vapor - m2/s +sigBubble = 0.020 # Surface tension of the bubble - N/m +mu_g = 1.48e-5 +rho_g = 1 # density kg/m3 + +# Nondimmensionalization of domain size +xb = xb / L0 +xe = xe / L0 +yb = yb / L0 +ye = ye / L0 +zb = zb / L0 +ze = ze / L0 + +# patm = 1.0e05 # Atmospheric pressure - Pa +patm = 1e5 +g0 = 9.81 / (c0 * c0 / L0) + +# Patch prim vars +rho_host = rho_host / rho0 +rho_g = rho_g / rho0 +pres = patm / p0 + +# Timing +tend = 0.01 * c0 / L0 +tsave = tend / 50 # save time - sec +dt = (tend / 2000) * c0 / L0 + +# Configuration case dictionary +data = { + # Logistics + "run_time_info": "T", + # Computational Domain + "x_domain%beg": xb, + "x_domain%end": xe, + "y_domain%beg": yb, + "y_domain%end": ye, + "z_domain%beg": zb, + "z_domain%end": ze, + "m": 199, + "n": 199, + "p": 199, + "dt": 1.0, + "t_step_start": 0, + "t_step_stop": 10000, + "t_step_save": 100, + # Simulation Algorithm + "model_eqns": 2, + "alt_soundspeed": "F", + "mixture_err": "F", + "mpp_lim": "T", + "time_stepper": 3, + "weno_order": 5, + "mapped_weno": "T", + "mp_weno": "F", + "avg_state": 2, + "weno_eps": 1e-16, + "riemann_solver": 2, + "wave_speeds": 1, + "bc_x%beg": -1, + "bc_x%end": -1, + "bc_y%beg": -1, + "bc_y%end": -1, + "bc_z%beg": -1, + "bc_z%end": -1, + "num_patches": 2, + "num_fluids": 2, + # Database Structure Parameters + "format": 1, + "precision": 2, + "prim_vars_wrt": "T", + "parallel_io": "T", + "lag_db_wrt": "T", + "lag_rad_wrt": "T", + # Fluid Parameters Host + "fluid_pp(1)%gamma": 1.0 / (gamma_host - 1.0), + "fluid_pp(1)%pi_inf": gamma_host * (pi_inf_host / p0) / (gamma_host - 1.0), + # Fluid Parameters Gas + "fluid_pp(2)%gamma": 1.0 / (gamma_g - 1.0), + "fluid_pp(2)%pi_inf": 0.0e00, + # Bubble parameters + "bub_pp%R0ref": 1.0, + "bub_pp%p0ref": 1.0, + "bub_pp%rho0ref": 1.0, + "bub_pp%T0ref": 1.0, + "bub_pp%ss": sigBubble / (rho0 * L0 * c0 * c0), + "bub_pp%pv": pv / p0, + "bub_pp%vd": diffVapor / (L0 * c0), + "bub_pp%mu_l": mu_host / (rho0 * L0 * c0), + "bub_pp%gam_v": gamma_v, + "bub_pp%gam_g": gamma_g, + "bub_pp%M_v": MW_v, + "bub_pp%M_g": MW_g, + "bub_pp%k_v": k_v * (T0 / (L0 * rho0 * c0 * c0 * c0)), + "bub_pp%k_g": k_g * (T0 / (L0 * rho0 * c0 * c0 * c0)), + "bub_pp%cp_v": cp_v * (T0 / (c0 * c0)), + "bub_pp%cp_g": cp_g * (T0 / (c0 * c0)), + "bub_pp%R_v": (R_uni / MW_v) * (T0 / (c0 * c0)), + "bub_pp%R_g": (R_uni / MW_g) * (T0 / (c0 * c0)), + # Viscosity + "viscous": "T", + "fluid_pp(1)%Re(1)": 1.0 / (mu_host / (rho0 * c0 * L0)), + "fluid_pp(2)%Re(1)": 1.0 / (mu_g / (rho0 * c0 * L0)), + # Patch for background flow + "patch_icpp(1)%geometry": 9, + "patch_icpp(1)%x_centroid": (xb + xe) / 2, + "patch_icpp(1)%y_centroid": (yb + ye) / 2, + "patch_icpp(1)%z_centroid": (zb + ze) / 2, + "patch_icpp(1)%length_x": (xe - xb), + "patch_icpp(1)%length_y": (ye - yb), + "patch_icpp(1)%length_z": (ze - zb), + "patch_icpp(1)%vel(1)": 0, + "patch_icpp(1)%vel(2)": 0, + "patch_icpp(1)%vel(3)": 0, + "patch_icpp(1)%pres": pres, + "patch_icpp(1)%alpha_rho(1)": rho_host, + "patch_icpp(1)%alpha_rho(2)": rho_g, + "patch_icpp(1)%alpha(1)": 1, + "patch_icpp(1)%alpha(2)": 0, + # High pressure + "patch_icpp(2)%geometry": 8, + "patch_icpp(2)%alter_patch(1)": "T", + "patch_icpp(2)%x_centroid": 0, # 1.15/L0, + "patch_icpp(2)%y_centroid": 0, # 0.33/L0, + "patch_icpp(2)%z_centroid": 0, # 0.33/L0, + "patch_icpp(2)%radius": 0.2 / L0, + "patch_icpp(2)%vel(1)": 0, + "patch_icpp(2)%vel(2)": 0, + "patch_icpp(2)%vel(3)": 0, + "patch_icpp(2)%pres": 20 * pres, + "patch_icpp(2)%alpha_rho(1)": rho_host, + "patch_icpp(2)%alpha_rho(2)": rho_g, + "patch_icpp(2)%alpha(1)": 1, + "patch_icpp(2)%alpha(2)": 0, + # Lagrangian Bubbles + "bubbles_lagrange": "T", + "fd_order": 4, + "bubble_model": 2, + "thermal": 3, + "polytropic": "F", + "adap_dt": "T", + "adap_dt_max_iters": 500, + "lag_params%nBubs_glb": 10000, + "lag_params%vel_model": 2, + "lag_params%drag_model": 1, + "lag_params%solver_approach": 2, + "lag_params%cluster_type": 1, + "lag_params%pressure_corrector": "F", + "lag_params%smooth_type": 1, + "lag_params%epsilonb": 1.0, + "lag_params%valmaxvoid": 0.9, + "lag_params%write_bubbles": "T", + "lag_params%write_bubbles_stats": "T", + "lag_params%write_void_evol": "T", +} + +mods = {} + +print(json.dumps({**data, **mods}, indent=4)) diff --git a/src/common/include/2dHardcodedIC.fpp b/src/common/include/2dHardcodedIC.fpp index b2752228f0..7f233320da 100644 --- a/src/common/include/2dHardcodedIC.fpp +++ b/src/common/include/2dHardcodedIC.fpp @@ -23,8 +23,10 @@ ! Volume Fractions q_prim_vf(advxb)%sf(i, j, 0) = eps q_prim_vf(advxe)%sf(i, j, 0) = 1._wp - eps + ! Denssities q_prim_vf(contxb)%sf(i, j, 0) = eps*1000._wp q_prim_vf(contxe)%sf(i, j, 0) = (1._wp - eps)*1._wp + ! Pressure q_prim_vf(E_idx)%sf(i, j, 0) = 1000._wp end if case (202) ! Gresho vortex (Gouasmi et al 2022 JCP) diff --git a/src/common/include/3dHardcodedIC.fpp b/src/common/include/3dHardcodedIC.fpp index ec63047d72..28cfac3b39 100644 --- a/src/common/include/3dHardcodedIC.fpp +++ b/src/common/include/3dHardcodedIC.fpp @@ -6,61 +6,128 @@ ! IGR Jets Arrays to stor position and radii of jets from input file real(wp), dimension(:), allocatable :: y_th_arr, z_th_arr, r_th_arr ! Variables to describe initial condition of jet - real(wp) :: r, ux_th, ux_am, p_th, p_am, rho_th, rho_am, y_th, z_th, r_th, eps_smooth - real(wp) :: rcut, xcut !< Intermediate variables for creating smooth initial condition - real(wp), dimension(0:n,0:p) :: rcut_arr - integer :: l, q, s !< Iterators for reading input files - integer :: start, end !< Ints to keep track of position in file - character(len=1000) :: line !< String to store line in file - character(len=25) :: value !< String to store value in line - integer :: NJet !< Number of jets + real(wp) :: r, ux_th, ux_am, p_th, p_am, rho_th, rho_am, y_th, z_th, r_th, eps_smooth + real(wp) :: rcut, xcut !< Intermediate variables for creating smooth initial condition + real(wp), dimension(0:n,0:p) :: rcut_arr + integer :: l, q, s !< Iterators for reading input files + integer :: start, end !< Ints to keep track of position in file + character(len=100000) :: line ! String to store line in file + character(len=25) :: value !< String to store value in line + integer :: NJet !< Number of jets + real(wp), allocatable, dimension(:,:) :: ih ! Array to store interface height in + logical :: file_exist ! Flag to check if file exists eps = 1e-9_wp if (patch_icpp(patch_id)%hcid == 303) then eps_smooth = 3._wp - open (unit=10, file="njet.txt", status="old", action="read") - read (10, *) NJet - close (10) - - allocate (y_th_arr(0:NJet - 1)) - allocate (z_th_arr(0:NJet - 1)) - allocate (r_th_arr(0:NJet - 1)) - - open (unit=10, file="jets.csv", status="old", action="read") - do q = 0, NJet - 1 - read (10, '(A)') line ! Read a full line as a string - start = 1 - - do l = 0, 2 - end = index(line(start:), ',') ! Find the next comma - if (end == 0) then - value = trim(adjustl(line(start:))) ! Last value in the line - else - value = trim(adjustl(line(start:start + end - 2))) ! Extract substring - start = start + end ! Move to next value - end if - if (l == 0) then - read (value, *) y_th_arr(q) ! Convert string to numeric value - else if (l == 1) then - read (value, *) z_th_arr(q) - else - read (value, *) r_th_arr(q) - end if + inquire (file="njet.txt", exist=file_exist) + if (file_exist) then + open (unit=10, file="njet.txt", status="old", action="read") + read (10, *) NJet + close (10) + else + call s_mpi_abort("Error: njet.txt file specified for hcid=303 does not exist") + end if + + @:ALLOCATE(y_th_arr(0:NJet - 1)) + @:ALLOCATE(z_th_arr(0:NJet - 1)) + @:ALLOCATE(r_th_arr(0:NJet - 1)) + + inquire (file="jets.csv", exist=file_exist) + if (file_exist) then + open (unit=10, file="jets.csv", status="old", action="read") + do q = 0, NJet - 1 + read (10, '(A)') line ! Read a full line as a string + start = 1 + + do l = 0, 2 + end = index(line(start:), ',') ! Find the next comma + if (end == 0) then + value = trim(adjustl(line(start:))) ! Last value in the line + else + value = trim(adjustl(line(start:start + end - 2))) ! Extract substring + start = start + end ! Move to next value + end if + if (l == 0) then + read (value, *) y_th_arr(q) ! Convert string to numeric value + else if (l == 1) then + read (value, *) z_th_arr(q) + else + read (value, *) r_th_arr(q) + end if + end do end do - end do - close (10) - - do q = 0, p - do l = 0, n - rcut = 0._wp - do s = 0, NJet - 1 - r = sqrt((y_cc(l) - y_th_arr(s))**2._wp + (z_cc(q) - z_th_arr(s))**2._wp) - rcut = rcut + f_cut_on(r - r_th_arr(s), eps_smooth) + close (10) + + do q = 0, p + do l = 0, n + rcut = 0._wp + do s = 0, NJet - 1 + r = sqrt((y_cc(l) - y_th_arr(s))**2._wp + (z_cc(q) - z_th_arr(s))**2._wp) + rcut = rcut + f_cut_on(r - r_th_arr(s), eps_smooth) + end do + rcut_arr(l, q) = rcut end do - rcut_arr(l, q) = rcut end do - end do + else + call s_mpi_abort("Error: jets.csv file specified for hcid=303 does not exist") + end if + end if + + if (patch_icpp(patch_id)%hcid == 304) then + @:ALLOCATE(ih(0:n_glb, 0:p_glb)) + + if (interface_file == '.') then + call s_mpi_abort("Error: interface_file must be specified for hcid=304") + else + inquire (file=trim(interface_file), exist=file_exist) + if (file_exist) then + open (unit=10, file=trim(interface_file), status="old", action="read") + do i = 0, n_glb + read (10, '(A)') line ! Read a full line as a string + start = 1 + + do j = 0, p_glb + end = index(line(start:), ',') ! Find the next comma + if (end == 0) then + value = trim(adjustl(line(start:))) ! Last value in the line + else + value = trim(adjustl(line(start:start + end - 2))) ! Extract substring + start = start + end ! Move to next value + end if + read (value, *) ih(i, j) ! Convert string to numeric value + if (.not. f_is_default(normMag)) ih(i, j) = ih(i, j)*normMag + if (.not. f_is_default(normFac)) ih(i, j) = ih(i, j) + normFac + end do + end do + close (10) + else + call s_mpi_abort("Error: interface_file specified for hcid=304 does not exist") + end if + end if + end if + + if (patch_icpp(patch_id)%hcid == 305) then + @:ALLOCATE(ih(0:n_glb, 0:0)) + if (interface_file == '.') then + call s_mpi_abort("Error: interface_file must be specified for hcid=305") + else + inquire (file=trim(interface_file), exist=file_exist) + if (file_exist) then + open (unit=10, file=trim(interface_file), status="old", action="read") + do i = 0, n_glb + read (10, '(A)') line ! Read a full line as a string + value = trim(line) + read (value, *) ih(i, 0) ! Convert string to numeric value + if (.not. f_is_default(normMag)) ih(i, 0) = ih(i, 0)*normMag + if (.not. f_is_default(normFac)) ih(i, 0) = ih(i, 0) + normFac + end do + close (10) + else + call s_mpi_abort("Error: interface_file specified for hcid=305 does not exist") + end if + end if end if #:enddef @@ -165,6 +232,35 @@ end if q_prim_vf(E_idx)%sf(i, j, k) = p_th*rcut*xcut + p_am + case (304) ! 3D Interface from file cartesian + alph = 0.5_wp*(1 + (1._wp - 2._wp*eps)*tanh((ih(start_idx(2) + j, start_idx(3) + k) - x_cc(i))*(0.5_wp/dx))) + + q_prim_vf(advxb)%sf(i, j, k) = alph + q_prim_vf(advxe)%sf(i, j, k) = 1._wp - alph + + q_prim_vf(contxb)%sf(i, j, k) = q_prim_vf(advxb)%sf(i, j, k)*(950._wp/1000._wp) + q_prim_vf(contxe)%sf(i, j, k) = q_prim_vf(advxe)%sf(i, j, k)*(1._wp/1000._wp) + + ! h = x_cc(i) - ih(start_idx(2) + j, start_idx(3) + k) q_prim_vf(momxb)%sf(i,j,k) = -1._wp * (ih(start_idx(2) + j, + ! start_idx(3) + k) - normFac) * exp(-h * h / 1000) / 100._wp + + q_prim_vf(E_idx)%sf(i, j, k) = p0_ic + (q_prim_vf(contxb)%sf(i, j, k) + q_prim_vf(contxe)%sf(i, j, & + & k))*g0_ic*(ih(start_idx(2) + j, start_idx(3) + k) - x_cc(i)) + + if (surface_tension) q_prim_vf(c_idx)%sf(i, j, k) = alph + case (305) ! 3D Interface from file axisymmetric + alph = 0.5_wp*(1 + (1._wp - 2._wp*eps)*tanh((ih(start_idx(2) + j, 0) - x_cc(i))*(0.01_wp/dx))) + + q_prim_vf(advxb)%sf(i, j, k) = alph + q_prim_vf(advxe)%sf(i, j, k) = 1._wp - alph + + q_prim_vf(contxb)%sf(i, j, k) = q_prim_vf(advxb)%sf(i, j, k)*1._wp + q_prim_vf(contxe)%sf(i, j, k) = q_prim_vf(advxe)%sf(i, j, k)*(1._wp/950._wp) + + q_prim_vf(E_idx)%sf(i, j, k) = p0_ic + (q_prim_vf(contxb)%sf(i, j, k) + q_prim_vf(contxe)%sf(i, j, & + & k))*g0_ic*(ih(start_idx(1) + i, start_idx(3) + k) - y_cc(j)) + + if (surface_tension) q_prim_vf(c_idx)%sf(i, j, k) = alph case (370) ! 3D extrusion of 2D profile from external data ! This hardcoded case extrudes a 2D profile to initialize a 3D simulation domain @: HardcodedReadValues() diff --git a/src/common/include/ExtrusionHardcodedIC.fpp b/src/common/include/ExtrusionHardcodedIC.fpp index 07acc54a5e..e67b44ae2d 100644 --- a/src/common/include/ExtrusionHardcodedIC.fpp +++ b/src/common/include/ExtrusionHardcodedIC.fpp @@ -1,4 +1,4 @@ -!> Allocate memory and read initial condition data for IC extrusion. +!> @brief Allocate memory and read initial condition data for IC extrusion. !> !> @details !> This macro handles the complete initialization process for IC extrusion by: diff --git a/src/common/include/SharedHardcoded.fpp b/src/common/include/SharedHardcoded.fpp new file mode 100644 index 0000000000..8c7dd8c98b --- /dev/null +++ b/src/common/include/SharedHardcoded.fpp @@ -0,0 +1,14 @@ +#:def HardcodedDeallocation() + if (allocated(stored_values)) then + @:DEALLOCATE(stored_values) + @:DEALLOCATE(x_coords) + end if + + if (allocated(y_coords)) then + @:DEALLOCATE(y_coords) + end if + + if (allocated(ih)) then + @:DEALLOCATE(ih) + end if +#:enddef diff --git a/src/common/include/macros.fpp b/src/common/include/macros.fpp index 61c13886c5..3fc7e99cd0 100644 --- a/src/common/include/macros.fpp +++ b/src/common/include/macros.fpp @@ -14,12 +14,15 @@ ! Caution: This macro requires the use of a binding script to set CUDA_VISIBLE_DEVICES, such that we have one GPU device per MPI ! rank. That's because for both cudaMemAdvise (preferred location) and cudaMemPrefetchAsync we use location = device_id = 0. For an -! example see misc/nvidia_uvm/bind.sh. NVIDIA unified memory page placement hint +! example see misc/nvidia_uvm/bind.sh. #:def PREFER_GPU(*args) #ifdef MFC_SIMULATION #ifdef __NVCOMPILER_GPU_UNIFIED_MEM block - ! NVIDIA CUDA Fortran 25.3+: uses submodules (cuda_runtime_api, gpu_reductions, sort) See + ! Beginning in the 25.3 release, the structure of the cudafor module has been changed slightly. The module now includes, or + ! "uses" 3 submodules: cuda_runtime_api, gpu_reductions, and sort. The cudafor functionality has not changed. But for new + ! users, or users who have needed to work-around name conflicts in the module, it may be better to use cuda_runtime_api to + ! expose interfaces to the CUDA runtime calls described in Chapter 4 of this guide. ! https://docs.nvidia.com/hpc-sdk/compilers/cuda-fortran-prog-guide/index.html#fortran-host-modules #if __NVCOMPILER_MAJOR__ < 25 || (__NVCOMPILER_MAJOR__ == 25 && __NVCOMPILER_MINOR__ < 3) use cudafor, gpu_sum => sum, gpu_maxval => maxval, gpu_minval => minval @@ -55,7 +58,6 @@ #endif #:enddef -! Allocate and create GPU device memory #:def ALLOCATE(*args) @:LOG({'@:ALLOCATE(${re.sub(' +', ' ', ', '.join(args))}$)'}) #:set allocated_variables = ', '.join(args) @@ -75,7 +77,6 @@ $:GPU_ENTER_DATA(create='[' + joined + ']') #:enddef ALLOCATE -! Free GPU device memory and deallocate #:def DEALLOCATE(*args) @:LOG({'@:DEALLOCATE(${re.sub(' +', ' ', ', '.join(args))}$)'}) #:set allocated_variables = ', '.join(args) @@ -83,7 +84,6 @@ deallocate (${allocated_variables}$) #:enddef DEALLOCATE -! Cray-specific GPU pointer setup for vector fields #:def ACC_SETUP_VFs(*args) #ifdef _CRAYFTN block @@ -107,7 +107,6 @@ #endif #:enddef -! Cray-specific GPU pointer setup for scalar fields #:def ACC_SETUP_SFs(*args) #ifdef _CRAYFTN block @@ -123,7 +122,6 @@ #endif #:enddef -! Cray-specific GPU pointer setup for acoustic source spatials #:def ACC_SETUP_source_spatials(*args) #ifdef _CRAYFTN block diff --git a/src/common/include/parallel_macros.fpp b/src/common/include/parallel_macros.fpp index b1382ec49a..b3b65eb9c6 100644 --- a/src/common/include/parallel_macros.fpp +++ b/src/common/include/parallel_macros.fpp @@ -2,7 +2,6 @@ #:include 'omp_macros.fpp' #:include 'acc_macros.fpp' -! GPU parallel region (scalar reductions, maxval/minval) #:def GPU_PARALLEL(code, private=None, default='present', firstprivate=None, reduction=None, reductionOp=None, & & copy=None, copyin=None, copyinReadOnly=None, copyout=None, create=None, & & no_create=None, present=None, deviceptr=None, attach=None, extraAccArgs=None, extraOmpArgs=None) @@ -21,7 +20,6 @@ #endif #:enddef -! GPU parallel loop over threads (most common GPU macro) #:def GPU_PARALLEL_LOOP(collapse=None, private=None, parallelism='[gang, vector]', & & default='present', firstprivate=None, reduction=None, reductionOp=None, & & copy=None, copyin=None, copyinReadOnly=None, copyout=None, create=None, & @@ -41,7 +39,6 @@ #endif #:enddef -! Required closing for GPU_PARALLEL_LOOP #:def END_GPU_PARALLEL_LOOP() #:set acc_end_directive = '!$acc end parallel loop' #:set omp_end_directive = END_OMP_PARALLEL_LOOP() @@ -53,7 +50,6 @@ #endif #:enddef -! Mark routine for device compilation #:def GPU_ROUTINE(function_name=None, parallelism=None, nohost=False, cray_inline=False, cray_noinline=False, extraAccArgs=None, & & extraOmpArgs=None) #:assert isinstance(cray_inline, bool) @@ -110,7 +106,6 @@ #:endif #:enddef -! Declare device-resident data #:def GPU_DECLARE(copy=None, copyin=None, copyinReadOnly=None, copyout=None, create=None, present=None, deviceptr=None, & & link=None, extraAccArgs=None, extraOmpArgs=None) #:set acc_code = ACC_DECLARE(copy=copy, copyin=copyin, copyinReadOnly=copyinReadOnly, copyout=copyout, create=create, & @@ -128,7 +123,6 @@ #endif #:enddef -! Inner loop within a GPU parallel region #:def GPU_LOOP(collapse=None, parallelism=None, data_dependency=None, reduction=None, reductionOp=None, private=None, & & extraAccArgs=None, extraOmpArgs=None) #:set acc_code = ACC_LOOP(collapse=collapse, parallelism=parallelism, data_dependency=data_dependency, reduction=reduction, & @@ -143,7 +137,6 @@ #endif #:enddef -! Scoped GPU data region #:def GPU_DATA(code, copy=None, copyin=None, copyinReadOnly=None, copyout=None, create=None, no_create=None, present=None, & & deviceptr=None, attach=None, default=None, extraAccArgs=None, extraOmpArgs=None) #:set acc_code = ACC_DATA(code=code, copy=copy, copyin=copyin, copyinReadOnly=copyinReadOnly, copyout=copyout, create=create, & @@ -162,7 +155,6 @@ #endif #:enddef -! Host code with device pointers (for MPI with GPU buffers) #:def GPU_HOST_DATA(code, use_device_addr=None, use_device_ptr=None, extraAccArgs=None, extraOmpArgs=None) #:if use_device_addr is not None and use_device_ptr is not None #:set use_device_addr_end_index = len(use_device_addr) - 1 @@ -191,7 +183,6 @@ #endif #:enddef -! Allocate device memory (unscoped) #:def GPU_ENTER_DATA(copyin=None, copyinReadOnly=None, create=None, attach=None, extraAccArgs=None, extraOmpArgs=None) #:set acc_code = ACC_ENTER_DATA(copyin=copyin, copyinReadOnly=copyinReadOnly, create=create, attach=attach, & & extraAccArgs=extraAccArgs) @@ -205,7 +196,6 @@ #endif #:enddef -! Free device memory #:def GPU_EXIT_DATA(copyout=None, delete=None, detach=None, extraAccArgs=None, extraOmpArgs=None) #:set acc_code = ACC_EXIT_DATA(copyout=copyout, delete=delete, detach=detach, extraAccArgs=extraAccArgs) #:set omp_code = OMP_EXIT_DATA(copyout=copyout, delete=delete, detach=detach, extraOmpArgs=extraOmpArgs) @@ -217,7 +207,6 @@ #endif #:enddef -! Atomic operation on device #:def GPU_ATOMIC(atomic, extraAccArgs=None, extraOmpArgs=None) #:set acc_code = ACC_ATOMIC(atomic=atomic, extraAccArgs=extraAccArgs) #:set omp_code = OMP_ATOMIC(atomic=atomic, extraOmpArgs=extraOmpArgs) @@ -229,7 +218,6 @@ #endif #:enddef -! End atomic capture block #:def END_GPU_ATOMIC_CAPTURE() #:set acc_end_directive = '!$acc end atomic' #:set omp_end_directive = '!$omp end atomic' @@ -240,7 +228,6 @@ #endif #:enddef -! Copy data between host and device #:def GPU_UPDATE(host=None, device=None, extraAccArgs=None, extraOmpArgs=None) #:set acc_code = ACC_UPDATE(host=host, device=device, extraAccArgs=extraAccArgs) #:set omp_code = OMP_UPDATE(host=host, device=device, extraOmpArgs=extraOmpArgs) @@ -252,7 +239,6 @@ #endif #:enddef -! Synchronization barrier #:def GPU_WAIT(extraAccArgs=None, extraOmpArgs=None) #:set acc_code = ACC_WAIT(extraAccArgs=extraAccArgs) #:set omp_code = OMP_WAIT(extraOmpArgs=extraOmpArgs) @@ -264,7 +250,6 @@ #endif #:enddef -! Import GPU library module (openacc or omp_lib) #:def USE_GPU_MODULE() #if defined(MFC_OpenACC) use openacc @@ -273,28 +258,24 @@ #endif #:enddef -! Emit code only for AMD compiler #:def DEF_AMD(code) #:if MFC_COMPILER == AMD_COMPILER_ID $:code #:endif #:enddef -! Emit code for non-Cray compilers #:def UNDEF_CCE(code) #:if MFC_COMPILER != CCE_COMPILER_ID $:code #:endif #:enddef -! Emit code only for Cray compiler #:def DEF_CCE(code) #:if MFC_COMPILER == CCE_COMPILER_ID $:code #:endif #:enddef -! Emit code for non-NVIDIA compilers #:def UNDEF_NVIDIA(code) #:if MFC_COMPILER != NVIDIA_COMPILER_ID and MFC_COMPILER != PGI_COMPILER_ID $:code diff --git a/src/common/m_boundary_common.fpp b/src/common/m_boundary_common.fpp index 918b0daea5..e86aea1303 100644 --- a/src/common/m_boundary_common.fpp +++ b/src/common/m_boundary_common.fpp @@ -20,13 +20,16 @@ module m_boundary_common type(scalar_field), dimension(:,:), allocatable :: bc_buffers $:GPU_DECLARE(create='[bc_buffers]') + type(int_bounds_info), dimension(3) :: beta_bc_bounds + $:GPU_DECLARE(create='[beta_bc_bounds]') + #ifdef MFC_MPI integer, dimension(1:3,1:2) :: MPI_BC_TYPE_TYPE integer, dimension(1:3,1:2) :: MPI_BC_BUFFER_TYPE #endif - private; public :: s_initialize_boundary_common_module, s_populate_variables_buffers, s_create_mpi_types, & - & s_populate_capillary_buffers, s_populate_F_igr_buffers, s_write_serial_boundary_condition_files, & + private; public :: s_initialize_boundary_common_module, s_populate_variables_buffers, s_populate_beta_buffers, & + & s_create_mpi_types, s_populate_capillary_buffers, s_populate_F_igr_buffers, s_write_serial_boundary_condition_files, & & s_write_parallel_boundary_condition_files, s_read_serial_boundary_condition_files, & & s_read_parallel_boundary_condition_files, s_assign_default_bc_type, s_populate_grid_variables_buffers, & & s_finalize_boundary_common_module @@ -39,7 +42,7 @@ module m_boundary_common contains - !> Allocate and set up boundary condition buffer arrays for all coordinate directions. + !> @brief Allocates and sets up boundary condition buffer arrays for all coordinate directions. impure subroutine s_initialize_boundary_common_module() integer :: i, j @@ -68,9 +71,26 @@ contains end do end if + if (bubbles_lagrange) then + beta_bc_bounds(1)%beg = -mapcells - 1 + beta_bc_bounds(1)%end = m + mapcells + 1 + ! n > 0 always for bubbles_lagrange + beta_bc_bounds(2)%beg = -mapcells - 1 + beta_bc_bounds(2)%end = n + mapcells + 1 + if (p == 0) then + beta_bc_bounds(3)%beg = 0 + beta_bc_bounds(3)%end = 0 + else + beta_bc_bounds(3)%beg = -mapcells - 1 + beta_bc_bounds(3)%end = p + mapcells + 1 + end if + end if + $:GPU_UPDATE(device='[beta_bc_bounds]') + end subroutine s_initialize_boundary_common_module - !> Populate the buffers of the primitive variables based on the selected boundary conditions. + !> The purpose of this procedure is to populate the buffers of the primitive variables, depending on the selected boundary + !! conditions. impure subroutine s_populate_variables_buffers(bc_type, q_prim_vf, pb_in, mv_in) type(scalar_field), dimension(sys_size), intent(inout) :: q_prim_vf @@ -78,7 +98,7 @@ contains type(integer_field), dimension(1:num_dims,1:2), intent(in) :: bc_type integer :: k, l - ! BC type codes defined in m_constants.fpp; non-negative values are MPI boundaries + ! Population of Buffers in x-direction if (bc_x%beg >= 0) then call s_mpi_sendrecv_variables_buffers(q_prim_vf, 1, -1, sys_size, pb_in, mv_in) @@ -241,7 +261,7 @@ contains if (bc_z%end >= 0) then call s_mpi_sendrecv_variables_buffers(q_prim_vf, 3, 1, sys_size, pb_in, mv_in) - else + else !< bc_x%end $:GPU_PARALLEL_LOOP(private='[l, k]', collapse=2) do l = -buff_size, n + buff_size do k = -buff_size, m + buff_size @@ -268,10 +288,11 @@ contains $:END_GPU_PARALLEL_LOOP() end if #:endif + ! END: Population of Buffers in z-direction end subroutine s_populate_variables_buffers - !> Fill ghost cells by copying the nearest boundary cell value along the specified direction. + !> @brief Fills ghost cells by copying the nearest boundary cell value along the specified direction. subroutine s_ghost_cell_extrapolation(q_prim_vf, bc_dir, bc_loc, k, l) $:GPU_ROUTINE(function_name='s_ghost_cell_extrapolation', parallelism='[seq]', cray_inline=True) @@ -287,7 +308,7 @@ contains q_prim_vf(i)%sf(-j, k, l) = q_prim_vf(i)%sf(0, k, l) end do end do - else !< bc_x%end + else !< bc_y%end do i = 1, sys_size do j = 1, buff_size q_prim_vf(i)%sf(m + j, k, l) = q_prim_vf(i)%sf(m, k, l) @@ -301,7 +322,7 @@ contains q_prim_vf(i)%sf(k, -j, l) = q_prim_vf(i)%sf(k, 0, l) end do end do - else !< bc_y%end + else !< bc_z%end do i = 1, sys_size do j = 1, buff_size q_prim_vf(i)%sf(k, n + j, l) = q_prim_vf(i)%sf(k, n, l) @@ -315,7 +336,7 @@ contains q_prim_vf(i)%sf(k, l, -j) = q_prim_vf(i)%sf(k, l, 0) end do end do - else !< bc_z%end + else !< bc_x%end do i = 1, sys_size do j = 1, buff_size q_prim_vf(i)%sf(k, l, p + j) = q_prim_vf(i)%sf(k, l, p) @@ -326,7 +347,8 @@ contains end subroutine s_ghost_cell_extrapolation - !> Apply reflective (symmetry) boundary conditions by mirroring primitive variables and flipping the normal velocity component. + !> @brief Applies reflective (symmetry) boundary conditions by mirroring primitive variables and flipping the normal velocity + !! component. subroutine s_symmetry(q_prim_vf, bc_dir, bc_loc, k, l, pb_in, mv_in) $:GPU_ROUTINE(parallelism='[seq]') @@ -371,7 +393,7 @@ contains end do end do end if - else !< bc_x%end + else !< bc_y%end do j = 1, buff_size do i = 1, contxe q_prim_vf(i)%sf(m + j, k, l) = q_prim_vf(i)%sf(m - (j - 1), k, l) @@ -440,7 +462,7 @@ contains end do end do end if - else !< bc_y%end + else !< bc_z%end do j = 1, buff_size do i = 1, momxb q_prim_vf(i)%sf(k, n + j, l) = q_prim_vf(i)%sf(k, n - (j - 1), l) @@ -510,7 +532,7 @@ contains end do end do end if - else !< bc_z%end + else !< bc_x%end do j = 1, buff_size do i = 1, momxb + 1 q_prim_vf(i)%sf(k, l, p + j) = q_prim_vf(i)%sf(k, l, p - (j - 1)) @@ -549,7 +571,7 @@ contains end subroutine s_symmetry - !> Apply periodic boundary conditions by copying values from the opposite domain boundary. + !> @brief Applies periodic boundary conditions by copying values from the opposite domain boundary. subroutine s_periodic(q_prim_vf, bc_dir, bc_loc, k, l, pb_in, mv_in) $:GPU_ROUTINE(parallelism='[seq]') @@ -577,7 +599,7 @@ contains end do end do end if - else !< bc_x%end + else !< bc_y%end do i = 1, sys_size do j = 1, buff_size q_prim_vf(i)%sf(m + j, k, l) = q_prim_vf(i)%sf(j - 1, k, l) @@ -613,7 +635,7 @@ contains end do end do end if - else !< bc_y%end + else !< bc_z%end do i = 1, sys_size do j = 1, buff_size q_prim_vf(i)%sf(k, n + j, l) = q_prim_vf(i)%sf(k, j - 1, l) @@ -649,7 +671,7 @@ contains end do end do end if - else !< bc_z%end + else do i = 1, sys_size do j = 1, buff_size q_prim_vf(i)%sf(k, l, p + j) = q_prim_vf(i)%sf(k, l, j - 1) @@ -671,7 +693,8 @@ contains end subroutine s_periodic - !> Apply axis boundary conditions for cylindrical coordinates by reflecting values across the axis with azimuthal phase shift. + !> @brief Applies axis boundary conditions for cylindrical coordinates by reflecting values across the axis with azimuthal phase + !! shift. subroutine s_axis(q_prim_vf, pb_in, mv_in, k, l) $:GPU_ROUTINE(parallelism='[seq]') @@ -721,7 +744,7 @@ contains end subroutine s_axis - !> Apply slip wall boundary conditions by extrapolating scalars and reflecting the wall-normal velocity component. + !> @brief Applies slip wall boundary conditions by extrapolating scalars and reflecting the wall-normal velocity component. subroutine s_slip_wall(q_prim_vf, bc_dir, bc_loc, k, l) $:GPU_ROUTINE(function_name='s_slip_wall',parallelism='[seq]', cray_inline=True) @@ -736,12 +759,12 @@ contains do j = 1, buff_size if (i == momxb) then q_prim_vf(i)%sf(-j, k, l) = -q_prim_vf(i)%sf(j - 1, k, l) + 2._wp*bc_x%vb1 - else + else !< bc_x%end q_prim_vf(i)%sf(-j, k, l) = q_prim_vf(i)%sf(0, k, l) end if end do end do - else !< bc_x%end + else do i = 1, sys_size do j = 1, buff_size if (i == momxb) then @@ -758,12 +781,12 @@ contains do j = 1, buff_size if (i == momxb + 1) then q_prim_vf(i)%sf(k, -j, l) = -q_prim_vf(i)%sf(k, j - 1, l) + 2._wp*bc_y%vb2 - else + else !< bc_y%end q_prim_vf(i)%sf(k, -j, l) = q_prim_vf(i)%sf(k, 0, l) end if end do end do - else !< bc_y%end + else do i = 1, sys_size do j = 1, buff_size if (i == momxb + 1) then @@ -780,12 +803,12 @@ contains do j = 1, buff_size if (i == momxe) then q_prim_vf(i)%sf(k, l, -j) = -q_prim_vf(i)%sf(k, l, j - 1) + 2._wp*bc_z%vb3 - else + else !< bc_z%end q_prim_vf(i)%sf(k, l, -j) = q_prim_vf(i)%sf(k, l, 0) end if end do end do - else !< bc_z%end + else do i = 1, sys_size do j = 1, buff_size if (i == momxe) then @@ -800,7 +823,7 @@ contains end subroutine s_slip_wall - !> Apply no-slip wall boundary conditions by reflecting and negating all velocity components at the wall. + !> @brief Applies no-slip wall boundary conditions by reflecting and negating all velocity components at the wall. subroutine s_no_slip_wall(q_prim_vf, bc_dir, bc_loc, k, l) $:GPU_ROUTINE(function_name='s_no_slip_wall',parallelism='[seq]', cray_inline=True) @@ -820,12 +843,12 @@ contains q_prim_vf(i)%sf(-j, k, l) = -q_prim_vf(i)%sf(j - 1, k, l) + 2._wp*bc_x%vb2 else if (i == momxb + 2 .and. num_dims > 2) then q_prim_vf(i)%sf(-j, k, l) = -q_prim_vf(i)%sf(j - 1, k, l) + 2._wp*bc_x%vb3 - else + else !< bc_x%end q_prim_vf(i)%sf(-j, k, l) = q_prim_vf(i)%sf(0, k, l) end if end do end do - else !< bc_x%end + else do i = 1, sys_size do j = 1, buff_size if (i == momxb) then @@ -850,12 +873,12 @@ contains q_prim_vf(i)%sf(k, -j, l) = -q_prim_vf(i)%sf(k, j - 1, l) + 2._wp*bc_y%vb2 else if (i == momxb + 2 .and. num_dims > 2) then q_prim_vf(i)%sf(k, -j, l) = -q_prim_vf(i)%sf(k, j - 1, l) + 2._wp*bc_y%vb3 - else + else !< bc_y%end q_prim_vf(i)%sf(k, -j, l) = q_prim_vf(i)%sf(k, 0, l) end if end do end do - else !< bc_y%end + else do i = 1, sys_size do j = 1, buff_size if (i == momxb) then @@ -880,12 +903,12 @@ contains q_prim_vf(i)%sf(k, l, -j) = -q_prim_vf(i)%sf(k, l, j - 1) + 2._wp*bc_z%vb2 else if (i == momxb + 2 .and. num_dims > 2) then q_prim_vf(i)%sf(k, l, -j) = -q_prim_vf(i)%sf(k, l, j - 1) + 2._wp*bc_z%vb3 - else + else !< bc_z%end q_prim_vf(i)%sf(k, l, -j) = q_prim_vf(i)%sf(k, l, 0) end if end do end do - else !< bc_z%end + else do i = 1, sys_size do j = 1, buff_size if (i == momxb) then @@ -894,7 +917,7 @@ contains q_prim_vf(i)%sf(k, l, p + j) = -q_prim_vf(i)%sf(k, l, p - (j - 1)) + 2._wp*bc_z%ve2 else if (i == momxb + 2 .and. num_dims > 2) then q_prim_vf(i)%sf(k, l, p + j) = -q_prim_vf(i)%sf(k, l, p - (j - 1)) + 2._wp*bc_z%ve3 - else + else !< bc_x%end q_prim_vf(i)%sf(k, l, p + j) = q_prim_vf(i)%sf(k, l, p) end if end do @@ -904,7 +927,7 @@ contains end subroutine s_no_slip_wall - !> Apply Dirichlet boundary conditions by prescribing ghost cell values from stored boundary buffers. + !> @brief Applies Dirichlet boundary conditions by prescribing ghost cell values from stored boundary buffers. subroutine s_dirichlet(q_prim_vf, bc_dir, bc_loc, k, l) $:GPU_ROUTINE(function_name='s_dirichlet',parallelism='[seq]', cray_inline=True) @@ -921,7 +944,7 @@ contains q_prim_vf(i)%sf(-j, k, l) = bc_buffers(1, 1)%sf(i, k, l) end do end do - else !< bc_x%end + else !< bc_y%end do i = 1, sys_size do j = 1, buff_size q_prim_vf(i)%sf(m + j, k, l) = bc_buffers(1, 2)%sf(i, k, l) @@ -936,7 +959,7 @@ contains q_prim_vf(i)%sf(k, -j, l) = bc_buffers(2, 1)%sf(k, i, l) end do end do - else !< bc_y%end + else !< bc_z%end do i = 1, sys_size do j = 1, buff_size q_prim_vf(i)%sf(k, n + j, l) = bc_buffers(2, 2)%sf(k, i, l) @@ -952,7 +975,7 @@ contains q_prim_vf(i)%sf(k, l, -j) = bc_buffers(3, 1)%sf(k, l, i) end do end do - else !< bc_z%end + else !< bc_x%end do i = 1, sys_size do j = 1, buff_size q_prim_vf(i)%sf(k, l, p + j) = bc_buffers(3, 2)%sf(k, l, i) @@ -967,7 +990,7 @@ contains end subroutine s_dirichlet - !> Extrapolate QBMM bubble pressure and mass-vapor variables into ghost cells by copying boundary values. + !> @brief Extrapolates QBMM bubble pressure and mass-vapor variables into ghost cells by copying boundary values. subroutine s_qbmm_extrapolation(bc_dir, bc_loc, k, l, pb_in, mv_in) $:GPU_ROUTINE(parallelism='[seq]') @@ -986,7 +1009,7 @@ contains end do end do end do - else !< bc_x%end + else !< bc_y%end do i = 1, nb do q = 1, nnode do j = 1, buff_size @@ -1006,7 +1029,7 @@ contains end do end do end do - else !< bc_y%end + else !< bc_z%end do i = 1, nb do q = 1, nnode do j = 1, buff_size @@ -1026,7 +1049,7 @@ contains end do end do end do - else !< bc_z%end + else do i = 1, nb do q = 1, nnode do j = 1, buff_size @@ -1040,7 +1063,381 @@ contains end subroutine s_qbmm_extrapolation - !> Populate ghost cell buffers for the color function and its divergence used in capillary surface tension. + impure subroutine s_populate_beta_buffers(q_beta, kahan_comp, bc_type, nvar) + + type(scalar_field), dimension(:), intent(inout) :: q_beta + type(scalar_field), dimension(:), intent(inout) :: kahan_comp + type(integer_field), dimension(1:num_dims,1:2), intent(in) :: bc_type + integer, intent(in) :: nvar + integer :: k, l + + !> x-direction + + if (bc_x%beg < 0) then + $:GPU_PARALLEL_LOOP(private='[l, k]', collapse=2) + do l = beta_bc_bounds(3)%beg, beta_bc_bounds(3)%end + do k = beta_bc_bounds(2)%beg, beta_bc_bounds(2)%end + select case (bc_x%beg) + case (BC_PERIODIC) + call s_beta_periodic(q_beta, kahan_comp, 1, -1, k, l, nvar) + case (BC_REFLECTIVE) + call s_beta_reflective(q_beta, kahan_comp, 1, -1, k, l, nvar) + case default + end select + end do + end do + $:END_GPU_PARALLEL_LOOP() + end if + if (bc_x%beg >= 0 .or. bc_x%end >= 0) then + call s_mpi_reduce_beta_variables_buffers(q_beta, kahan_comp, 1, -1, nvar) + end if + + if (bc_x%end < 0) then + $:GPU_PARALLEL_LOOP(private='[l, k]', collapse=2) + do l = beta_bc_bounds(3)%beg, beta_bc_bounds(3)%end + do k = beta_bc_bounds(2)%beg, beta_bc_bounds(2)%end + select case (bc_x%end) + case (BC_PERIODIC) + call s_beta_periodic(q_beta, kahan_comp, 1, 1, k, l, nvar) + case (BC_REFLECTIVE) + call s_beta_reflective(q_beta, kahan_comp, 1, 1, k, l, nvar) + case default + end select + end do + end do + $:END_GPU_PARALLEL_LOOP() + end if + if (bc_x%beg >= 0 .or. bc_x%end >= 0) then + call s_mpi_reduce_beta_variables_buffers(q_beta, kahan_comp, 1, 1, nvar) + end if + + !> y-direction + if (bc_y%beg < 0) then + $:GPU_PARALLEL_LOOP(private='[l, k]', collapse=2) + do l = beta_bc_bounds(3)%beg, beta_bc_bounds(3)%end + do k = beta_bc_bounds(1)%beg, beta_bc_bounds(1)%end + select case (bc_y%beg) + case (BC_PERIODIC) + call s_beta_periodic(q_beta, kahan_comp, 2, -1, k, l, nvar) + case (BC_REFLECTIVE) + call s_beta_reflective(q_beta, kahan_comp, 2, -1, k, l, nvar) + case default + end select + end do + end do + $:END_GPU_PARALLEL_LOOP() + end if + if (bc_y%beg >= 0 .or. bc_y%end >= 0) then + call s_mpi_reduce_beta_variables_buffers(q_beta, kahan_comp, 2, -1, nvar) + end if + + if (bc_y%end < 0) then + $:GPU_PARALLEL_LOOP(private='[l, k]', collapse=2) + do l = beta_bc_bounds(3)%beg, beta_bc_bounds(3)%end + do k = beta_bc_bounds(1)%beg, beta_bc_bounds(1)%end + select case (bc_y%end) + case (BC_PERIODIC) + call s_beta_periodic(q_beta, kahan_comp, 2, 1, k, l, nvar) + case (BC_REFLECTIVE) + call s_beta_reflective(q_beta, kahan_comp, 2, 1, k, l, nvar) + case default + end select + end do + end do + $:END_GPU_PARALLEL_LOOP() + end if + if (bc_y%beg >= 0 .or. bc_y%end >= 0) then + call s_mpi_reduce_beta_variables_buffers(q_beta, kahan_comp, 2, 1, nvar) + end if + + if (num_dims == 2) return + + #:if not MFC_CASE_OPTIMIZATION or num_dims > 2 + !> z-direction + if (bc_z%beg < 0) then + $:GPU_PARALLEL_LOOP(private='[l, k]', collapse=2) + do l = beta_bc_bounds(2)%beg, beta_bc_bounds(2)%end + do k = beta_bc_bounds(1)%beg, beta_bc_bounds(1)%end + select case (bc_type(3, 1)%sf(k, l, 0)) + case (BC_PERIODIC) + call s_beta_periodic(q_beta, kahan_comp, 3, -1, k, l, nvar) + case (BC_REFLECTIVE) + call s_beta_reflective(q_beta, kahan_comp, 3, -1, k, l, nvar) + case default + end select + end do + end do + $:END_GPU_PARALLEL_LOOP() + end if + if (bc_z%beg >= 0 .or. bc_z%end >= 0) then + call s_mpi_reduce_beta_variables_buffers(q_beta, kahan_comp, 3, -1, nvar) + end if + + if (bc_z%end < 0) then + $:GPU_PARALLEL_LOOP(private='[l, k]', collapse=2) + do l = beta_bc_bounds(2)%beg, beta_bc_bounds(2)%end + do k = beta_bc_bounds(1)%beg, beta_bc_bounds(1)%end + select case (bc_type(3, 2)%sf(k, l, 0)) + case (BC_PERIODIC) + call s_beta_periodic(q_beta, kahan_comp, 3, 1, k, l, nvar) + case (BC_REFLECTIVE) + call s_beta_reflective(q_beta, kahan_comp, 3, 1, k, l, nvar) + case default + end select + end do + end do + $:END_GPU_PARALLEL_LOOP() + end if + if (bc_z%beg >= 0 .or. bc_z%end >= 0) then + call s_mpi_reduce_beta_variables_buffers(q_beta, kahan_comp, 3, 1, nvar) + end if + #:endif + + end subroutine s_populate_beta_buffers + + subroutine s_beta_periodic(q_beta, kahan_comp, bc_dir, bc_loc, k, l, nvar) + + $:GPU_ROUTINE(function_name='s_beta_periodic', parallelism='[seq]', cray_inline=True) + type(scalar_field), dimension(num_dims + 1), intent(inout) :: q_beta + type(scalar_field), dimension(num_dims + 1), intent(inout) :: kahan_comp + integer, intent(in) :: bc_dir, bc_loc + integer, intent(in) :: k, l + integer, intent(in) :: nvar + integer :: j, i + real(wp) :: y_kahan, t_kahan + + if (bc_dir == 1) then !< x-direction + if (bc_loc == -1) then ! bc_x%beg + do i = 1, nvar + do j = -mapCells - 1, mapCells + ! Kahan-compensated addition of ghost to interior + y_kahan = real(q_beta(beta_vars(i))%sf(m + j + 1, k, l), & + & kind=wp) + kahan_comp(beta_vars(i))%sf(m + j + 1, k, l) - kahan_comp(beta_vars(i))%sf(j, & + & k, l) + t_kahan = real(q_beta(beta_vars(i))%sf(j, k, l), kind=wp) + y_kahan + kahan_comp(beta_vars(i))%sf(j, k, l) = (t_kahan - q_beta(beta_vars(i))%sf(j, k, l)) - y_kahan + q_beta(beta_vars(i))%sf(j, k, l) = t_kahan + end do + end do + else + do i = 1, nvar + do j = -mapcells, mapcells + 1 + q_beta(beta_vars(i))%sf(m + j, k, l) = q_beta(beta_vars(i))%sf(j - 1, k, l) + kahan_comp(beta_vars(i))%sf(m + j, k, l) = kahan_comp(beta_vars(i))%sf(j - 1, k, l) + end do + end do + end if + else if (bc_dir == 2) then !< y-direction + if (bc_loc == -1) then !< bc_y%beg + do i = 1, nvar + do j = -mapcells - 1, mapcells + y_kahan = real(q_beta(beta_vars(i))%sf(k, n + j + 1, l), kind=wp) + kahan_comp(beta_vars(i))%sf(k, & + & n + j + 1, l) - kahan_comp(beta_vars(i))%sf(k, j, l) + t_kahan = real(q_beta(beta_vars(i))%sf(k, j, l), kind=wp) + y_kahan + kahan_comp(beta_vars(i))%sf(k, j, l) = (t_kahan - q_beta(beta_vars(i))%sf(k, j, l)) - y_kahan + q_beta(beta_vars(i))%sf(k, j, l) = t_kahan + end do + end do + else + do i = 1, nvar + do j = -mapcells, mapcells + 1 + q_beta(beta_vars(i))%sf(k, n + j, l) = q_beta(beta_vars(i))%sf(k, j - 1, l) + kahan_comp(beta_vars(i))%sf(k, n + j, l) = kahan_comp(beta_vars(i))%sf(k, j - 1, l) + end do + end do + end if + else if (bc_dir == 3) then !< z-direction + if (bc_loc == -1) then !< bc_z%beg + do i = 1, nvar + do j = -mapcells - 1, mapcells + y_kahan = real(q_beta(beta_vars(i))%sf(k, l, p + j + 1), kind=wp) + kahan_comp(beta_vars(i))%sf(k, l, & + & p + j + 1) - kahan_comp(beta_vars(i))%sf(k, l, j) + t_kahan = real(q_beta(beta_vars(i))%sf(k, l, j), kind=wp) + y_kahan + kahan_comp(beta_vars(i))%sf(k, l, j) = (t_kahan - q_beta(beta_vars(i))%sf(k, l, j)) - y_kahan + q_beta(beta_vars(i))%sf(k, l, j) = t_kahan + end do + end do + else + do i = 1, nvar + do j = -mapcells, mapcells + 1 + q_beta(beta_vars(i))%sf(k, l, p + j) = q_beta(beta_vars(i))%sf(k, l, j - 1) + kahan_comp(beta_vars(i))%sf(k, l, p + j) = kahan_comp(beta_vars(i))%sf(k, l, j - 1) + end do + end do + end if + end if + + end subroutine s_beta_periodic + + subroutine s_beta_extrapolation(q_beta, bc_dir, bc_loc, k, l, nvar) + + $:GPU_ROUTINE(function_name='s_beta_extrapolation', parallelism='[seq]', cray_inline=True) + type(scalar_field), dimension(num_dims + 1), intent(inout) :: q_beta + integer, intent(in) :: bc_dir, bc_loc + integer, intent(in) :: k, l + integer, intent(in) :: nvar + integer :: j, i + + ! Set beta in buffer regions equal to zero + + if (bc_dir == 1) then !< x-direction + if (bc_loc == -1) then ! bc_x%beg + do i = 1, nvar + do j = 1, buff_size + q_beta(beta_vars(i))%sf(-j, k, l) = 0._wp + end do + end do + else + do i = 1, nvar + do j = 1, buff_size + q_beta(beta_vars(i))%sf(m + j, k, l) = 0._wp + end do + end do + end if + else if (bc_dir == 2) then !< y-direction + if (bc_loc == -1) then !< bc_y%beg + do i = 1, nvar + do j = 1, buff_size + q_beta(beta_vars(i))%sf(k, -j, l) = 0._wp + end do + end do + else + do i = 1, nvar + do j = 1, buff_size + q_beta(beta_vars(i))%sf(k, n + j, l) = 0._wp + end do + end do + end if + else if (bc_dir == 3) then !< z-direction + if (bc_loc == -1) then !< bc_z%beg + do i = 1, nvar + do j = 1, buff_size + q_beta(beta_vars(i))%sf(k, l, -j) = 0._wp + end do + end do + else !< bc_x%end + do i = 1, nvar + do j = 1, buff_size + q_beta(beta_vars(i))%sf(k, l, p + j) = 0._wp + end do + end do + end if + end if + + end subroutine s_beta_extrapolation + + subroutine s_beta_reflective(q_beta, kahan_comp, bc_dir, bc_loc, k, l, nvar) + + $:GPU_ROUTINE(function_name='s_beta_reflective', parallelism='[seq]', cray_inline=True) + type(scalar_field), dimension(num_dims + 1), intent(inout) :: q_beta + type(scalar_field), dimension(num_dims + 1), intent(inout) :: kahan_comp + integer, intent(in) :: bc_dir, bc_loc + integer, intent(in) :: k, l + integer, intent(in) :: nvar + integer :: j, i + real(wp) :: y_kahan, t_kahan + + ! Reflective BC for void fraction: 1) Fold ghost-cell contributions back onto their mirror interior cells (Kahan) 2) Set + ! ghost cells = mirror of (now-folded) interior values + + if (bc_dir == 1) then !< x-direction + if (bc_loc == -1) then ! bc_x%beg + do i = 1, nvar + do j = 1, mapCells + 1 + y_kahan = real(q_beta(beta_vars(i))%sf(-j, k, l), kind=wp) + kahan_comp(beta_vars(i))%sf(-j, k, & + & l) - kahan_comp(beta_vars(i))%sf(j - 1, k, l) + t_kahan = real(q_beta(beta_vars(i))%sf(j - 1, k, l), kind=wp) + y_kahan + kahan_comp(beta_vars(i))%sf(j - 1, k, l) = (t_kahan - q_beta(beta_vars(i))%sf(j - 1, k, l)) - y_kahan + q_beta(beta_vars(i))%sf(j - 1, k, l) = t_kahan + end do + do j = 1, mapCells + 1 + q_beta(beta_vars(i))%sf(-j, k, l) = q_beta(beta_vars(i))%sf(j - 1, k, l) + kahan_comp(beta_vars(i))%sf(-j, k, l) = kahan_comp(beta_vars(i))%sf(j - 1, k, l) + end do + end do + else !< bc_y%end + do i = 1, nvar + do j = 1, mapCells + 1 + y_kahan = real(q_beta(beta_vars(i))%sf(m + j, k, l), kind=wp) + kahan_comp(beta_vars(i))%sf(m + j, k, & + & l) - kahan_comp(beta_vars(i))%sf(m - (j - 1), k, l) + t_kahan = real(q_beta(beta_vars(i))%sf(m - (j - 1), k, l), kind=wp) + y_kahan + kahan_comp(beta_vars(i))%sf(m - (j - 1), k, l) = (t_kahan - q_beta(beta_vars(i))%sf(m - (j - 1), k, & + & l)) - y_kahan + q_beta(beta_vars(i))%sf(m - (j - 1), k, l) = t_kahan + end do + do j = 1, mapCells + 1 + q_beta(beta_vars(i))%sf(m + j, k, l) = q_beta(beta_vars(i))%sf(m - (j - 1), k, l) + kahan_comp(beta_vars(i))%sf(m + j, k, l) = kahan_comp(beta_vars(i))%sf(m - (j - 1), k, l) + end do + end do + end if + else if (bc_dir == 2) then !< y-direction + if (bc_loc == -1) then !< bc_y%beg + do i = 1, nvar + do j = 1, mapCells + 1 + y_kahan = real(q_beta(beta_vars(i))%sf(k, -j, l), kind=wp) + kahan_comp(beta_vars(i))%sf(k, -j, & + & l) - kahan_comp(beta_vars(i))%sf(k, j - 1, l) + t_kahan = real(q_beta(beta_vars(i))%sf(k, j - 1, l), kind=wp) + y_kahan + kahan_comp(beta_vars(i))%sf(k, j - 1, l) = (t_kahan - q_beta(beta_vars(i))%sf(k, j - 1, l)) - y_kahan + q_beta(beta_vars(i))%sf(k, j - 1, l) = t_kahan + end do + do j = 1, mapCells + 1 + q_beta(beta_vars(i))%sf(k, -j, l) = q_beta(beta_vars(i))%sf(k, j - 1, l) + kahan_comp(beta_vars(i))%sf(k, -j, l) = kahan_comp(beta_vars(i))%sf(k, j - 1, l) + end do + end do + else !< bc_z%end + do i = 1, nvar + do j = 1, mapCells + 1 + y_kahan = real(q_beta(beta_vars(i))%sf(k, n + j, l), kind=wp) + kahan_comp(beta_vars(i))%sf(k, n + j, & + & l) - kahan_comp(beta_vars(i))%sf(k, n - (j - 1), l) + t_kahan = real(q_beta(beta_vars(i))%sf(k, n - (j - 1), l), kind=wp) + y_kahan + kahan_comp(beta_vars(i))%sf(k, n - (j - 1), l) = (t_kahan - q_beta(beta_vars(i))%sf(k, n - (j - 1), & + & l)) - y_kahan + q_beta(beta_vars(i))%sf(k, n - (j - 1), l) = t_kahan + end do + do j = 1, mapCells + 1 + q_beta(beta_vars(i))%sf(k, n + j, l) = q_beta(beta_vars(i))%sf(k, n - (j - 1), l) + kahan_comp(beta_vars(i))%sf(k, n + j, l) = kahan_comp(beta_vars(i))%sf(k, n - (j - 1), l) + end do + end do + end if + else if (bc_dir == 3) then !< z-direction + if (bc_loc == -1) then !< bc_z%beg + do i = 1, nvar + do j = 1, mapCells + 1 + y_kahan = real(q_beta(beta_vars(i))%sf(k, l, -j), kind=wp) + kahan_comp(beta_vars(i))%sf(k, l, & + & -j) - kahan_comp(beta_vars(i))%sf(k, l, j - 1) + t_kahan = real(q_beta(beta_vars(i))%sf(k, l, j - 1), kind=wp) + y_kahan + kahan_comp(beta_vars(i))%sf(k, l, j - 1) = (t_kahan - q_beta(beta_vars(i))%sf(k, l, j - 1)) - y_kahan + q_beta(beta_vars(i))%sf(k, l, j - 1) = t_kahan + end do + do j = 1, mapCells + 1 + q_beta(beta_vars(i))%sf(k, l, -j) = q_beta(beta_vars(i))%sf(k, l, j - 1) + kahan_comp(beta_vars(i))%sf(k, l, -j) = kahan_comp(beta_vars(i))%sf(k, l, j - 1) + end do + end do + else + do i = 1, nvar + do j = 1, mapCells + 1 + y_kahan = real(q_beta(beta_vars(i))%sf(k, l, p + j), kind=wp) + kahan_comp(beta_vars(i))%sf(k, l, & + & p + j) - kahan_comp(beta_vars(i))%sf(k, l, p - (j - 1)) + t_kahan = real(q_beta(beta_vars(i))%sf(k, l, p - (j - 1)), kind=wp) + y_kahan + kahan_comp(beta_vars(i))%sf(k, l, p - (j - 1)) = (t_kahan - q_beta(beta_vars(i))%sf(k, l, & + & p - (j - 1))) - y_kahan + q_beta(beta_vars(i))%sf(k, l, p - (j - 1)) = t_kahan + end do + do j = 1, mapCells + 1 + q_beta(beta_vars(i))%sf(k, l, p + j) = q_beta(beta_vars(i))%sf(k, l, p - (j - 1)) + kahan_comp(beta_vars(i))%sf(k, l, p + j) = kahan_comp(beta_vars(i))%sf(k, l, p - (j - 1)) + end do + end do + end if + end if + + end subroutine s_beta_reflective + + !> @brief Populates ghost cell buffers for the color function and its divergence used in capillary surface tension. impure subroutine s_populate_capillary_buffers(c_divs, bc_type) type(scalar_field), dimension(num_dims + 1), intent(inout) :: c_divs @@ -1051,7 +1448,7 @@ contains if (bc_x%beg >= 0) then call s_mpi_sendrecv_variables_buffers(c_divs, 1, -1, num_dims + 1) - else + else !< bc_x%end $:GPU_PARALLEL_LOOP(private='[l, k]', collapse=2) do l = 0, p do k = 0, n @@ -1112,7 +1509,7 @@ contains if (bc_y%end >= 0) then call s_mpi_sendrecv_variables_buffers(c_divs, 2, 1, num_dims + 1) - else + else !< bc_y%end $:GPU_PARALLEL_LOOP(private='[l, k]', collapse=2) do l = 0, p do k = -buff_size, m + buff_size @@ -1175,7 +1572,7 @@ contains end subroutine s_populate_capillary_buffers - !> Apply periodic boundary conditions to the color function and its divergence fields. + !> @brief Applies periodic boundary conditions to the color function and its divergence fields. subroutine s_color_function_periodic(c_divs, bc_dir, bc_loc, k, l) $:GPU_ROUTINE(function_name='s_color_function_periodic', parallelism='[seq]', cray_inline=True) @@ -1191,7 +1588,7 @@ contains c_divs(i)%sf(-j, k, l) = c_divs(i)%sf(m - (j - 1), k, l) end do end do - else !< bc_x%end + else !< bc_z%end do i = 1, num_dims + 1 do j = 1, buff_size c_divs(i)%sf(m + j, k, l) = c_divs(i)%sf(j - 1, k, l) @@ -1205,7 +1602,7 @@ contains c_divs(i)%sf(k, -j, l) = c_divs(i)%sf(k, n - (j - 1), l) end do end do - else !< bc_y%end + else do i = 1, num_dims + 1 do j = 1, buff_size c_divs(i)%sf(k, n + j, l) = c_divs(i)%sf(k, j - 1, l) @@ -1219,7 +1616,7 @@ contains c_divs(i)%sf(k, l, -j) = c_divs(i)%sf(k, l, p - (j - 1)) end do end do - else !< bc_z%end + else !< bc_x%end do i = 1, num_dims + 1 do j = 1, buff_size c_divs(i)%sf(k, l, p + j) = c_divs(i)%sf(k, l, j - 1) @@ -1230,7 +1627,7 @@ contains end subroutine s_color_function_periodic - !> Apply reflective boundary conditions to the color function and its divergence fields. + !> @brief Applies reflective boundary conditions to the color function and its divergence fields. subroutine s_color_function_reflective(c_divs, bc_dir, bc_loc, k, l) $:GPU_ROUTINE(function_name='s_color_function_reflective', parallelism='[seq]', cray_inline=True) @@ -1245,12 +1642,12 @@ contains do j = 1, buff_size if (i == bc_dir) then c_divs(i)%sf(-j, k, l) = -c_divs(i)%sf(j - 1, k, l) - else + else !< bc_y%end c_divs(i)%sf(-j, k, l) = c_divs(i)%sf(j - 1, k, l) end if end do end do - else !< bc_x%end + else !< bc_z%end do i = 1, num_dims + 1 do j = 1, buff_size if (i == bc_dir) then @@ -1272,7 +1669,7 @@ contains end if end do end do - else !< bc_y%end + else do i = 1, num_dims + 1 do j = 1, buff_size if (i == bc_dir) then @@ -1294,7 +1691,7 @@ contains end if end do end do - else !< bc_z%end + else do i = 1, num_dims + 1 do j = 1, buff_size if (i == bc_dir) then @@ -1309,7 +1706,7 @@ contains end subroutine s_color_function_reflective - !> Extrapolate the color function and its divergence into ghost cells by copying boundary values. + !> @brief Extrapolates the color function and its divergence into ghost cells by copying boundary values. subroutine s_color_function_ghost_cell_extrapolation(c_divs, bc_dir, bc_loc, k, l) $:GPU_ROUTINE(function_name='s_color_function_ghost_cell_extrapolation', parallelism='[seq]', cray_inline=True) @@ -1364,7 +1761,7 @@ contains end subroutine s_color_function_ghost_cell_extrapolation - !> Populate ghost cell buffers for the Jacobian scalar field used in the IGR elliptic solver. + !> @brief Populates ghost cell buffers for the Jacobian scalar field used in the IGR elliptic solver. impure subroutine s_populate_F_igr_buffers(bc_type, jac_sf) type(integer_field), dimension(1:num_dims,1:2), intent(in) :: bc_type @@ -1531,7 +1928,7 @@ contains end subroutine s_populate_F_igr_buffers - !> Create MPI derived datatypes for boundary condition type arrays and buffer arrays used in parallel I/O. + !> @brief Creates MPI derived datatypes for boundary condition type arrays and buffer arrays used in parallel I/O. impure subroutine s_create_mpi_types(bc_type) type(integer_field), dimension(1:num_dims,1:2), intent(in) :: bc_type @@ -1566,7 +1963,7 @@ contains end subroutine s_create_mpi_types - !> Write boundary condition type and buffer data to serial (unformatted) restart files. + !> @brief Writes boundary condition type and buffer data to serial (unformatted) restart files. subroutine s_write_serial_boundary_condition_files(q_prim_vf, bc_type, step_dirpath, old_grid_in) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -1605,7 +2002,7 @@ contains end subroutine s_write_serial_boundary_condition_files - !> Write boundary condition type and buffer data to per-rank parallel files using MPI I/O. + !> @brief Writes boundary condition type and buffer data to per-rank parallel files using MPI I/O. subroutine s_write_parallel_boundary_condition_files(q_prim_vf, bc_type) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -1670,7 +2067,7 @@ contains end subroutine s_write_parallel_boundary_condition_files - !> Read boundary condition type and buffer data from serial (unformatted) restart files. + !> @brief Reads boundary condition type and buffer data from serial (unformatted) restart files. subroutine s_read_serial_boundary_condition_files(step_dirpath, bc_type) character(LEN=*), intent(in) :: step_dirpath @@ -1715,7 +2112,7 @@ contains end subroutine s_read_serial_boundary_condition_files - !> Read boundary condition type and buffer data from per-rank parallel files using MPI I/O. + !> @brief Reads boundary condition type and buffer data from per-rank parallel files using MPI I/O. subroutine s_read_parallel_boundary_condition_files(bc_type) type(integer_field), dimension(1:num_dims,1:2), intent(inout) :: bc_type @@ -1780,7 +2177,7 @@ contains end subroutine s_read_parallel_boundary_condition_files - !> Pack primitive variable boundary slices into bc_buffers arrays for serialization. + !> @brief Packs primitive variable boundary slices into bc_buffers arrays for serialization. subroutine s_pack_boundary_condition_buffers(q_prim_vf) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -1823,7 +2220,7 @@ contains end subroutine s_pack_boundary_condition_buffers - !> Initialize the per-cell boundary condition type arrays with the global default BC values. + !> @brief Initializes the per-cell boundary condition type arrays with the global default BC values. subroutine s_assign_default_bc_type(bc_type) type(integer_field), dimension(1:num_dims,1:2), intent(in) :: bc_type @@ -1849,8 +2246,8 @@ contains end subroutine s_assign_default_bc_type - !> Populate the buffers of the grid variables, which are constituted of the cell-boundary locations and cell-width - !! distributions, based on the boundary conditions. + !> The purpose of this subroutine is to populate the buffers of the grid variables, which are constituted of the cell- boundary + !! locations and cell-width distributions, based on the boundary conditions. subroutine s_populate_grid_variables_buffers integer :: i @@ -1858,10 +2255,33 @@ contains #ifdef MFC_SIMULATION ! Required for compatibility between codes type(int_bounds_info) :: offset_x, offset_y, offset_z - offset_x%beg = buff_size; offset_x%end = buff_size offset_y%beg = buff_size; offset_y%end = buff_size offset_z%beg = buff_size; offset_z%end = buff_size + +#ifdef MFC_MPI + ! Populate global domain boundaries with stretched grids + call s_mpi_allreduce_min(x_cb(-1), glb_bounds(1)%beg) + call s_mpi_allreduce_max(x_cb(m), glb_bounds(1)%end) + + if (n > 0) then + call s_mpi_allreduce_min(y_cb(-1), glb_bounds(2)%beg) + call s_mpi_allreduce_max(y_cb(n), glb_bounds(2)%end) + if (p > 0) then + call s_mpi_allreduce_min(z_cb(-1), glb_bounds(3)%beg) + call s_mpi_allreduce_max(z_cb(p), glb_bounds(3)%end) + end if + end if +#else + glb_bounds(1)%beg = x_cb(-1); glb_bounds(1)%end = x_cb(m) + if (n > 0) then + glb_bounds(2)%beg = y_cb(-1); glb_bounds(2)%end = y_cb(n) + if (p > 0) then + glb_bounds(3)%beg = z_cb(-1); glb_bounds(3)%end = z_cb(p) + end if + end if +#endif + $:GPU_UPDATE(device='[glb_bounds]') #endif #ifndef MFC_PRE_PROCESS @@ -1918,6 +2338,7 @@ contains do i = 1, buff_size x_cc(m + i) = x_cc(m + (i - 1)) + (dx(m + (i - 1)) + dx(m + i))/2._wp end do + ! END: Population of Buffers in x-direction ! Population of Buffers in y-direction @@ -1974,6 +2395,7 @@ contains do i = 1, buff_size y_cc(n + i) = y_cc(n + (i - 1)) + (dy(n + (i - 1)) + dy(n + i))/2._wp end do + ! END: Population of Buffers in y-direction ! Population of Buffers in z-direction @@ -2030,11 +2452,12 @@ contains do i = 1, buff_size z_cc(p + i) = z_cc(p + (i - 1)) + (dz(p + (i - 1)) + dz(p + i))/2._wp end do + ! END: Population of Buffers in z-direction #endif end subroutine s_populate_grid_variables_buffers - !> Deallocate boundary condition buffer arrays allocated during module initialization. + !> @brief Deallocates boundary condition buffer arrays allocated during module initialization. subroutine s_finalize_boundary_common_module() if (bc_io) then diff --git a/src/common/m_checker_common.fpp b/src/common/m_checker_common.fpp index df71030ec9..eafd01803a 100644 --- a/src/common/m_checker_common.fpp +++ b/src/common/m_checker_common.fpp @@ -32,7 +32,7 @@ contains end subroutine s_check_inputs_common #ifndef MFC_SIMULATION - !> Verify that the total number of grid cells meets the minimum required by the number of dimensions and MPI ranks. + !> @brief Verifies that the total number of grid cells meets the minimum required by the number of dimensions and MPI ranks. impure subroutine s_check_total_cells character(len=18) :: numStr !< for int to string conversion @@ -42,13 +42,13 @@ contains call s_int_to_str(2**(min(1, m) + min(1, n) + min(1, p))*num_procs, numStr) @:PROHIBIT(nGlobal < min_cells, & - & "Total number of cells must be at least (2^[number of dimensions])*num_procs, " // "which is currently " & - & // trim(numStr)) + & "Total number of cells must be at least (2^[number of dimensions])*num_procs, " & + & // "which is currently "//trim(numStr)) end subroutine s_check_total_cells #endif - !> Check that simulation parameters stay within AMD GPU compiler limits when case optimization is disabled. + !> @brief Checks that simulation parameters stay within AMD GPU compiler limits when case optimization is disabled. impure subroutine s_check_amd #:if not MFC_CASE_OPTIMIZATION diff --git a/src/common/m_chemistry.fpp b/src/common/m_chemistry.fpp index 66f1e97923..7ffb622e13 100644 --- a/src/common/m_chemistry.fpp +++ b/src/common/m_chemistry.fpp @@ -31,7 +31,7 @@ module m_chemistry contains - !> Compute mixture viscosities for left and right states and invert them for use as reciprocal Reynolds numbers. + !> @brief Computes mixture viscosities for left and right states and inverts them for use as reciprocal Reynolds numbers. subroutine compute_viscosity_and_inversion(T_L, Ys_L, T_R, Ys_R, Re_L, Re_R) $:GPU_ROUTINE(function_name='compute_viscosity_and_inversion',parallelism='[seq]', cray_inline=True) @@ -41,13 +41,12 @@ contains call get_mixture_viscosity_mixavg(T_L, Ys_L, Re_L) call get_mixture_viscosity_mixavg(T_R, Ys_R, Re_R) - ! Convert dynamic viscosity to inverse (MFC stores 1/mu for Reynolds number convention) Re_L = 1.0_wp/Re_L Re_R = 1.0_wp/Re_R end subroutine compute_viscosity_and_inversion - !> Initialize the temperature field from conservative variables by inverting the energy equation. + !> @brief Initializes the temperature field from conservative variables by inverting the energy equation. subroutine s_compute_q_T_sf(q_T_sf, q_cons_vf, bounds) ! Initialize the temperature field at the start of the simulation to reasonable values. Temperature is computed the regular @@ -82,7 +81,7 @@ contains end subroutine s_compute_q_T_sf - !> Compute the temperature field from primitive variables using the ideal gas law and mixture molecular weight. + !> @brief Computes the temperature field from primitive variables using the ideal gas law and mixture molecular weight. subroutine s_compute_T_from_primitives(q_T_sf, q_prim_vf, bounds) type(scalar_field), intent(inout) :: q_T_sf @@ -107,7 +106,7 @@ contains end subroutine s_compute_T_from_primitives - !> Add chemical reaction source terms to the species transport RHS using net production rates. + !> @brief Adds chemical reaction source terms to the species transport RHS using net production rates. subroutine s_compute_chemistry_reaction_flux(rhs_vf, q_cons_qp, q_T_sf, q_prim_qp, bounds) type(scalar_field), dimension(sys_size), intent(inout) :: rhs_vf @@ -157,7 +156,7 @@ contains end subroutine s_compute_chemistry_reaction_flux - !> Compute species mass diffusion fluxes at cell interfaces using mixture-averaged diffusivities. + !> @brief Computes species mass diffusion fluxes at cell interfaces using mixture-averaged diffusivities. subroutine s_compute_chemistry_diffusion_flux(idir, q_prim_qp, flux_src_vf, irx, iry, irz) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_qp diff --git a/src/common/m_compile_specific.f90 b/src/common/m_compile_specific.f90 index 9d79811320..bba8d62f74 100644 --- a/src/common/m_compile_specific.f90 +++ b/src/common/m_compile_specific.f90 @@ -12,7 +12,8 @@ module m_compile_specific contains - !> Create a directory and all its parents if it does not exist + !> Creates a directory and all its parents if it does not exist + !! @param dir_name Directory path impure subroutine s_create_directory(dir_name) character(LEN=*), intent(in) :: dir_name @@ -25,7 +26,7 @@ impure subroutine s_create_directory(dir_name) end subroutine s_create_directory - !> Delete a file at the given path using a platform-specific system command. + !> @brief Deletes a file at the given path using a platform-specific system command. impure subroutine s_delete_file(filepath) character(LEN=*), intent(in) :: filepath @@ -38,7 +39,7 @@ impure subroutine s_delete_file(filepath) end subroutine s_delete_file - !> Recursively delete a directory using a platform-specific system command. + !> @brief Recursively deletes a directory using a platform-specific system command. impure subroutine s_delete_directory(dir_name) character(LEN=*), intent(in) :: dir_name @@ -52,6 +53,7 @@ impure subroutine s_delete_directory(dir_name) end subroutine s_delete_directory !> Inquires on the existence of a directory + !! @param fileloc File directory location !! @param dircheck Switch that indicates if directory exists impure subroutine my_inquire(fileloc, dircheck) @@ -66,7 +68,7 @@ impure subroutine my_inquire(fileloc, dircheck) end subroutine my_inquire - !> Retrieve the current working directory path via the GETCWD intrinsic. + !> @brief Retrieves the current working directory path via the GETCWD intrinsic. impure subroutine s_get_cwd(cwd) character(LEN=*), intent(out) :: cwd @@ -75,7 +77,7 @@ impure subroutine s_get_cwd(cwd) end subroutine s_get_cwd - !> Extract the base filename from a directory path using the system basename command. + !> @brief Extracts the base filename from a directory path using the system basename command. impure subroutine s_get_basename(dirpath, basename) character(LEN=*), intent(in) :: dirpath diff --git a/src/common/m_constants.fpp b/src/common/m_constants.fpp index 8e01059691..3e5cedefd2 100644 --- a/src/common/m_constants.fpp +++ b/src/common/m_constants.fpp @@ -42,13 +42,16 @@ module m_constants real(wp), parameter :: broadband_spectral_level_constant = 20._wp !> The spectral level constant to correct the magnitude at each frequency to ensure the source is overall broadband real(wp), parameter :: broadband_spectral_level_growth_rate = 10._wp + ! Reconstruction Types integer, parameter :: WENO_TYPE = 1 !< Using WENO for reconstruction type integer, parameter :: MUSCL_TYPE = 2 !< Using MUSCL for reconstruction type + ! Interface Compression real(wp), parameter :: dflt_ic_eps = 1e-4_wp !< Ensure compression is only applied to surface cells in THINC real(wp), parameter :: dflt_ic_beta = 1.6_wp !< Sharpness parameter's default value used in THINC real(wp), parameter :: moncon_cutoff = 1e-8_wp !< Monotonicity constraint's limiter to prevent extremas in THINC + ! Chemistry real(wp), parameter :: dflt_T_guess = 1200._wp !< Default guess for temperature (when a previous value is not available) @@ -58,14 +61,18 @@ module m_constants real(wp), parameter :: threshold_vector_zero = 1.e-10_wp !< Threshold to treat the component of a vector to be zero real(wp), parameter :: threshold_edge_zero = 1.e-10_wp !< Threshold to treat two edges to be overlapped real(wp), parameter :: initial_distance_buffer = 1.e12_wp !< Initialized levelset distance for the shortest path pair algorithm + ! Lagrange bubbles constants - integer, parameter :: mapCells = 3 !< Number of cells around the bubble where the smoothening function will have effect + integer, parameter :: mapCells = 3 !< Number of cells around the bubble where the smoothening function will have effect + !> q_beta indices to communicate: 1=void fraction, 2=d(beta)/dt, 5=energy source + integer, parameter :: beta_vars(1:3) = [1, 2, 5] real(wp), parameter :: R_uni = 8314._wp !< Universal gas constant - J/kmol/K integer, parameter :: lag_io_vars = 21 !< Number of variables per particle for MPI_IO ! Strang Splitting constants real(wp), parameter :: dflt_adap_dt_tol = 1.e-4_wp !< Default tolerance for adaptive step size integer, parameter :: dflt_adap_dt_max_iters = 100 !< Default max iteration for adaptive step size + ! Constants of the algorithm described by Heirer, E. Hairer, S. P.Norsett, G. Wanner, Solving Ordinary Differential Equations I, ! Chapter II.4 to choose the initial time step size for the adaptive time stepping routine real(wp), parameter :: threshold_first_guess = 1.e-5_wp !< Threshold for initial step size estimate @@ -75,10 +82,9 @@ module m_constants real(wp), parameter :: small_guess = 1.e-6_wp !< Minimum initial step size ! Relativity - !> Max Newton-Raphson iterations for relativistic primitive recovery integer, parameter :: relativity_cons_to_prim_max_iter = 100 - ! Linear congruential pseudo-random number generator parameters + ! Pseudo-random number generator integer, parameter :: modulus = 2**30 - 1 !< PRNG modulus integer, parameter :: multiplier = 1664525 !< PRNG multiplier integer, parameter :: increment = 1013904223 !< PRNG increment diff --git a/src/common/m_delay_file_access.f90 b/src/common/m_delay_file_access.f90 index 0f154af46c..95e310a01f 100644 --- a/src/common/m_delay_file_access.f90 +++ b/src/common/m_delay_file_access.f90 @@ -17,7 +17,7 @@ module m_delay_file_access contains - !> Introduce a rank-dependent busy-wait delay to stagger parallel file access and reduce I/O contention. + !> @brief Introduces a rank-dependent busy-wait delay to stagger parallel file access and reduce I/O contention. impure subroutine DelayFileAccess(ProcessRank) integer, intent(in) :: ProcessRank @@ -27,6 +27,7 @@ impure subroutine DelayFileAccess(ProcessRank) nFileAccessDelayIterations = (ProcessRank/N_PROCESSES_FILE_ACCESS)*FILE_ACCESS_DELAY_UNIT do iDelay = 1, nFileAccessDelayIterations + ! Wait my turn call random_number(Number) Dummy = Number*Number end do diff --git a/src/common/m_derived_types.fpp b/src/common/m_derived_types.fpp index 0c00de90d7..89a2d0b15c 100644 --- a/src/common/m_derived_types.fpp +++ b/src/common/m_derived_types.fpp @@ -187,9 +187,15 @@ module m_derived_types type ic_patch_parameters integer :: geometry !< Type of geometry for the patch + + !> Location of the geometric center, i.e. the centroid, of the patch. It is specified through its x-, y- and z-coordinates, + !! respectively. real(wp) :: x_centroid, y_centroid, z_centroid !< Geometric center coordinates of the patch - real(wp) :: length_x, length_y, length_z !< Dimensions of the patch. x,y,z Lengths. - real(wp) :: radius !< Dimensions of the patch. radius. + real(wp) :: length_x, length_y, length_z !< Dimensions of the patch. x,y,z Lengths. + real(wp) :: radius !< Dimensions of the patch. radius. + + !> Vector indicating the various radii for the elliptical and ellipsoidal patch geometries. It is specified through its x-, + !! y-, and z-components respectively. real(wp), dimension(3) :: radii !< Elliptical/ellipsoidal patch radii in x, y, z real(wp) :: epsilon, beta !< The isentropic vortex parameters for the amplitude of the disturbance and domain of influence. real(wp), dimension(2:9) :: a !< Used by hardcoded IC and as temporary variables. @@ -200,53 +206,66 @@ module m_derived_types logical :: modal_clip_r_to_min !< When true, clip boundary radius: R(theta) = max(R(theta), modal_r_min) (Non-exp form only) real(wp) :: modal_r_min !< Minimum boundary radius when modal_clip_r_to_min is true (Non-exp form only) logical :: modal_use_exp_form !< When true, boundary = radius*exp(Fourier series) + ! Geometry 14 (3D spherical harmonic): sph_har_coeff(l,m) for real Y_lm real(wp), dimension(0:max_sph_harm_degree,-max_sph_harm_degree:max_sph_harm_degree) :: sph_har_coeff + + !> Normal vector indicating the orientation of the patch. It is specified through its x-, y- and z-components, respectively. real(wp), dimension(3) :: normal !< Patch orientation normal vector (x, y, z) + + !> List of permissions that indicate to the current patch which preceding patches it is allowed to overwrite when it is in + !! process of being laid out in the domain logical, dimension(0:num_patches_max - 1) :: alter_patch !< Overwrite permissions for preceding patches - logical :: smoothen !< Whether patch boundaries are smoothed across cells + + !> Permission indicating to the current patch whether its boundaries will be smoothed out across a few cells or whether they + !! are to remain sharp + logical :: smoothen !< Whether patch boundaries are smoothed across cells integer :: smooth_patch_id !< Identity (id) of the patch with which current patch is to get smoothed - real(wp) :: smooth_coeff !< Smoothing stencil size coefficient + + !> Smoothing coefficient (coeff) for the size of the stencil of cells across which boundaries of the current patch will be + !! smeared out + real(wp) :: smooth_coeff !< Smoothing stencil size coefficient real(wp), dimension(num_fluids_max) :: alpha_rho - real(wp) :: rho - real(wp), dimension(3) :: vel - real(wp) :: pres + real(wp) :: rho + real(wp), dimension(3) :: vel + real(wp) :: pres real(wp), dimension(num_fluids_max) :: alpha - real(wp) :: gamma - real(wp) :: pi_inf - real(wp) :: cv - real(wp) :: qv - real(wp) :: qvp !< Reference entropy per unit mass (SGEOS) - real(wp) :: Bx, By, Bz !< Magnetic field components; B%x is not used for 1D - real(wp), dimension(6) :: tau_e !< Elastic stresses added to primitive variables if hypoelasticity = True - real(wp) :: R0 !< Bubble size - real(wp) :: V0 !< Bubble velocity - real(wp) :: p0 !< Bubble size - real(wp) :: m0 !< Bubble velocity - integer :: hcid !< Hardcoded initial condition ID - real(wp) :: cf_val !< Color function value - real(wp) :: Y(1:num_species) !< Species mass fractions - - ! STL or OBJ model input parameter - character(LEN=pathlen_max) :: model_filepath !< Path the STL file relative to case_dir. - real(wp), dimension(1:3) :: model_translate !< Translation of the STL object. - real(wp), dimension(1:3) :: model_scale !< Scale factor for the STL object. - !> Angle to rotate the STL object along each cartesian coordinate axis, in radians. - real(wp), dimension(1:3) :: model_rotate - integer :: model_spc !< Number of samples per cell to use when discretizing the STL object. - real(wp) :: model_threshold !< Threshold to turn on smoothen STL patch. + real(wp) :: gamma + real(wp) :: pi_inf + real(wp) :: cv + real(wp) :: qv + !> Primitive variables associated with the patch. In order, these include the partial densities, density, velocity, + !! pressure, volume fractions, specific heat ratio function and the liquid stiffness function. + real(wp) :: qvp !< Reference entropy per unit mass (SGEOS) + real(wp) :: Bx, By, Bz !< Magnetic field components; B%x is not used for 1D + real(wp), dimension(6) :: tau_e !< Elastic stresses added to primitive variables if hypoelasticity = True + real(wp) :: R0 !< Bubble size + real(wp) :: V0 !< Bubble velocity + real(wp) :: p0 !< Bubble size + real(wp) :: m0 !< Bubble velocity + integer :: hcid !< Hardcoded initial condition ID id for hard coded initial condition + real(wp) :: cf_val !< Color function value + real(wp) :: Y(1:num_species) !< Species mass fractions STL or OBJ model input parameter + character(LEN=pathlen_max) :: model_filepath !< Path the STL file relative to case_dir. + real(wp), dimension(1:3) :: model_translate !< Translation of the STL object. + real(wp), dimension(1:3) :: model_scale !< Scale factor for the STL object. + real(wp), dimension(1:3) :: model_rotate + integer :: model_spc !< Number of samples per cell to use when discretizing the STL object. + real(wp) :: model_threshold !< Threshold to turn on smoothen STL patch. end type ic_patch_parameters type ib_patch_parameters - integer :: geometry !< Type of geometry for the patch + integer :: geometry !< Type of geometry for the patch + + !> Location of the geometric center, i.e. the centroid, of the patch. It is specified through its x-, y- and z-coordinates, + !! respectively. real(wp) :: x_centroid, y_centroid, z_centroid !< Geometric center coordinates of the patch !> Centroid locations of intermediate steps in the time_stepper module - real(wp) :: step_x_centroid, step_y_centroid, step_z_centroid - real(wp), dimension(1:3) :: centroid_offset !< offset of center of mass from computed cell center for odd-shaped IBs - real(wp), dimension(1:3) :: angles - real(wp), dimension(1:3) :: step_angles - !> matrix that converts from IB reference frame to fluid reference frame + real(wp) :: step_x_centroid, step_y_centroid, step_z_centroid + real(wp), dimension(1:3) :: centroid_offset !< offset of center of mass from computed cell center for odd-shaped IBs + real(wp), dimension(1:3) :: angles + real(wp), dimension(1:3) :: step_angles real(wp), dimension(1:3,1:3) :: rotation_matrix !> matrix that converts from fluid reference frame to IB reference frame real(wp), dimension(1:3,1:3) :: rotation_matrix_inverse @@ -256,11 +275,10 @@ module m_derived_types real(wp) :: theta logical :: slip - ! STL or OBJ model input parameter - character(LEN=pathlen_max) :: model_filepath !< Path the STL file relative to case_dir. - real(wp), dimension(1:3) :: model_translate !< Translation of the STL object. - real(wp), dimension(1:3) :: model_scale !< Scale factor for the STL object. - !> Angle to rotate the STL object along each cartesian coordinate axis, in radians. + !! STL or OBJ model input parameter + character(LEN=pathlen_max) :: model_filepath !< Path the STL file relative to case_dir. + real(wp), dimension(1:3) :: model_translate !< Translation of the STL object. + real(wp), dimension(1:3) :: model_scale !< Scale factor for the STL object. real(wp), dimension(1:3) :: model_rotate integer :: model_spc !< Number of samples per cell to use when discretizing the STL object. real(wp) :: model_threshold !< Threshold to turn on smoothen STL patch. Patch conditions for moving imersed boundaries @@ -396,18 +414,25 @@ module m_derived_types !> Lagrangian bubble parameters type bubbles_lagrange_parameters - integer :: solver_approach !< 1: One-way coupling, 2: two-way coupling - integer :: cluster_type !< Cluster model to find p_inf - logical :: pressure_corrector !< Cell pressure correction term - integer :: smooth_type !< Smoothing function. 1: Gaussian, 2:Delta 3x3 - logical :: heatTransfer_model !< Activate HEAT transfer model at the bubble-liquid interface - logical :: massTransfer_model !< Activate MASS transfer model at the bubble-liquid interface - logical :: write_bubbles !< Write files to track the bubble evolution each time step - logical :: write_bubbles_stats !< Write the maximum and minimum radius of each bubble - integer :: nBubs_glb !< Global number of bubbles - real(wp) :: epsilonb !< Standard deviation scaling for the gaussian function - real(wp) :: charwidth !< Domain virtual depth (z direction, for 2D simulations) - real(wp) :: valmaxvoid !< Maximum void fraction permitted + integer :: solver_approach !< 1: One-way coupling, 2: two-way coupling + integer :: cluster_type !< Cluster model to find p_inf + logical :: pressure_corrector !< Cell pressure correction term + integer :: smooth_type !< Smoothing function. 1: Gaussian, 2:Delta 3x3 + logical :: heatTransfer_model !< Activate HEAT transfer model at the bubble-liquid interface + logical :: massTransfer_model !< Activate MASS transfer model at the bubble-liquid interface + logical :: write_void_evol !< Write files to track evolution of void fraction at each time step + logical :: write_bubbles !< Write files to track the bubble evolution each time step + logical :: write_bubbles_stats !< Write the maximum and minimum radius of each bubble + integer :: nBubs_glb !< Global number of bubbles + integer :: vel_model !< Particle velocity model + integer :: drag_model !< Particle drag model + logical :: pressure_force !< Include pressure force translational motion + logical :: gravity_force !< Include gravity force in translational motion + character(LEN=pathlen_max) :: input_path !< Path to lag_bubbles.dat + real(wp) :: epsilonb !< Standard deviation scaling for the gaussian function + real(wp) :: charwidth !< Domain virtual depth (z direction, for 2D simulations) + integer :: charNz !< Number of grid cells in characteristic depth + real(wp) :: valmaxvoid !< Maximum void fraction permitted end type bubbles_lagrange_parameters !> Max and min number of cells in a direction of each combination of x-,y-, and z- diff --git a/src/common/m_finite_differences.fpp b/src/common/m_finite_differences.fpp index f26c203dcd..9db868add1 100644 --- a/src/common/m_finite_differences.fpp +++ b/src/common/m_finite_differences.fpp @@ -13,7 +13,6 @@ module m_finite_differences contains - !> Accumulate the finite-difference divergence of a vector field onto a scalar field. subroutine s_compute_fd_divergence(div, fields, ix_s, iy_s, iz_s) type(scalar_field), intent(inout) :: div @@ -70,9 +69,14 @@ contains end subroutine s_compute_fd_divergence - !> Compute the centered finite-difference coefficients for first-order spatial derivatives in the s-coordinate direction (x, y, - !! or z). Supports up to 4th order accuracy. + !> The purpose of this subroutine is to compute the finite- difference coefficients for the centered schemes utilized in + !! computations of first order spatial derivatives in the s-coordinate direction. The s-coordinate direction refers to the x-, + !! y- or z-coordinate direction, depending on the subroutine's inputs. Note that coefficients of up to 4th order accuracy are + !! available. + !! @param q Number of cells in the s-coordinate direction + !! @param s_cc Locations of the cell-centers in the s-coordinate direction !! @param fd_coeff_s Finite-diff. coefficients in the s-coordinate direction + !! @param local_buff_size Size of the local buffer !! @param fd_number_in Finite-difference number !! @param fd_order_in Finite-difference order of accuracy !! @param offset_s Optional offset bounds in the s-coordinate direction diff --git a/src/common/m_helper.fpp b/src/common/m_helper.fpp index 4074530a8f..7af699cfd4 100644 --- a/src/common/m_helper.fpp +++ b/src/common/m_helper.fpp @@ -23,6 +23,10 @@ module m_helper contains !> Computes the bubble number density n from the primitive variables + !! @param vftmp is the void fraction + !! @param Rtmp is the bubble radii + !! @param ntmp is the output number bubble density + !! @param weights is the quadrature weights subroutine s_comp_n_from_prim(vftmp, Rtmp, ntmp, weights) $:GPU_ROUTINE(parallelism='[seq]') @@ -37,7 +41,7 @@ contains end subroutine s_comp_n_from_prim - !> Compute the bubble number density from the conservative void fraction and weighted bubble radii. + !> @brief Computes the bubble number density from the conservative void fraction and weighted bubble radii. subroutine s_comp_n_from_cons(vftmp, nRtmp, ntmp, weights) $:GPU_ROUTINE(parallelism='[seq]') @@ -52,7 +56,7 @@ contains end subroutine s_comp_n_from_cons - !> Print a 2D real array to standard output, optionally dividing each element by a given scalar. + !> @brief Prints a 2D real array to standard output, optionally dividing each element by a given scalar. impure subroutine s_print_2D_array(A, div) real(wp), dimension(:,:), intent(in) :: A @@ -82,7 +86,7 @@ contains end subroutine s_print_2D_array - !> Initialize bubble model arrays for Euler or Lagrangian bubbles with polytropic or non-polytropic gas. + !> bubbles_euler + polytropic bubbles_euler + non-polytropic bubbles_lagrange + non-polytropic impure subroutine s_initialize_bubbles_model() ! Allocate memory @@ -112,7 +116,7 @@ contains end subroutine s_initialize_bubbles_model - !> Set bubble physical parameters and nondimensional numbers from the input configuration. + !> impure subroutine s_initialize_bubble_vars() R0ref = bub_pp%R0ref; p0ref = bub_pp%p0ref @@ -128,6 +132,7 @@ contains R_v = bub_pp%R_v; R_g = bub_pp%R_g Tw = bub_pp%T0ref end if + if (bubbles_lagrange) then cp_v = bub_pp%cp_v; cp_g = bub_pp%cp_g k_vl = bub_pp%k_v; k_gl = bub_pp%k_g @@ -171,18 +176,19 @@ contains integer :: ir real(wp), dimension(nb) :: chi_vw0, cp_m0, k_m0, rho_m0, x_vw, omegaN, rhol0 real(wp), parameter :: k_poly = 1._wp !< polytropic index used to compute isothermal natural frequency - ! Chapman-Enskog transport coefficients for vapor-gas mixture, Ando JAS (2010) + + ! phi_vg & phi_gv (phi_gg = phi_vv = 1) (Eq. 2.22 in Ando 2010) phi_vg = (1._wp + sqrt(mu_v/mu_g)*(M_g/M_v)**(0.25_wp))**2/(sqrt(8._wp)*sqrt(1._wp + M_v/M_g)) phi_gv = (1._wp + sqrt(mu_g/mu_v)*(M_v/M_g)**(0.25_wp))**2/(sqrt(8._wp)*sqrt(1._wp + M_g/M_v)) - ! Initial internal bubble pressure (Euler number + Laplace pressure) + ! internal bubble pressure pb0 = Eu + 2._wp/Web/R0 - ! Vapor mass fraction at bubble wall, Ando JAS (2010) + ! mass fraction of vapor (Eq. 2.19 in Ando 2010) chi_vw0 = 1._wp/(1._wp + R_v/R_g*(pb0/pv - 1._wp)) - ! Mixture specific heat from mass-weighted vapor/gas contributions + ! specific heat for gas/vapor mixture cp_m0 = chi_vw0*R_v*gam_v/(gam_v - 1._wp) + (1._wp - chi_vw0)*R_g*gam_g/(gam_g - 1._wp) ! mole fraction of vapor (Eq. 2.23 in Ando 2010) @@ -203,7 +209,7 @@ contains ! Peclet numbers Pe_T(:) = rho_m0*cp_m0(:)/k_m0(:) - ! Bubble natural frequency, Ando JAS (2010) + ! natural frequencies (Eq. B.1) omegaN(:) = sqrt(3._wp*k_poly*Ca + 2._wp*(3._wp*k_poly - 1._wp)/(Web*R0))/R0/sqrt(rho0ref) do ir = 1, nb call s_transcoeff(omegaN(ir)*R0(ir), Pe_T(ir)*R0(ir), Re_trans_T(ir), Im_trans_T(ir)) @@ -214,6 +220,10 @@ contains end subroutine s_initialize_nonpoly !> Computes the transfer coefficient for the non-polytropic bubble compression process + !! @param omega natural frequencies + !! @param peclet Peclet number + !! @param Re_trans Real part of the transport coefficients + !! @param Im_trans Imaginary part of the transport coefficients elemental subroutine s_transcoeff(omega, peclet, Re_trans, Im_trans) real(wp), intent(in) :: omega, peclet @@ -232,7 +242,7 @@ contains end subroutine s_transcoeff - !> Convert an integer to its trimmed string representation. + !> @brief Converts an integer to its trimmed string representation. elemental subroutine s_int_to_str(i, res) integer, intent(in) :: i @@ -283,7 +293,10 @@ contains end subroutine s_simpson - !> Compute the cross product of two vectors. + !> This procedure computes the cross product of two vectors. + !! @param a First vector. + !! @param b Second vector. + !! @return The cross product of the two vectors. pure function f_cross(a, b) result(c) $:GPU_ROUTINE(parallelism='[seq]') @@ -297,7 +310,9 @@ contains end function f_cross - !> Swap two real numbers. + !> This procedure swaps two real numbers. + !! @param lhs Left-hand side. + !! @param rhs Right-hand side. elemental subroutine s_swap(lhs, rhs) real(wp), intent(inout) :: lhs, rhs @@ -309,7 +324,10 @@ contains end subroutine s_swap - !> Create a transformation matrix. + !> This procedure creates a transformation matrix. + !! @param param Parameters for the transformation. + !! @param center Optional center point for the transformation. + !! @return Transformation matrix. function f_create_transform_matrix(param, center) result(out_matrix) type(ic_model_parameters), intent(in) :: param @@ -347,7 +365,9 @@ contains end function f_create_transform_matrix - !> Transform a vector by a matrix. + !> This procedure transforms a vector by a matrix. + !! @param vec Vector to transform. + !! @param matrix Transformation matrix. subroutine s_transform_vec(vec, matrix) real(wp), dimension(1:3), intent(inout) :: vec @@ -359,7 +379,10 @@ contains end subroutine s_transform_vec - !> Transform a triangle by a matrix, one vertex at a time. + !> This procedure transforms a triangle by a matrix, one vertex at a time. + !! @param triangle Triangle to transform. + !! @param matrix Transformation matrix. + !! @param matrix_n Normal transformation matrix. subroutine s_transform_triangle(triangle, matrix, matrix_n) type(t_triangle), intent(inout) :: triangle @@ -374,7 +397,10 @@ contains end subroutine s_transform_triangle - !> Transform a model by a matrix, one triangle at a time. + !> This procedure transforms a model by a matrix, one triangle at a time. + !! @param model Model to transform. + !! @param matrix Transformation matrix. + !! @param matrix_n Normal transformation matrix. subroutine s_transform_model(model, matrix, matrix_n) type(t_model), intent(inout) :: model @@ -387,7 +413,9 @@ contains end subroutine s_transform_model - !> Create a bounding box for a model. + !> This procedure creates a bounding box for a model. + !! @param model Model to create bounding box for. + !! @return Bounding box. function f_create_bbox(model) result(bbox) type(t_model), intent(in) :: model @@ -412,7 +440,10 @@ contains end function f_create_bbox - !> Perform XOR on lhs and rhs. + !> This procedure performs xor on lhs and rhs. + !! @param lhs logical input. + !! @param rhs other logical input. + !! @return xored result. elemental function f_xor(lhs, rhs) result(res) logical, intent(in) :: lhs, rhs @@ -422,7 +453,9 @@ contains end function f_xor - !> Convert a logical to 1 or 0. + !> This procedure converts logical to 1 or 0. + !! @param predicate A Logical argument. + !! @return 1 if .true., 0 if .false.. elemental function f_logical_to_int(predicate) result(int) logical, intent(in) :: predicate @@ -468,6 +501,7 @@ contains !! @param x argument (typically cos(theta)), should be in [-1,1] !! @param l degree (>= 0) !! @param m_order order (0 <= m_order <= l) + !! @return result_P P_l^m(x) recursive function associated_legendre(x, l, m_order) result(result_P) integer, intent(in) :: l, m_order @@ -502,7 +536,9 @@ contains end function associated_legendre - !> Calculate the double factorial of an integer + !> This function calculates the double factorial value of an integer + !! @param n_in is the input integer + !! @return R is the double factorial value of n elemental function double_factorial(n_in) result(R_result) integer, intent(in) :: n_in @@ -514,7 +550,9 @@ contains end function double_factorial - !> Calculate the factorial of an integer + !> The following function calculates the factorial value of an integer + !! @param n_in is the input integer + !! @return R is the factorial value of n elemental function factorial(n_in) result(R_result) integer, intent(in) :: n_in @@ -526,8 +564,11 @@ contains end function factorial - !> Calculate a smooth cut-on function that is zero for x values smaller than zero and goes to one, for generating smooth initial - !! conditions + !> This function calculates a smooth cut-on function that is zero for x values smaller than zero and goes to one. It can be used + !! for generating smooth initial conditions + !! @param x is the input value + !! @param eps is the smoothing parameter + !! @return fx is the cut-on function evaluated at x function f_cut_on(x, eps) result(fx) real(wp), intent(in) :: x, eps @@ -537,8 +578,11 @@ contains end function f_cut_on - !> Calculate a smooth cut-off function that is one for x values smaller than zero and goes to zero, for generating smooth - !! initial conditions + !> This function calculates a smooth cut-off function that is one for x values smaller than zero and goes to zero. It can be + !! used for generating smooth initial conditions + !! @param x is the input value + !! @param eps is the smoothing parameter + !! @return fx is the cut-ff function evaluated at x function f_cut_off(x, eps) result(fx) real(wp), intent(in) :: x, eps @@ -548,7 +592,9 @@ contains end function f_cut_off - !> Helper function for f_cut_on and f_cut_off + !> This function is a helper function for the functions f_cut_on and f_cut_off + !! @param x is the input value + !! @return gx is the result function f_gx(x) result(gx) real(wp), intent(in) :: x @@ -562,7 +608,7 @@ contains end function f_gx - !> Downsample conservative variable fields by a factor of 3 in each direction using volume averaging. + !> @brief Downsamples conservative variable fields by a factor of 3 in each direction using volume averaging. subroutine s_downsample_data(q_cons_vf, q_cons_temp, m_ds, n_ds, p_ds, m_glb_ds, n_glb_ds, p_glb_ds) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf, q_cons_temp @@ -604,7 +650,7 @@ contains end subroutine s_downsample_data - !> Upsample conservative variable fields from a coarsened grid back to the original resolution using interpolation. + !> @brief Upsamples conservative variable fields from a coarsened grid back to the original resolution using interpolation. subroutine s_upsample_data(q_cons_vf, q_cons_temp) type(scalar_field), intent(inout), dimension(sys_size) :: q_cons_vf, q_cons_temp diff --git a/src/common/m_helper_basic.fpp b/src/common/m_helper_basic.fpp index 7208a451da..0ab15a41ee 100644 --- a/src/common/m_helper_basic.fpp +++ b/src/common/m_helper_basic.fpp @@ -17,8 +17,11 @@ module m_helper_basic contains - !> Check if two floating point numbers of wp are within tolerance. + !> This procedure checks if two floating point numbers of wp are within tolerance. + !! @param a First number. + !! @param b Second number. !! @param tol_input Relative error (default = 1.e-10_wp). + !! @return Result of the comparison. logical elemental function f_approx_equal(a, b, tol_input) result(res) $:GPU_ROUTINE(parallelism='[seq]') @@ -42,8 +45,11 @@ contains end function f_approx_equal - !> Check if a wp value approximately matches any element of an array within tolerance. + !> This procedure checks if the point numbers of wp belongs to another array are within tolerance. + !! @param a First number. + !! @param b Array that contains several point numbers. !! @param tol_input Relative error (default = 1e-10_wp). + !! @return Result of the comparison. logical function f_approx_in_array(a, b, tol_input) result(res) $:GPU_ROUTINE(parallelism='[seq]') @@ -71,6 +77,7 @@ contains end function f_approx_in_array !> Checks if a real(wp) variable is of default value. + !! @param var Variable to check. logical elemental function f_is_default(var) result(res) $:GPU_ROUTINE(parallelism='[seq]') @@ -81,15 +88,23 @@ contains end function f_is_default !> Checks if ALL elements of a real(wp) array are of default value. + !! @param var_array Array to check. logical function f_all_default(var_array) result(res) real(wp), intent(in) :: var_array(:) res = all(f_is_default(var_array)) + ! logical :: res_array(size(var_array)) integer :: i + + ! do i = 1, size(var_array) res_array(i) = f_is_default(var_array(i)) end do + + ! res = all(res_array) + end function f_all_default !> Checks if a real(wp) variable is an integer. + !! @param var Variable to check. logical elemental function f_is_integer(var) result(res) $:GPU_ROUTINE(parallelism='[seq]') @@ -99,20 +114,19 @@ contains end function f_is_integer - !> Compute ghost-cell buffer size and set interior/buffered coordinate index bounds. subroutine s_configure_coordinate_bounds(recon_type, weno_polyn, muscl_polyn, igr_order, buff_size, idwint, idwbuff, viscous, & - - & bubbles_lagrange, m, n, p, num_dims, igr, ib) + & bubbles_lagrange, m, n, p, num_dims, igr, ib, fd_number) integer, intent(in) :: recon_type, weno_polyn, muscl_polyn - integer, intent(in) :: m, n, p, num_dims, igr_order + integer, intent(in) :: m, n, p, num_dims, igr_order, fd_number integer, intent(inout) :: buff_size type(int_bounds_info), dimension(3), intent(inout) :: idwint, idwbuff logical, intent(in) :: viscous, bubbles_lagrange logical, intent(in) :: igr logical, intent(in) :: ib - ! Determine ghost cell buffer size for boundary conditions + ! Determining the number of cells that are needed in order to store sufficient boundary conditions data as to iterate the + ! solution in the physical computational domain from one time-step iteration to the next one if (igr) then buff_size = (igr_order - 1)/2 + 2 @@ -128,7 +142,7 @@ contains ! Correction for smearing function in the lagrangian subgrid bubble model if (bubbles_lagrange) then - buff_size = max(buff_size, 6) + buff_size = max(buff_size + fd_number, mapCells + 1 + fd_number) end if if (ib) then @@ -150,7 +164,10 @@ contains end subroutine s_configure_coordinate_bounds !> Updates the min and max number of cells in each set of axes - !! @param bounds Min and max values to update + !! @param bounds Min ans max values to update + !! @param m Number of cells in x-axis + !! @param n Number of cells in y-axis + !! @param p Number of cells in z-axis elemental subroutine s_update_cell_bounds(bounds, m, n, p) type(cell_num_bounds), intent(out) :: bounds diff --git a/src/common/m_model.fpp b/src/common/m_model.fpp index c88bffa7e6..9cfc11872c 100644 --- a/src/common/m_model.fpp +++ b/src/common/m_model.fpp @@ -28,7 +28,9 @@ module m_model public :: s_instantiate_STL_models #endif - type(t_model_array), allocatable, target :: models(:) !< STL/OBJ models for IB markers and levelset + !! array of STL models that can be allocated and then used in IB marker and levelset compute + !> STL/OBJ models for IB markers and levelset GPU-friendly flat arrays for STL model data + type(t_model_array), allocatable, target :: models(:) integer, allocatable :: gpu_ntrs(:) !< GPU-friendly flat arrays for STL model data real(wp), allocatable, dimension(:,:,:,:) :: gpu_trs_v real(wp), allocatable, dimension(:,:,:) :: gpu_trs_n @@ -40,7 +42,9 @@ module m_model contains - !> Read a binary STL file. + !> This procedure reads a binary STL file. + !! @param filepath Path to the STL file. + !! @param model The binary of the STL file. impure subroutine s_read_stl_binary(filepath, model) character(LEN=*), intent(in) :: filepath @@ -84,7 +88,9 @@ contains end subroutine s_read_stl_binary - !> Read an ASCII STL file. + !> This procedure reads an ASCII STL file. + !! @param filepath Path to the STL file. + !! @param model the STL file. impure subroutine s_read_stl_ascii(filepath, model) character(LEN=*), intent(in) :: filepath @@ -192,7 +198,9 @@ contains end subroutine s_read_stl_ascii - !> Read an STL file. + !> This procedure reads an STL file. + !! @param filepath Path to the STL file. + !! @param model the STL file. impure subroutine s_read_stl(filepath, model) character(LEN=*), intent(in) :: filepath @@ -220,7 +228,9 @@ contains end subroutine s_read_stl - !> Read an OBJ file. + !> This procedure reads an OBJ file. + !! @param filepath Path to the obj file. + !! @param model The obj file. impure subroutine s_read_obj(filepath, model) character(LEN=*), intent(in) :: filepath @@ -289,7 +299,9 @@ contains end subroutine s_read_obj - !> Read a mesh from a file. + !> This procedure reads a mesh from a file. + !! @param filepath Path to the file to read. + !! @return The model read from the file. impure function f_model_read(filepath) result(model) character(LEN=*), intent(in) :: filepath @@ -308,7 +320,9 @@ contains end function f_model_read - !> Write a binary STL file. + !> This procedure writes a binary STL file. + !! @param filepath Path to the STL file. + !! @param model STL to write impure subroutine s_write_stl(filepath, model) character(LEN=*), intent(in) :: filepath @@ -353,7 +367,9 @@ contains end subroutine s_write_stl - !> Write an OBJ file. + !> This procedure writes an OBJ file. + !! @param filepath Path to the obj file. + !! @param model obj to write. impure subroutine s_write_obj(filepath, model) character(LEN=*), intent(in) :: filepath @@ -384,7 +400,9 @@ contains end subroutine s_write_obj - !> Write a mesh to a file. + !> This procedure writes a binary STL file. + !! @param filepath Path to the file to write. + !! @param model Model to write. impure subroutine s_model_write(filepath, model) character(LEN=*), intent(in) :: filepath @@ -403,7 +421,7 @@ contains end subroutine s_model_write - !> Free the memory allocated for an STL mesh. + !> This procedure frees the memory allocated for an STL mesh. subroutine s_model_free(model) type(t_model), intent(inout) :: model @@ -412,7 +430,6 @@ contains end subroutine s_model_free - !> Read the next non-blank, non-comment line from an STL or OBJ model file. impure function f_read_line(iunit, line) result(bIsLine) integer, intent(in) :: iunit @@ -441,7 +458,7 @@ contains end function f_read_line - !> Read the next non-comment line from a model file, using a buffered look-ahead mechanism. + !> @brief Reads the next non-comment line from a model file, using a buffered look-ahead mechanism. impure subroutine s_skip_ignored_lines(iunit, buffered_line, is_buffered) integer, intent(in) :: iunit @@ -461,8 +478,8 @@ contains end subroutine s_skip_ignored_lines - !> Generate a pseudo-random number using a seed-based xorshift, replacing the Fortran intrinsic which is incompatible with GPU - !! routines + !> This function is used to replace the fortran random number generator because the native generator is not compatible being + !! called from GPU routines/functions function f_model_random_number(seed) result(rval) ! $:GPU_ROUTINE(parallelism='[seq]') @@ -478,8 +495,12 @@ contains end function f_model_random_number - !> Determine whether a point is inside a model using stochastic ray casting. + !> This procedure, recursively, finds whether a point is inside an octree. + !! @param model Model to search in. + !! @param point Point to test. + !! @param spacing Space around the point to search in (grid spacing). !! @param spc Number of samples per cell. + !! @return True if the point is inside the octree, false otherwise. impure function f_model_is_inside(model, point, spacing, spc) result(fraction) ! $:GPU_ROUTINE(parallelism='[seq]') @@ -531,10 +552,13 @@ contains end function f_model_is_inside - !> Determine if a point is inside a surface using the generalized winding number (Jacobson et al., SIGGRAPH 2013). In 3D, sums - !! the solid angle subtended by each triangle (Van Oosterom-Strackee formula). In 2D (p==0), sums the signed angle subtended by - !! each boundary edge. Returns ~1.0 inside, ~0.0 outside. Unlike ray casting, this is robust to small triangles/edges and vertex - !! winding order. + !> This procedure determines if a point is inside a surface using the generalized winding number (Jacobson et al., SIGGRAPH + !! 2013). In 3D, sums the solid angle subtended by each triangle (Van Oosterom-Strackee formula). In 2D (p==0), sums the signed + !! angle subtended by each boundary edge. Returns ~1.0 inside, ~0.0 outside. Unlike ray casting, this is robust to small + !! triangles/edges and vertex winding order. + !! @param ntrs Number of triangles in the model. + !! @param pid Patch ID of this model. + !! @param point Point to test. !! @return fraction Winding number (~1.0 inside, ~0.0 outside). function f_model_is_inside_flat(ntrs, pid, point) result(fraction) @@ -596,9 +620,11 @@ contains end function f_model_is_inside_flat - !> Check if a ray intersects a triangle using the Moller-Trumbore algorithm (barycentric coordinates). Unlike the previous - !! cross-product sign test, this is vertex winding-order independent. - !! @return 1 if the ray intersects the triangle, 0 otherwise. + !> This procedure checks if a ray intersects a triangle using the Moller-Trumbore algorithm (barycentric coordinates). Unlike + !! the previous cross-product sign test, this is vertex winding-order independent. + !! @param ray Ray. + !! @param triangle Triangle. + !! @return 1 if the ray intersects the triangle, 0 otherwise. function f_intersects_triangle(ray, triangle) result(intersects) $:GPU_ROUTINE(parallelism='[seq]') @@ -636,7 +662,9 @@ contains end function f_intersects_triangle - !> Check and label edges shared by two or more triangle facets of the 2D STL model. + !> This procedure checks and labels edges shared by two or more triangles facets of the 2D STL model. + !! @param model Model to search in. + !! @param boundary_vertex_count Output total boundary vertex count subroutine s_check_boundary(model, boundary_v, boundary_vertex_count, boundary_edge_count) type(t_model), intent(in) :: model @@ -649,6 +677,7 @@ contains real(wp), dimension(1:(3*model%ntrs),1:2,1:2) :: temp_boundary_v !< Temporary boundary vertex buffer integer, dimension(1:(3*model%ntrs)) :: edge_occurrence !< The manifoldness of the edges real(wp) :: edgetan, initial, v_norm, xnormal, ynormal !< The manifoldness of the edges + ! Total number of edges in 2D STL edge_count = 3*model%ntrs @@ -748,13 +777,14 @@ contains end subroutine s_check_boundary - !> Append the edge end vertices to a temporary buffer. + !> This procedure appends the edge end vertices to a temporary buffer. subroutine s_register_edge(temp_boundary_v, edge, edge_index, edge_count) integer, intent(inout) :: edge_index !< Edge index iterator integer, intent(inout) :: edge_count !< Total number of edges real(wp), intent(in), dimension(1:2,1:2) :: edge !< Edges end points to be registered real(wp), dimension(1:edge_count,1:2,1:2), intent(inout) :: temp_boundary_v !< Temporary edge end vertex buffer + ! Increment edge index and store the edge edge_index = edge_index + 1 @@ -763,8 +793,15 @@ contains end subroutine s_register_edge - !> Determine the levelset distance and normals of 3D models by computing the exact closest point via projection onto triangle - !! surfaces. + !> This procedure determines the levelset distance and normals of 3D models by computing the exact closest point via projection + !! onto triangle surfaces. + !! @param ntrs Number of triangles for this patch + !! @param trs_v Flat GPU array of triangle vertices for all patches + !! @param trs_n Flat GPU array of triangle normals for all patches + !! @param pid Patch index into the arrays + !! @param point The cell center of the current levelset cell + !! @param normals Output levelset normals + !! @param distance Output levelset distance subroutine s_distance_normals_3D(ntrs, pid, point, normals, distance) $:GPU_ROUTINE(parallelism='[seq]') @@ -893,8 +930,14 @@ contains end subroutine s_distance_normals_3D - !> Determine the levelset distance and normals of 2D models by computing the exact closest point via projection onto boundary - !! edges. + !> This procedure determines the levelset distance and normals of 2D models by computing the exact closest point via projection + !! onto boundary edges. + !! @param boundary_v Flat GPU array of boundary vertices/normals for all patches + !! @param pid Patch index into the boundary_v array + !! @param boundary_edge_count Total number of boundary edges for this patch + !! @param point The cell center of the current levelset cell + !! @param normals Output levelset normals + !! @param distance Output levelset distance subroutine s_distance_normals_2D(pid, boundary_edge_count, point, normals, distance) $:GPU_ROUTINE(parallelism='[seq]') @@ -963,7 +1006,6 @@ contains end subroutine s_distance_normals_2D #ifdef MFC_SIMULATION - !> Load, transform, and register STL/OBJ immersed-boundary models onto the simulation grid. subroutine s_instantiate_STL_models() ! Variables for IBM+STL @@ -1126,7 +1168,6 @@ contains end subroutine s_instantiate_STL_models #endif - !> Pack triangle vertices and normals from a model into flat arrays for GPU transfer. subroutine s_pack_model_for_gpu(ma) type(t_model_array), intent(inout) :: ma diff --git a/src/common/m_mpi_common.fpp b/src/common/m_mpi_common.fpp index 8a719f5758..40355b8632 100644 --- a/src/common/m_mpi_common.fpp +++ b/src/common/m_mpi_common.fpp @@ -22,9 +22,20 @@ module m_mpi_common integer, private :: v_size $:GPU_DECLARE(create='[v_size]') + !! Generic flags used to identify and report MPI errors + !> This variable is utilized to pack and send the buffer of the cell-average primitive variables, for a single computational + !! domain boundary at the time, to the relevant neighboring processor. real(wp), private, allocatable, dimension(:) :: buff_send !< Primitive variable send buffer for halo exchange + + !> buff_recv is utilized to receive and unpack the buffer of the cell- average primitive variables, for a single computational + !! domain boundary at the time, from the relevant neighboring processor. real(wp), private, allocatable, dimension(:) :: buff_recv !< Primitive variable receive buffer for halo exchange + type(int_bounds_info) :: comm_coords(3) + integer :: comm_size(3) + $:GPU_DECLARE(create='[comm_coords, comm_size]') + !! Variables for EL bubbles communication + #ifndef __NVCOMPILER_GPU_UNIFIED_MEM $:GPU_DECLARE(create='[buff_send, buff_recv]') #endif @@ -34,7 +45,8 @@ module m_mpi_common contains - !> Initialize the module. + !> The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other + !! procedures that are necessary to setup the module. impure subroutine s_initialize_mpi_common_module #ifdef MFC_MPI @@ -71,30 +83,39 @@ contains end subroutine s_initialize_mpi_common_module - !> Initialize the MPI execution environment and query the number of processors and local rank. + !> The subroutine initializes the MPI execution environment and queries both the number of processors which will be available + !! for the job and the local processor rank. impure subroutine s_mpi_initialize #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors + ! Initializing the MPI environment call MPI_INIT(ierr) + ! Checking whether the MPI environment has been properly initialized if (ierr /= MPI_SUCCESS) then print '(A)', 'Unable to initialize MPI environment. Exiting.' call MPI_ABORT(MPI_COMM_WORLD, 1, ierr) end if + ! Querying the number of processors available for the job call MPI_COMM_SIZE(MPI_COMM_WORLD, num_procs, ierr) + ! Querying the rank of the local processor call MPI_COMM_RANK(MPI_COMM_WORLD, proc_rank, ierr) #else + ! Serial run only has 1 processor num_procs = 1 + ! Local processor rank is 0 proc_rank = 0 #endif end subroutine s_mpi_initialize - !> Set up MPI I/O data views and variable pointers for parallel file output. + !! @param q_cons_vf Conservative variables + !! @param ib_markers track if a cell is within the immersed boundary + !! @param beta Eulerian void fraction from lagrangian bubbles impure subroutine s_initialize_mpi_data(q_cons_vf, ib_markers, beta) type(scalar_field), dimension(sys_size), intent(in) :: q_cons_vf @@ -104,8 +125,11 @@ contains integer, dimension(1) :: airfoil_glb, airfoil_loc, airfoil_start #ifdef MFC_MPI + ! Generic loop iterator integer :: i, j integer :: ierr !< Generic flag used to identify and report MPI errors + + ! Altered system size for the lagrangian subgrid bubble model integer :: alt_sys if (present(beta)) then @@ -176,7 +200,7 @@ contains end subroutine s_initialize_mpi_data - !> Set up MPI I/O data views for downsampled (coarsened) parallel file output. + !! @param q_cons_vf Conservative variables subroutine s_initialize_mpi_data_ds(q_cons_vf) type(scalar_field), dimension(sys_size), intent(in) :: q_cons_vf @@ -184,6 +208,7 @@ contains integer, dimension(3) :: sf_start_idx #ifdef MFC_MPI + ! Generic loop iterator integer :: i, j, q, k, l, m_ds, n_ds, p_ds, ierr sf_start_idx = (/0, 0, 0/) @@ -222,7 +247,7 @@ contains end subroutine s_initialize_mpi_data_ds - !> Gather variable-length real vectors from all MPI ranks onto the root process. + !> @brief Gathers variable-length real vectors from all MPI ranks onto the root process. impure subroutine s_mpi_gather_data(my_vector, counts, gathered_vector, root) integer, intent(in) :: counts !< Array of vector lengths for each process @@ -252,7 +277,7 @@ contains end subroutine s_mpi_gather_data - !> Gather per-rank time step wall-clock times onto rank 0 for performance reporting. + !> @brief Gathers per-rank time step wall-clock times onto rank 0 for performance reporting. impure subroutine mpi_bcast_time_step_values(proc_time, time_avg) real(wp), dimension(0:num_procs - 1), intent(inout) :: proc_time @@ -266,7 +291,7 @@ contains end subroutine mpi_bcast_time_step_values - !> Print a case file error with the prohibited condition and message, then abort execution. + !> @brief Prints a case file error with the prohibited condition and message, then aborts execution. impure subroutine s_prohibit_abort(condition, message) character(len=*), intent(in) :: condition, message @@ -286,40 +311,82 @@ contains !! performed by sifting through the local extrema of each stability criterion. Note that each of the local extrema is from a !! single process, within its assigned section of the computational domain. Finally, note that the global extrema values are !! only bookkeept on the rank 0 processor. - impure subroutine s_mpi_reduce_stability_criteria_extrema(icfl_max_loc, vcfl_max_loc, Rc_min_loc, icfl_max_glb, vcfl_max_glb, & - - & Rc_min_glb) + !! @param icfl_max_loc Local maximum ICFL stability criterion + !! @param vcfl_max_loc Local maximum VCFL stability criterion + !! @param Rc_min_loc Local minimum Rc stability criterion + !! @param icfl_max_glb Global maximum ICFL stability criterion + !! @param vcfl_max_glb Global maximum VCFL stability criterion + !! @param Rc_min_glb Global minimum Rc stability criterion + impure subroutine s_mpi_reduce_stability_criteria_extrema(icfl_max_loc, vcfl_max_loc, Rc_min_loc, bubs_loc, icfl_max_glb, & + & vcfl_max_glb, Rc_min_glb, bubs_glb) real(wp), intent(in) :: icfl_max_loc real(wp), intent(in) :: vcfl_max_loc real(wp), intent(in) :: Rc_min_loc + integer, intent(in) :: bubs_loc real(wp), intent(out) :: icfl_max_glb real(wp), intent(out) :: vcfl_max_glb real(wp), intent(out) :: Rc_min_glb + integer, intent(out) :: bubs_glb #ifdef MFC_SIMULATION #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors + bubs_glb = 0 + + ! Reducing local extrema of ICFL, VCFL, CCFL and Rc numbers to their global extrema and bookkeeping the results on the rank + ! 0 processor call MPI_REDUCE(icfl_max_loc, icfl_max_glb, 1, mpi_p, MPI_MAX, 0, MPI_COMM_WORLD, ierr) if (viscous) then call MPI_REDUCE(vcfl_max_loc, vcfl_max_glb, 1, mpi_p, MPI_MAX, 0, MPI_COMM_WORLD, ierr) call MPI_REDUCE(Rc_min_loc, Rc_min_glb, 1, mpi_p, MPI_MIN, 0, MPI_COMM_WORLD, ierr) end if + + if (bubbles_lagrange) then + call MPI_REDUCE(bubs_loc, bubs_glb, 1, MPI_INTEGER, MPI_SUM, 0, MPI_COMM_WORLD, ierr) + end if #else icfl_max_glb = icfl_max_loc + bubs_glb = 0 if (viscous) then vcfl_max_glb = vcfl_max_loc Rc_min_glb = Rc_min_loc end if + + if (bubbles_lagrange) bubs_glb = bubs_loc #endif #endif end subroutine s_mpi_reduce_stability_criteria_extrema - !> Reduce a local real value to its global sum across all MPI ranks. + !> The following subroutine takes the inputted variable and determines its sum on the entire computational domain. + ! ! @param var_loc holds the local value to be reduced among all the processors in communicator. On output, the variable holds + ! the sum, reduced amongst all of the local values. + subroutine s_mpi_reduce_int_sum(var_loc, sum) + + integer, intent(in) :: var_loc + integer, intent(out) :: sum + +#ifdef MFC_MPI + integer :: ierr !< Generic flag used to identify and report MPI errors + + ! Performing reduction procedure and eventually storing its result into the variable that was initially inputted into the + ! subroutine + call MPI_REDUCE(var_loc, sum, 1, MPI_INTEGER, MPI_SUM, 0, MPI_COMM_WORLD, ierr) +#else + sum = var_loc +#endif + + end subroutine s_mpi_reduce_int_sum + + !> The following subroutine takes the input local variable from all processors and reduces to the sum of all values. The reduced + !! variable is recorded back onto the original local variable on each processor. + ! ! @param var_loc Some variable containing the local value which should be reduced amongst all the processors in the + ! communicator. + !! @param var_glb The globally reduced value impure subroutine s_mpi_allreduce_sum(var_loc, var_glb) real(wp), intent(in) :: var_loc @@ -328,12 +395,14 @@ contains #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors + ! Performing the reduction procedure call MPI_ALLREDUCE(var_loc, var_glb, 1, mpi_p, MPI_SUM, MPI_COMM_WORLD, ierr) #endif end subroutine s_mpi_allreduce_sum - !> Reduce an array of vectors to their global sums across all MPI ranks. + !> This subroutine follows the behavior of the s_mpi_allreduce_sum subroutine + !> with the additional feature that it reduces an array of vectors. impure subroutine s_mpi_allreduce_vectors_sum(var_loc, var_glb, num_vectors, vector_length) integer, intent(in) :: num_vectors, vector_length @@ -343,6 +412,7 @@ contains #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors + ! Performing the reduction procedure if (loc(var_loc) == loc(var_glb)) then call MPI_Allreduce(MPI_IN_PLACE, var_glb, num_vectors*vector_length, mpi_p, MPI_SUM, MPI_COMM_WORLD, ierr) else @@ -354,7 +424,11 @@ contains end subroutine s_mpi_allreduce_vectors_sum - !> Reduce a local integer value to its global sum across all MPI ranks. + !> The following subroutine takes the input local variable from all processors and reduces to the sum of all values. The reduced + !! variable is recorded back onto the original local variable on each processor. + ! ! @param var_loc Some variable containing the local value which should be reduced amongst all the processors in the + ! communicator. + !! @param var_glb The globally reduced value impure subroutine s_mpi_allreduce_integer_sum(var_loc, var_glb) integer, intent(in) :: var_loc @@ -363,6 +437,7 @@ contains #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors + ! Performing the reduction procedure call MPI_ALLREDUCE(var_loc, var_glb, 1, MPI_INTEGER, MPI_SUM, MPI_COMM_WORLD, ierr) #else var_glb = var_loc @@ -370,7 +445,11 @@ contains end subroutine s_mpi_allreduce_integer_sum - !> Reduce a local real value to its global minimum across all MPI ranks. + !> The following subroutine takes the input local variable from all processors and reduces to the minimum of all values. The + !! reduced variable is recorded back onto the original local variable on each processor. + ! ! @param var_loc Some variable containing the local value which should be reduced amongst all the processors in the + ! communicator. + !! @param var_glb The globally reduced value impure subroutine s_mpi_allreduce_min(var_loc, var_glb) real(wp), intent(in) :: var_loc @@ -379,12 +458,17 @@ contains #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors + ! Performing the reduction procedure call MPI_ALLREDUCE(var_loc, var_glb, 1, mpi_p, MPI_MIN, MPI_COMM_WORLD, ierr) #endif end subroutine s_mpi_allreduce_min - !> Reduce a local real value to its global maximum across all MPI ranks. + !> The following subroutine takes the input local variable from all processors and reduces to the maximum of all values. The + !! reduced variable is recorded back onto the original local variable on each processor. + ! ! @param var_loc Some variable containing the local value which should be reduced amongst all the processors in the + ! communicator. + !! @param var_glb The globally reduced value impure subroutine s_mpi_allreduce_max(var_loc, var_glb) real(wp), intent(in) :: var_loc @@ -393,20 +477,28 @@ contains #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors + ! Performing the reduction procedure call MPI_ALLREDUCE(var_loc, var_glb, 1, mpi_p, MPI_MAX, MPI_COMM_WORLD, ierr) #endif end subroutine s_mpi_allreduce_max - !> Reduce a local real value to its global minimum across all ranks + !> The following subroutine takes the inputted variable and determines its minimum value on the entire computational domain. The + !! result is stored back into inputted variable. + ! ! @param var_loc holds the local value to be reduced among all the processors in communicator. On output, the variable holds + ! the minimum value, reduced amongst all of the local values. impure subroutine s_mpi_reduce_min(var_loc) real(wp), intent(inout) :: var_loc #ifdef MFC_MPI - integer :: ierr !< Generic flag used to identify and report MPI errors + integer :: ierr !< Generic flag used to identify and report MPI errors + + ! Temporary storage variable that holds the reduced minimum value real(wp) :: var_glb + ! Performing reduction procedure and eventually storing its result into the variable that was initially inputted into the + ! subroutine call MPI_REDUCE(var_loc, var_glb, 1, mpi_p, MPI_MIN, 0, MPI_COMM_WORLD, ierr) call MPI_BCAST(var_glb, 1, mpi_p, 0, MPI_COMM_WORLD, ierr) @@ -416,15 +508,25 @@ contains end subroutine s_mpi_reduce_min - !> Reduce a 2-element variable to its global maximum value with the owning processor rank (MPI_MAXLOC). - !> Reduce a local value to its global maximum with location (rank) across all ranks + !> The following subroutine takes the first element of the 2-element inputted variable and determines its maximum value on the + !! entire computational domain. The result is stored back into the first element of the variable while the rank of the processor + !! that is in charge of the sub- domain containing the maximum is stored into the second element of the variable. + ! ! @param var_loc On input, this variable holds the local value and processor rank, which are to be reduced among all the + ! processors in communicator. On output, this variable holds the maximum value, reduced amongst all of the local values, and the + ! process rank to which the value belongs. impure subroutine s_mpi_reduce_maxloc(var_loc) real(wp), dimension(2), intent(inout) :: var_loc #ifdef MFC_MPI - integer :: ierr !< Generic flag used to identify and report MPI errors + integer :: ierr !< Generic flag used to identify and report MPI errors + + !> Temporary storage variable that holds the reduced maximum value and the rank of the processor with which the value is + !! associated real(wp), dimension(2) :: var_glb !< Reduced (max value, rank) pair + + ! Performing reduction procedure and eventually storing its result into the variable that was initially inputted into the + ! subroutine call MPI_REDUCE(var_loc, var_glb, 1, mpi_2p, MPI_MAXLOC, 0, MPI_COMM_WORLD, ierr) call MPI_BCAST(var_glb, 1, mpi_2p, 0, MPI_COMM_WORLD, ierr) @@ -435,6 +537,8 @@ contains end subroutine s_mpi_reduce_maxloc !> The subroutine terminates the MPI execution environment. + !! @param prnt error message to be printed + !! @param code optional exit code impure subroutine s_mpi_abort(prnt, code) character(len=*), intent(in), optional :: prnt @@ -456,6 +560,7 @@ contains stop 1 end if #else + ! Terminating the MPI environment if (present(code)) then call MPI_ABORT(MPI_COMM_WORLD, code, ierr) else @@ -471,6 +576,7 @@ contains #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors + ! Calling MPI_BARRIER call MPI_BARRIER(MPI_COMM_WORLD, ierr) #endif @@ -482,6 +588,7 @@ contains #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors + ! Finalizing the MPI environment call MPI_FINALIZE(ierr) #endif @@ -489,6 +596,12 @@ contains !> The goal of this procedure is to populate the buffers of the cell-average conservative variables by communicating with the !! neighboring processors. + !! @param q_comm Cell-average conservative variables + !! @param mpi_dir MPI communication coordinate direction + !! @param pbc_loc Processor boundary condition (PBC) location + !! @param nVar Number of variables to communicate + !! @param pb_in Optional internal bubble pressure + !! @param mv_in Optional bubble mass velocity subroutine s_mpi_sendrecv_variables_buffers(q_comm, mpi_dir, pbc_loc, nVar, pb_in, mv_in) type(scalar_field), dimension(1:), intent(inout) :: q_comm @@ -842,6 +955,7 @@ contains $:END_GPU_PARALLEL_LOOP() end if #:else + ! Unpacking buffer from bc_z%beg $:GPU_PARALLEL_LOOP(collapse=4,private='[r]') do i = 1, nVar do l = -buff_size, -1 @@ -903,19 +1017,288 @@ contains end subroutine s_mpi_sendrecv_variables_buffers - !> Decompose the computational domain among processors by balancing cells per rank in each coordinate direction. + !> The goal of this procedure is to populate the buffers of the cell-average conservative variables by communicating with the + !! neighboring processors. + !! @param q_cons_vf Cell-average conservative variables + !! @param mpi_dir MPI communication coordinate direction + !! @param pbc_loc Processor boundary condition (PBC) location + subroutine s_mpi_reduce_beta_variables_buffers(q_comm, kahan_comp, mpi_dir, pbc_loc, nVar) + + type(scalar_field), dimension(1:), intent(inout) :: q_comm + type(scalar_field), dimension(1:), intent(inout) :: kahan_comp + integer, intent(in) :: mpi_dir, pbc_loc, nVar + integer :: i, j, k, l, r, q !< Generic loop iterators + integer :: lb_size + integer :: buffer_counts(1:3), buffer_count + type(int_bounds_info) :: boundary_conditions(1:3) + integer :: beg_end(1:2), grid_dims(1:3) + integer :: dst_proc, src_proc, recv_tag, send_tag + logical :: replace_buff + integer :: pack_offset, unpack_offset + real(wp) :: y_kahan, t_kahan + +#ifdef MFC_MPI + integer :: ierr !< Generic flag used to identify and report MPI errors + + call nvtxStartRange("BETA-COMM-PACKBUF") + + ! Set bounds for each dimension Always include the full buffer range for each existing dimension. The Gaussian smearing + ! kernel writes to buffer cells even at physical boundaries, and these contributions must be communicated to neighbors in + ! other directions via ADD operations. + comm_coords(1)%beg = -mapcells - 1 + comm_coords(1)%end = m + mapcells + 1 + comm_coords(2)%beg = merge(-mapcells - 1, 0, n > 0) + comm_coords(2)%end = merge(n + mapcells + 1, n, n > 0) + comm_coords(3)%beg = merge(-mapcells - 1, 0, p > 0) + comm_coords(3)%end = merge(p + mapcells + 1, p, p > 0) + + ! Compute sizes + comm_size(1) = comm_coords(1)%end - comm_coords(1)%beg + 1 + comm_size(2) = comm_coords(2)%end - comm_coords(2)%beg + 1 + comm_size(3) = comm_coords(3)%end - comm_coords(3)%beg + 1 + + ! Buffer counts using the conditional sizes + v_size = nVar + lb_size = 2*(mapcells + 1) ! Size of the buffer region for beta variables (-mapcells - 1, mapcells) + buffer_counts = (/lb_size*v_size*comm_size(2)*comm_size(3), lb_size*v_size*comm_size(1)*comm_size(3), & + & lb_size*v_size*comm_size(1)*comm_size(2)/) + + $:GPU_UPDATE(device='[v_size, comm_coords, comm_size]') + + buffer_count = buffer_counts(mpi_dir) + boundary_conditions = (/bc_x, bc_y, bc_z/) + beg_end = (/boundary_conditions(mpi_dir)%beg, boundary_conditions(mpi_dir)%end/) + grid_dims = (/m, n, p/) + + if (pbc_loc == -1) then ! PBC at the beginning + ! Phase 1: Rightward accumulation Send END buffer to right neighbor, recv from left into BEG, ADD + pack_offset = grid_dims(mpi_dir) + 1 + unpack_offset = 0 + dst_proc = merge(beg_end(2), MPI_PROC_NULL, beg_end(2) >= 0) + src_proc = merge(beg_end(1), MPI_PROC_NULL, beg_end(1) >= 0) + send_tag = 0 + recv_tag = 0 + replace_buff = .false. + else + ! Phase 2: Leftward distribution Send BEG buffer to left neighbor, recv from right into END, REPLACE + pack_offset = 0 + unpack_offset = grid_dims(mpi_dir) + 1 + dst_proc = merge(beg_end(1), MPI_PROC_NULL, beg_end(1) >= 0) + src_proc = merge(beg_end(2), MPI_PROC_NULL, beg_end(2) >= 0) + send_tag = 1 + recv_tag = 1 + replace_buff = .true. + end if + + ! Pack Buffer to Send + #:for mpi_dir in [1, 2, 3] + if (mpi_dir == ${mpi_dir}$) then + #:if mpi_dir == 1 + $:GPU_PARALLEL_LOOP(collapse=4,private='[r]') + do l = comm_coords(3)%beg, comm_coords(3)%end + do k = comm_coords(2)%beg, comm_coords(2)%end + do j = -mapcells - 1, mapcells + do i = 1, v_size + r = (i - 1) + v_size*((j + mapcells + 1) + lb_size*((k - comm_coords(2)%beg) + comm_size(2) & + & *(l - comm_coords(3)%beg))) + buff_send(r) = real(q_comm(beta_vars(i))%sf(j + pack_offset, k, l), & + & kind=wp) - real(kahan_comp(beta_vars(i))%sf(j + pack_offset, k, l), kind=wp) + end do + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + #:elif mpi_dir == 2 + $:GPU_PARALLEL_LOOP(collapse=4,private='[r]') + do i = 1, v_size + do l = comm_coords(3)%beg, comm_coords(3)%end + do k = -mapcells - 1, mapcells + do j = comm_coords(1)%beg, comm_coords(1)%end + r = (i - 1) + v_size*((j - comm_coords(1)%beg) + comm_size(1)*((k + mapcells + 1) & + & + lb_size*(l - comm_coords(3)%beg))) + buff_send(r) = real(q_comm(beta_vars(i))%sf(j, k + pack_offset, l), & + & kind=wp) - real(kahan_comp(beta_vars(i))%sf(j, k + pack_offset, l), kind=wp) + end do + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + #:else + $:GPU_PARALLEL_LOOP(collapse=4,private='[r]') + do i = 1, v_size + do l = -mapcells - 1, mapcells + do k = comm_coords(2)%beg, comm_coords(2)%end + do j = comm_coords(1)%beg, comm_coords(1)%end + r = (i - 1) + v_size*((j - comm_coords(1)%beg) + comm_size(1)*((k - comm_coords(2)%beg) & + & + comm_size(2)*(l + mapcells + 1))) + buff_send(r) = real(q_comm(beta_vars(i))%sf(j, k, l + pack_offset), & + & kind=wp) - real(kahan_comp(beta_vars(i))%sf(j, k, l + pack_offset), kind=wp) + end do + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + #:endif + end if + #:endfor + call nvtxEndRange ! Packbuf + + ! Send/Recv +#ifdef MFC_SIMULATION + #:for rdma_mpi in [False, True] + if (rdma_mpi .eqv. ${'.true.' if rdma_mpi else '.false.'}$) then + #:if rdma_mpi + #:call GPU_HOST_DATA(use_device_addr='[buff_send, buff_recv]') + call nvtxStartRange("BETA-COMM-SENDRECV-RDMA") + + call MPI_SENDRECV(buff_send, buffer_count, mpi_p, dst_proc, send_tag, buff_recv, buffer_count, mpi_p, & + & src_proc, recv_tag, MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) + + call nvtxEndRange ! BETA-MPI-SENDRECV-(NO)-RDMA + #:endcall GPU_HOST_DATA + $:GPU_WAIT() + #:else + call nvtxStartRange("BETA-COMM-DEV2HOST") + $:GPU_UPDATE(host='[buff_send]') + call nvtxEndRange + call nvtxStartRange("BETA-COMM-SENDRECV-NO-RMDA") + + call MPI_SENDRECV(buff_send, buffer_count, mpi_p, dst_proc, send_tag, buff_recv, buffer_count, mpi_p, & + & src_proc, recv_tag, MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) + + call nvtxEndRange ! BETA-MPI-SENDRECV-(NO)-RDMA + + call nvtxStartRange("BETA-COMM-HOST2DEV") + $:GPU_UPDATE(device='[buff_recv]') + call nvtxEndRange + #:endif + end if + #:endfor +#else + call MPI_SENDRECV(buff_send, buffer_count, mpi_p, dst_proc, send_tag, buff_recv, buffer_count, mpi_p, src_proc, recv_tag, & + & MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) +#endif + + ! Unpack Received Buffer (skip if no source rank) + call nvtxStartRange("BETA-COMM-UNPACKBUF") + if (src_proc /= MPI_PROC_NULL) then + #:for mpi_dir in [1, 2, 3] + if (mpi_dir == ${mpi_dir}$) then + #:if mpi_dir == 1 + $:GPU_PARALLEL_LOOP(collapse=4,private='[r, y_kahan, t_kahan]',copyin='[replace_buff]') + do l = comm_coords(3)%beg, comm_coords(3)%end + do k = comm_coords(2)%beg, comm_coords(2)%end + do j = -mapcells - 1, mapcells + do i = 1, v_size + r = (i - 1) + v_size*((j + mapcells + 1) + lb_size*((k - comm_coords(2)%beg) & + & + comm_size(2)*(l - comm_coords(3)%beg))) + if (replace_buff) then + q_comm(beta_vars(i))%sf(j + unpack_offset, k, l) = real(buff_recv(r), kind=stp) + kahan_comp(beta_vars(i))%sf(j + unpack_offset, k, & + & l) = real(q_comm(beta_vars(i))%sf(j + unpack_offset, k, l), & + & kind=wp) - buff_recv(r) + else + y_kahan = buff_recv(r) - real(kahan_comp(beta_vars(i))%sf(j + unpack_offset, k, l), & + & kind=wp) + t_kahan = real(q_comm(beta_vars(i))%sf(j + unpack_offset, k, l), kind=wp) + y_kahan + kahan_comp(beta_vars(i))%sf(j + unpack_offset, k, & + & l) = (t_kahan - q_comm(beta_vars(i))%sf(j + unpack_offset, k, l)) - y_kahan + q_comm(beta_vars(i))%sf(j + unpack_offset, k, l) = t_kahan + end if + end do + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + #:elif mpi_dir == 2 + $:GPU_PARALLEL_LOOP(collapse=4,private='[r, y_kahan, t_kahan]',copyin='[replace_buff]') + do i = 1, v_size + do l = comm_coords(3)%beg, comm_coords(3)%end + do k = -mapcells - 1, mapcells + do j = comm_coords(1)%beg, comm_coords(1)%end + r = (i - 1) + v_size*((j - comm_coords(1)%beg) + comm_size(1)*((k + mapcells + 1) & + & + lb_size*(l - comm_coords(3)%beg))) + if (replace_buff) then + q_comm(beta_vars(i))%sf(j, k + unpack_offset, l) = real(buff_recv(r), kind=stp) + kahan_comp(beta_vars(i))%sf(j, k + unpack_offset, & + & l) = real(q_comm(beta_vars(i))%sf(j, k + unpack_offset, l), & + & kind=wp) - buff_recv(r) + else + y_kahan = buff_recv(r) - real(kahan_comp(beta_vars(i))%sf(j, k + unpack_offset, l), & + & kind=wp) + t_kahan = real(q_comm(beta_vars(i))%sf(j, k + unpack_offset, l), kind=wp) + y_kahan + kahan_comp(beta_vars(i))%sf(j, k + unpack_offset, & + & l) = (t_kahan - q_comm(beta_vars(i))%sf(j, k + unpack_offset, l)) - y_kahan + q_comm(beta_vars(i))%sf(j, k + unpack_offset, l) = t_kahan + end if + end do + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + #:else + $:GPU_PARALLEL_LOOP(collapse=4,private='[r, y_kahan, t_kahan]',copyin='[replace_buff]') + do i = 1, v_size + do l = -mapcells - 1, mapcells + do k = comm_coords(2)%beg, comm_coords(2)%end + do j = comm_coords(1)%beg, comm_coords(1)%end + r = (i - 1) + v_size*((j - comm_coords(1)%beg) + comm_size(1)*((k - comm_coords(2)%beg) & + & + comm_size(2)*(l + mapcells + 1))) + if (replace_buff) then + q_comm(beta_vars(i))%sf(j, k, l + unpack_offset) = real(buff_recv(r), kind=stp) + kahan_comp(beta_vars(i))%sf(j, k, & + & l + unpack_offset) = real(q_comm(beta_vars(i))%sf(j, k, & + & l + unpack_offset), kind=wp) - buff_recv(r) + else + y_kahan = buff_recv(r) - real(kahan_comp(beta_vars(i))%sf(j, k, l + unpack_offset), & + & kind=wp) + t_kahan = real(q_comm(beta_vars(i))%sf(j, k, l + unpack_offset), kind=wp) + y_kahan + kahan_comp(beta_vars(i))%sf(j, k, & + & l + unpack_offset) = (t_kahan - q_comm(beta_vars(i))%sf(j, k, & + & l + unpack_offset)) - y_kahan + q_comm(beta_vars(i))%sf(j, k, l + unpack_offset) = t_kahan + end if + end do + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + #:endif + end if + #:endfor + end if + call nvtxEndRange +#endif + + end subroutine s_mpi_reduce_beta_variables_buffers + + !> The purpose of this procedure is to optimally decompose the computational domain among the available processors. This is + !! performed by attempting to award each processor, in each of the coordinate directions, approximately the same number of + !! cells, and then recomputing the affected global parameters. subroutine s_mpi_decompose_computational_domain #ifdef MFC_MPI integer :: num_procs_x, num_procs_y, num_procs_z !< Optimal number of processors in the x-, y- and z-directions + !> Non-optimal number of processors in the x-, y- and z-directions real(wp) :: tmp_num_procs_x, tmp_num_procs_y, tmp_num_procs_z real(wp) :: fct_min !< Processor factorization (fct) minimization parameter integer :: MPI_COMM_CART !< Cartesian processor topology communicator - integer :: rem_cells !< Remaining cells after distribution among processors - integer :: recon_order !< WENO or MUSCL reconstruction order - integer :: i, j !< Generic loop iterators - integer :: ierr !< Generic flag used to identify and report MPI errors + + !> Remaining number of cells, in a particular coordinate direction, after the majority is divided up among the available + !! processors + integer :: rem_cells !< Remaining cells after distribution among processors + integer :: recon_order !< WENO or MUSCL reconstruction order + integer :: i, j, k !< Generic loop iterators + integer :: ierr !< Generic flag used to identify and report MPI errors + + ! temp array to store neighbor rank coordinates + integer, dimension(1:num_dims) :: neighbor_coords + + ! Zeroing out communication needs for moving EL bubbles/particles + nidx(1)%beg = 0; nidx(1)%end = 0 + nidx(2)%beg = 0; nidx(2)%end = 0 + nidx(3)%beg = 0; nidx(3)%end = 0 if (recon_type == WENO_TYPE) then recon_order = weno_order @@ -966,7 +1349,9 @@ contains end do else if (cyl_coord .and. p > 0) then - ! Pencil blocking for cylindrical coordinates (Fourier filter near axis) + ! Implement pencil processor blocking if using cylindrical coordinates so that all cells in azimuthal + ! direction are stored on a single processor. This is necessary for efficient application of Fourier filter + ! near axis. ! Initial values of the processor factorization optimization num_procs_x = 1 @@ -1048,6 +1433,7 @@ contains ! Finding the Cartesian coordinates of the local process call MPI_CART_COORDS(MPI_COMM_CART, proc_rank, 3, proc_coords, ierr) + ! END: 3D Cartesian Processor Topology ! Global Parameters for z-direction @@ -1069,6 +1455,7 @@ contains proc_coords(3) = proc_coords(3) - 1 call MPI_CART_RANK(MPI_COMM_CART, proc_coords, bc_z%beg, ierr) proc_coords(3) = proc_coords(3) + 1 + nidx(3)%beg = -1 end if ! Boundary condition at the end @@ -1076,6 +1463,7 @@ contains proc_coords(3) = proc_coords(3) + 1 call MPI_CART_RANK(MPI_COMM_CART, proc_coords, bc_z%end, ierr) proc_coords(3) = proc_coords(3) - 1 + nidx(3)%end = 1 end if #ifdef MFC_POST_PROCESS @@ -1160,6 +1548,7 @@ contains ! Finding the Cartesian coordinates of the local process call MPI_CART_COORDS(MPI_COMM_CART, proc_rank, 2, proc_coords, ierr) end if + ! END: 2D Cartesian Processor Topology ! Global Parameters for y-direction @@ -1181,6 +1570,7 @@ contains proc_coords(2) = proc_coords(2) - 1 call MPI_CART_RANK(MPI_COMM_CART, proc_coords, bc_y%beg, ierr) proc_coords(2) = proc_coords(2) + 1 + nidx(2)%beg = -1 end if ! Boundary condition at the end @@ -1188,6 +1578,7 @@ contains proc_coords(2) = proc_coords(2) + 1 call MPI_CART_RANK(MPI_COMM_CART, proc_coords, bc_y%end, ierr) proc_coords(2) = proc_coords(2) - 1 + nidx(2)%end = 1 end if #ifdef MFC_POST_PROCESS @@ -1264,6 +1655,7 @@ contains proc_coords(1) = proc_coords(1) - 1 call MPI_CART_RANK(MPI_COMM_CART, proc_coords, bc_x%beg, ierr) proc_coords(1) = proc_coords(1) + 1 + nidx(1)%beg = -1 end if ! Boundary condition at the end @@ -1271,6 +1663,7 @@ contains proc_coords(1) = proc_coords(1) + 1 call MPI_CART_RANK(MPI_COMM_CART, proc_coords, bc_x%end, ierr) proc_coords(1) = proc_coords(1) - 1 + nidx(1)%end = 1 end if #ifdef MFC_POST_PROCESS @@ -1284,7 +1677,7 @@ contains ! Ghost zone at the end if (proc_coords(1) < num_procs_x - 1 .and. format == 1) then offset_x%end = 2 - else + else ! PBC at the beginning only offset_x%end = 0 end if #endif @@ -1293,10 +1686,10 @@ contains if (parallel_io) then if (proc_coords(1) < rem_cells) then start_idx(1) = (m + 1)*proc_coords(1) - else + else ! PBC at the end start_idx(1) = (m + 1)*proc_coords(1) + rem_cells end if - else + else ! PBC at the end only #ifdef MFC_PRE_PROCESS if (old_grid .neqv. .true.) then dx = (x_domain%end - x_domain%beg)/real(m_glb + 1, wp) @@ -1304,13 +1697,27 @@ contains if (proc_coords(1) < rem_cells) then x_domain%beg = x_domain%beg + dx*real((m + 1)*proc_coords(1)) x_domain%end = x_domain%end - dx*real((m + 1)*(num_procs_x - proc_coords(1) - 1) - (num_procs_x - rem_cells)) - else + else ! PBC at the beginning only x_domain%beg = x_domain%beg + dx*real((m + 1)*proc_coords(1) + rem_cells) x_domain%end = x_domain%end - dx*real((m + 1)*(num_procs_x - proc_coords(1) - 1)) end if end if #endif end if + + @:ALLOCATE(neighbor_ranks(nidx(1)%beg:nidx(1)%end, nidx(2)%beg:nidx(2)%end, nidx(3)%beg:nidx(3)%end)) + do k = nidx(3)%beg, nidx(3)%end + do j = nidx(2)%beg, nidx(2)%end + do i = nidx(1)%beg, nidx(1)%end + if (abs(i) + abs(j) + abs(k) > 0) then + neighbor_coords(1) = proc_coords(1) + i + if (num_dims > 1) neighbor_coords(2) = proc_coords(2) + j + if (num_dims > 2) neighbor_coords(3) = proc_coords(3) + k + call MPI_CART_RANK(MPI_COMM_CART, neighbor_coords, neighbor_ranks(i, j, k), ierr) + end if + end do + end do + end do #endif end subroutine s_mpi_decompose_computational_domain @@ -1318,6 +1725,8 @@ contains !> The goal of this procedure is to populate the buffers of the grid variables by communicating with the neighboring processors. !! Note that only the buffers of the cell-width distributions are handled in such a way. This is because the buffers of !! cell-boundary locations may be calculated directly from those of the cell-width distributions. + !! @param mpi_dir MPI communication coordinate direction + !! @param pbc_loc Processor boundary condition (PBC) location #ifndef MFC_PRE_PROCESS subroutine s_mpi_sendrecv_grid_variables_buffers(mpi_dir, pbc_loc) @@ -1327,64 +1736,90 @@ contains #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors + ! MPI Communication in x-direction if (mpi_dir == 1) then if (pbc_loc == -1) then ! PBC at the beginning if (bc_x%end >= 0) then ! PBC at the beginning and end + + ! Send/receive buffer to/from bc_x%end/bc_x%beg call MPI_SENDRECV(dx(m - buff_size + 1), buff_size, mpi_p, bc_x%end, 0, dx(-buff_size), buff_size, mpi_p, & & bc_x%beg, 0, MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) - else ! PBC at the beginning only + else ! PBC at the end + ! Send/receive buffer to/from bc_x%beg/bc_x%beg call MPI_SENDRECV(dx(0), buff_size, mpi_p, bc_x%beg, 1, dx(-buff_size), buff_size, mpi_p, bc_x%beg, 0, & & MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) end if - else ! PBC at the end + else ! PBC at the end only if (bc_x%beg >= 0) then ! PBC at the end and beginning + + ! Send/receive buffer to/from bc_x%beg/bc_x%end call MPI_SENDRECV(dx(0), buff_size, mpi_p, bc_x%beg, 1, dx(m + 1), buff_size, mpi_p, bc_x%end, 1, & & MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) - else ! PBC at the end only + else + ! Send/receive buffer to/from bc_x%end/bc_x%end call MPI_SENDRECV(dx(m - buff_size + 1), buff_size, mpi_p, bc_x%end, 0, dx(m + 1), buff_size, mpi_p, & & bc_x%end, 1, MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) end if end if + ! END: MPI Communication in x-direction + + ! MPI Communication in y-direction else if (mpi_dir == 2) then if (pbc_loc == -1) then ! PBC at the beginning if (bc_y%end >= 0) then ! PBC at the beginning and end + + ! Send/receive buffer to/from bc_y%end/bc_y%beg call MPI_SENDRECV(dy(n - buff_size + 1), buff_size, mpi_p, bc_y%end, 0, dy(-buff_size), buff_size, mpi_p, & & bc_y%beg, 0, MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) else ! PBC at the beginning only + ! Send/receive buffer to/from bc_y%beg/bc_y%beg call MPI_SENDRECV(dy(0), buff_size, mpi_p, bc_y%beg, 1, dy(-buff_size), buff_size, mpi_p, bc_y%beg, 0, & & MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) end if else ! PBC at the end if (bc_y%beg >= 0) then ! PBC at the end and beginning + + ! Send/receive buffer to/from bc_y%beg/bc_y%end call MPI_SENDRECV(dy(0), buff_size, mpi_p, bc_y%beg, 1, dy(n + 1), buff_size, mpi_p, bc_y%end, 1, & & MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) else ! PBC at the end only + ! Send/receive buffer to/from bc_y%end/bc_y%end call MPI_SENDRECV(dy(n - buff_size + 1), buff_size, mpi_p, bc_y%end, 0, dy(n + 1), buff_size, mpi_p, & & bc_y%end, 1, MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) end if end if + ! END: MPI Communication in y-direction + + ! MPI Communication in z-direction else if (pbc_loc == -1) then ! PBC at the beginning if (bc_z%end >= 0) then ! PBC at the beginning and end + + ! Send/receive buffer to/from bc_z%end/bc_z%beg call MPI_SENDRECV(dz(p - buff_size + 1), buff_size, mpi_p, bc_z%end, 0, dz(-buff_size), buff_size, mpi_p, & & bc_z%beg, 0, MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) else ! PBC at the beginning only + ! Send/receive buffer to/from bc_z%beg/bc_z%beg call MPI_SENDRECV(dz(0), buff_size, mpi_p, bc_z%beg, 1, dz(-buff_size), buff_size, mpi_p, bc_z%beg, 0, & & MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) end if else ! PBC at the end if (bc_z%beg >= 0) then ! PBC at the end and beginning + + ! Send/receive buffer to/from bc_z%beg/bc_z%end call MPI_SENDRECV(dz(0), buff_size, mpi_p, bc_z%beg, 1, dz(p + 1), buff_size, mpi_p, bc_z%end, 1, & & MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) else ! PBC at the end only + ! Send/receive buffer to/from bc_z%end/bc_z%end call MPI_SENDRECV(dz(p - buff_size + 1), buff_size, mpi_p, bc_z%end, 0, dz(p + 1), buff_size, mpi_p, & & bc_z%end, 1, MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) end if end if end if + ! END: MPI Communication in z-direction #endif end subroutine s_mpi_sendrecv_grid_variables_buffers diff --git a/src/common/m_nvtx.f90 b/src/common/m_nvtx.f90 index 66893c10d0..d5adbffb14 100644 --- a/src/common/m_nvtx.f90 +++ b/src/common/m_nvtx.f90 @@ -37,6 +37,7 @@ subroutine nvtxRangePushA(name) bind(C, name='nvtxRangePushA') character(kind=c_char, len=*), intent(in) :: name end subroutine nvtxRangePushA + ! push range with custom label and custom color subroutine nvtxRangePushEx(event) bind(C, name='nvtxRangePushEx') @@ -57,7 +58,7 @@ end subroutine nvtxRangePop contains - !> Push a named NVTX range for GPU profiling, optionally with a color based on the given identifier. + !> @brief Pushes a named NVTX range for GPU profiling, optionally with a color based on the given identifier. subroutine nvtxStartRange(name, id) character(kind=c_char, len=*), intent(in) :: name @@ -78,7 +79,7 @@ subroutine nvtxStartRange(name, id) end subroutine nvtxStartRange - !> Pop the current NVTX range to end the GPU profiling region. + !> @brief Pops the current NVTX range to end the GPU profiling region. subroutine nvtxEndRange #if defined(MFC_GPU) && defined(__PGI) diff --git a/src/common/m_phase_change.fpp b/src/common/m_phase_change.fpp index 21926411db..751c34cca6 100644 --- a/src/common/m_phase_change.fpp +++ b/src/common/m_phase_change.fpp @@ -40,7 +40,8 @@ module m_phase_change contains - !> Dispatch to the correct relaxation solver. Replaces the procedure pointer, which CCE is breaking on. + !> This subroutine should dispatch to the correct relaxation solver based some parameter. It replaces the procedure pointer, + !! which CCE is breaking on. impure subroutine s_relaxation_solver(q_cons_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf @@ -50,10 +51,11 @@ contains end subroutine s_relaxation_solver - !> Initialize the phase change module by setting saturation curve coefficients for pT- or pTg-equilibrium + !> The purpose of this subroutine is to initialize the phase change module by setting the parameters needed for phase change and + !! selecting the phase change module that will be used (pT- or pTg-equilibrium) impure subroutine s_initialize_phasechange_module - ! Saturation curve coefficients via stiffened gas EOS. Saurel et al. JCP (2008), Le Metayer et al. JFE (2004) + ! variables used in the calculation of the saturation curves for fluids 1 and 2 A = (gs_min(lp)*cvs(lp) - gs_min(vp)*cvs(vp) + qvps(vp) - qvps(lp))/((gs_min(vp) - 1.0_wp)*cvs(vp)) B = (qvs(lp) - qvs(vp))/((gs_min(vp) - 1.0_wp)*cvs(vp)) @@ -64,15 +66,20 @@ contains end subroutine s_initialize_phasechange_module - !> Apply pT- or pTg-equilibrium relaxation with mass depletion based on the incoming state conditions. + !> This subroutine is created to activate either the pT- (N fluids) or the pTg-equilibrium (2 fluids for g-equilibrium) model, + !! also considering mass depletion, depending on the incoming state conditions. + !! @param q_cons_vf Cell-average conservative variables subroutine s_infinite_relaxation_k(q_cons_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf - real(wp) :: pS, pSOV, pSSL !< equilibrium pressure for mixture, overheated vapor, and subcooled liquid + real(wp) :: pS, pSOV, pSSL !< equilibrium pressure for mixture, overheated vapor, and subcooled liquid + !> equilibrium temperature for mixture, overheated vapor, and subcooled liquid. Saturation Temperatures at overheated vapor + !! and subcooled liquid real(wp) :: TS, TSOV, TSSL, TSatOV, TSatSL !< Equilibrium and saturation temperatures real(wp) :: rhoe, dynE, rhos !< total internal energy, kinetic energy, and total entropy real(wp) :: rho, rM, m1, m2, MCT !< total density, total reacting mass, individual reacting masses real(wp) :: TvF !< total volume fraction + ! $:GPU_DECLARE(create='[pS,pSOV,pSSL,TS,TSOV,TSSL,TSatOV,TSatSL]') ! $:GPU_DECLARE(create='[rhoe,dynE,rhos,rho,rM,m1,m2,MCT,TvF]') @@ -94,7 +101,6 @@ contains #endif ! starting equilibrium solver - $:GPU_PARALLEL_LOOP(collapse=3, private='[i, j, k, l, p_infOV, p_infpT, p_infSL, sk, hk, gk, ek, rhok, pS, pSOV, pSSL, & & TS, TSOV, TSatOV, TSatSL, TSSL, rhoe, dynE, rhos, rho, rM, m1, m2, MCT, TvF]') do j = 0, m @@ -139,7 +145,9 @@ contains ! case, MFL cannot be either 0 or 1, so I chose it to be 2 call s_infinite_pt_relaxation_k(j, k, l, 2, pS, p_infpT, q_cons_vf, rhoe, TS) - ! Check if pTg-equilibrium needed; only partial densities require updating + ! check if pTg-equilibrium is required NOTE that NOTHING else needs to be updated OTHER than the individual + ! partial densities given the outputs from the pT- and pTg-equilibrium solvers are just p and one of the partial + ! masses (pTg- case) if ((relax_model == 6) .and. ((q_cons_vf(lp + contxb - 1)%sf(j, k, & & l) > mixM*rM) .and. (q_cons_vf(vp + contxb - 1)%sf(j, k, & & l) > mixM*rM)) .and. (pS < pCr) .and. (TS < TCr)) then @@ -249,8 +257,16 @@ contains end subroutine s_infinite_relaxation_k - !> Apply pT-equilibrium relaxation for N fluids - !! @param MFL flag: 0=gas, 1=liquid, 2=mixture + !> This auxiliary subroutine is created to activate the pT-equilibrium for N fluids + !! @param j generic loop iterator for x direction + !! @param k generic loop iterator for y direction + !! @param l generic loop iterator for z direction + !! @param MFL flag that tells whether the fluid is gas (0), liquid (1), or a mixture (2) + !! @param pS equilibrium pressure at the interface + !! @param p_infpT stiffness for the participating fluids under pT-equilibrium + !! @param q_cons_vf Cell-average conservative variables + !! @param rhoe mixture energy + !! @param TS equilibrium temperature at the interface subroutine s_infinite_pt_relaxation_k(j, k, l, MFL, pS, p_infpT, q_cons_vf, rhoe, TS) $:GPU_ROUTINE(function_name='s_infinite_pt_relaxation_k', parallelism='[seq]', cray_noinline=True) @@ -265,6 +281,7 @@ contains real(wp) :: gp, gpp, hp, pO, mCP, mQ !< variables for the Newton Solver real(wp) :: p_infpT_sum integer :: i, ns !< generic loop iterators + ! auxiliary variables for the pT-equilibrium solver mCP = 0.0_wp; mQ = 0.0_wp; p_infpT_sum = 0._wp $:GPU_LOOP(parallelism='[seq]') @@ -343,8 +360,16 @@ contains end subroutine s_infinite_pt_relaxation_k - !> Apply pTg-equilibrium relaxation for N fluids under pT and 2 fluids under pTg-equilibrium. There is a final common p and T - !! during relaxation + !> This auxiliary subroutine is created to activate the pTg-equilibrium for N fluids under pT and 2 fluids under + !! pTg-equilibrium. There is a final common p and T during relaxation + !! @param j generic loop iterator for x direction + !! @param k generic loop iterator for y direction + !! @param l generic loop iterator for z direction + !! @param pS equilibrium pressure at the interface + !! @param p_infpT stiffness for the participating fluids under pT-equilibrium + !! @param rhoe mixture energy + !! @param q_cons_vf Cell-average conservative variables + !! @param TS equilibrium temperature at the interface subroutine s_infinite_ptg_relaxation_k(j, k, l, pS, p_infpT, rhoe, q_cons_vf, TS) $:GPU_ROUTINE(function_name='s_infinite_ptg_relaxation_k', parallelism='[seq]', cray_noinline=True) @@ -514,8 +539,14 @@ contains end subroutine s_infinite_ptg_relaxation_k - !> Correct the partial densities of the reacting fluids in case one of them is negative but their sum is positive. Inert phases - !! are not corrected at this moment + !> This auxiliary subroutine corrects the partial densities of the REACTING fluids in case one of them is negative but their sum + !! is positive. Inert phases are not corrected at this moment + !! @param MCT partial density correction parameter + !! @param q_cons_vf Cell-average conservative variables + !! @param rM sum of the reacting masses + !! @param j generic loop iterator for x direction + !! @param k generic loop iterator for y direction + !! @param l generic loop iterator for z direction subroutine s_correct_partial_densities(MCT, q_cons_vf, rM, j, k, l) $:GPU_ROUTINE(function_name='s_correct_partial_densities', parallelism='[seq]', cray_noinline=True) @@ -538,7 +569,8 @@ contains end if end if - ! TODO: Consider partitioning partial densities instead of absolute-value correction + ! Defining the correction in terms of an absolute value might not be the best practice. Maybe a good way to do this is to + ! partition the partial densities, giving a small percentage of the total reacting density MCT = 2*mixM ! correcting the partial densities of the reacting fluids. What to do for the nonreacting ones? @@ -554,7 +586,10 @@ contains end subroutine s_correct_partial_densities - !> Find the saturation temperature for a given saturation pressure using a Newton solver + !> This auxiliary subroutine finds the Saturation temperature for a given saturation pressure through a newton solver + !! @param pSat Saturation Pressure + !! @param TSat Saturation Temperature + !! @param TSIn equilibrium Temperature elemental subroutine s_TSat(pSat, TSat, TSIn) $:GPU_ROUTINE(function_name='s_TSat',parallelism='[seq]', cray_noinline=True) @@ -563,6 +598,7 @@ contains real(wp), intent(out) :: TSat real(wp), intent(in) :: TSIn real(wp) :: dFdT, FT, Om !< auxiliary variables + ! Generic loop iterators integer :: ns @@ -605,7 +641,7 @@ contains end subroutine s_TSat - !> Finalize the phase change module + !> This subroutine finalizes the phase change module impure subroutine s_finalize_relaxation_solver_module end subroutine s_finalize_relaxation_solver_module diff --git a/src/common/m_variables_conversion.fpp b/src/common/m_variables_conversion.fpp index 9fdae1258b..712261ced0 100644 --- a/src/common/m_variables_conversion.fpp +++ b/src/common/m_variables_conversion.fpp @@ -37,7 +37,7 @@ module m_variables_conversion #endif s_finalize_variables_conversion_module - ! In simulation, gammas, pi_infs, and qvs are already declared in m_global_variables + !! In simulation, gammas, pi_infs, and qvs are already declared in m_global_variables #ifndef MFC_SIMULATION real(wp), allocatable, public, dimension(:) :: gammas, gs_min, pi_infs, ps_inf, cvs, qvs, qvps $:GPU_DECLARE(create='[gammas, gs_min, pi_infs, ps_inf, cvs, qvs, qvps]') @@ -60,6 +60,17 @@ contains !> Dispatch to the s_convert_mixture_to_mixture_variables and s_convert_species_to_mixture_variables subroutines. Replaces a !! procedure pointer. + !! @param q_vf Conservative or primitive variables + !! @param i First-coordinate cell index + !! @param j Second-coordinate cell index + !! @param k Third-coordinate cell index + !! @param rho Density + !! @param gamma Specific heat ratio function + !! @param pi_inf Liquid stiffness function + !! @param qv Fluid reference energy + !! @param Re_K Reynolds number (optional) + !! @param G_K Shear modulus (optional) + !! @param G Shear moduli of the fluids (optional) subroutine s_convert_to_mixture_variables(q_vf, i, j, k, rho, gamma, pi_inf, qv, Re_K, G_K, G) type(scalar_field), dimension(sys_size), intent(in) :: q_vf @@ -77,7 +88,21 @@ contains end subroutine s_convert_to_mixture_variables - !> Compute the pressure from the appropriate equation of state + !> This procedure conditionally calculates the appropriate pressure + !! @param energy Energy + !! @param alf Void Fraction + !! @param dyn_p Dynamic Pressure + !! @param pi_inf Liquid Stiffness + !! @param gamma Specific Heat Ratio + !! @param rho Density + !! @param qv fluid reference energy + !! @param rhoYks Species partial densities + !! @param pres Pressure to calculate + !! @param T Temperature + !! @param stress Shear Stress + !! @param mom Momentum + !! @param G Shear modulus (optional) + !! @param pres_mag Magnetic pressure (optional) subroutine s_compute_pressure(energy, alf, dyn_p, pi_inf, gamma, rho, qv, rhoYks, pres, T, stress, mom, G, pres_mag) $:GPU_ROUTINE(function_name='s_compute_pressure',parallelism='[seq]', cray_noinline=True) @@ -97,26 +122,23 @@ contains real(wp) :: e_Per_Kg, Pdyn_Per_Kg real(wp) :: T_guess integer :: s !< Generic loop iterator + #:if not chemistry ! Depending on model_eqns and bubbles_euler, the appropriate procedure for computing pressure is targeted by the ! procedure pointer if (mhd) then - ! MHD pressure: subtract magnetic pressure from total energy pres = (energy - dyn_p - pi_inf - qv - pres_mag)/gamma else if ((model_eqns /= 4) .and. (bubbles_euler .neqv. .true.)) then - ! Gamma/pi_inf model or five-equation model (Allaire et al. JCP 2002): p from mixture EOS pres = (energy - dyn_p - pi_inf - qv)/gamma else if ((model_eqns /= 4) .and. bubbles_euler) then - ! Bubble-augmented pressure with void fraction correction pres = ((energy - dyn_p)/(1._wp - alf) - pi_inf - qv)/gamma else - ! Four-equation model (Kapila et al. PoF 2001): Tait EOS inversion pres = (pref + pi_inf)*(energy/(rhoref*(1 - alf)))**(1/gamma + 1) - pi_inf end if if (hypoelasticity .and. present(G)) then - ! Subtract elastic strain energy before computing pressure (hypoelastic model) + ! calculate elastic contribution to Energy E_e = 0._wp do s = stress_idx%beg, stress_idx%end if (G > 0) then @@ -131,7 +153,6 @@ contains pres = (energy - 0.5_wp*(mom**2._wp)/rho - pi_inf - qv - E_e)/gamma end if #:else - ! Reacting mixture pressure from temperature and species Y_rs(:) = rhoYks(:)/rho e_Per_Kg = energy/rho Pdyn_Per_Kg = dyn_p/rho @@ -144,9 +165,16 @@ contains end subroutine s_compute_pressure - !> Convert mixture variables to density, gamma, pi_inf, and qv for the gamma/pi_inf model. Given conservative or primitive - !! variables, transfers the density, specific heat ratio function and the liquid stiffness function from q_vf to rho, gamma and - !! pi_inf. + !> This subroutine is designed for the gamma/pi_inf model and provided a set of either conservative or primitive variables, + !! transfers the density, specific heat ratio function and the liquid stiffness function from q_vf to rho, gamma and pi_inf. + !! @param q_vf conservative or primitive variables + !! @param i cell index to transfer mixture variables + !! @param j cell index to transfer mixture variables + !! @param k cell index to transfer mixture variables + !! @param rho density + !! @param gamma specific heat ratio function + !! @param pi_inf liquid stiffness + !! @param qv fluid reference energy subroutine s_convert_mixture_to_mixture_variables(q_vf, i, j, k, rho, gamma, pi_inf, qv) type(scalar_field), dimension(sys_size), intent(in) :: q_vf @@ -173,9 +201,20 @@ contains end subroutine s_convert_mixture_to_mixture_variables - !> Convert species volume fractions and partial densities to mixture density, gamma, pi_inf, and qv. Given conservative or - !! primitive variables, computes the density, the specific heat ratio function and the liquid stiffness function from q_vf and - !! stores the results into rho, gamma and pi_inf. + !> This subroutine is designed for the volume fraction model and provided a set of either conservative or primitive variables, + !! computes the density, the specific heat ratio function and the liquid stiffness function from q_vf and stores the results + !! into rho, gamma and pi_inf. + !! @param q_vf primitive variables + !! @param k Cell index + !! @param l Cell index + !! @param r Cell index + !! @param rho density + !! @param gamma specific heat ratio + !! @param pi_inf liquid stiffness + !! @param qv fluid reference energy + !! @param Re_K Reynolds number (optional) + !! @param G_K Shear modulus (optional) + !! @param G Shear moduli of the fluids (optional) subroutine s_convert_species_to_mixture_variables(q_vf, k, l, r, rho, gamma, pi_inf, qv, Re_K, G_K, G) type(scalar_field), dimension(sys_size), intent(in) :: q_vf @@ -189,6 +228,7 @@ contains real(wp), dimension(num_fluids) :: alpha_rho_K, alpha_K real(wp), optional, dimension(num_fluids), intent(in) :: G integer :: i, j !< Generic loop iterator + ! Computing the density, the specific heat ratio function and the liquid stiffness function, respectively call s_compute_species_fraction(q_vf, k, l, r, alpha_rho_K, alpha_K) @@ -243,7 +283,8 @@ contains end subroutine s_convert_species_to_mixture_variables - !> GPU-accelerated conversion of species volume fractions and partial densities to mixture density, gamma, pi_inf, and qv. + !> @brief GPU-accelerated conversion of species volume fractions and partial densities to mixture density, gamma, pi_inf, and + !! qv. subroutine s_convert_species_to_mixture_variables_acc(rho_K, gamma_K, pi_inf_K, qv_K, alpha_K, alpha_rho_K, Re_K, G_K, G) $:GPU_ROUTINE(function_name='s_convert_species_to_mixture_variables_acc', parallelism='[seq]', cray_noinline=True) @@ -260,8 +301,11 @@ contains real(wp), optional, intent(out) :: G_K real(wp) :: alpha_K_sum integer :: i, j !< Generic loop iterators + #ifdef MFC_SIMULATION - ! Constrain partial densities and volume fractions within physical bounds + ! Constraining the partial densities and the volume fractions within their physical bounds to make sure that any mixture + ! variables that are derived from them result within the limits that are set by the fluids physical parameters that make up + ! the mixture if (num_fluids == 1 .and. bubbles_euler) then rho_K = alpha_rho_K(1) gamma_K = gammas(1) @@ -289,7 +333,7 @@ contains if (present(G_K)) then G_K = 0._wp do i = 1, num_fluids - ! TODO: change to use Gs_vc directly here? TODO: Make this change as well for GPUs + ! TODO: change to use Gs_vc directly here? TODO: Make this changes as well for GPUs G_K = G_K + alpha_K(i)*G(i) end do G_K = max(0._wp, G_K) @@ -312,7 +356,8 @@ contains end subroutine s_convert_species_to_mixture_variables_acc - !> Initialize the variables conversion module. + !> The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other + !! procedures that are necessary to setup the module. impure subroutine s_initialize_variables_conversion_module integer :: i, j @@ -392,7 +437,7 @@ contains end subroutine s_initialize_variables_conversion_module - !> Initialize bubble mass-vapor values at quadrature nodes from the conserved moment statistics. + !> @brief Initializes bubble mass-vapor values at quadrature nodes from the conserved moment statistics. subroutine s_initialize_mv(qK_cons_vf, mv) type(scalar_field), dimension(sys_size), intent(in) :: qK_cons_vf @@ -421,7 +466,7 @@ contains end subroutine s_initialize_mv - !> Initialize bubble internal pressures at quadrature nodes using isothermal relations from the Preston model. + !> @brief Initializes bubble internal pressures at quadrature nodes using isothermal relations from the Preston model. subroutine s_initialize_pb(qK_cons_vf, mv, pb) type(scalar_field), dimension(sys_size), intent(in) :: qK_cons_vf @@ -456,8 +501,11 @@ contains end subroutine s_initialize_pb - !> Convert conserved variables (rho*alpha, rho*u, E, alpha) to primitives (rho, u, p, alpha). Conversion depends on model_eqns: - !! each model has different variable sets and EOS. + !> The following procedure handles the conversion between the conservative variables and the primitive variables. + !! @param qK_cons_vf Conservative variables + !! @param q_T_sf Temperature scalar field + !! @param qK_prim_vf Primitive variables + !! @param ibounds Index bounds in each coordinate direction subroutine s_convert_conservative_to_primitive_variables(qK_cons_vf, q_T_sf, qK_prim_vf, ibounds) type(scalar_field), dimension(sys_size), intent(in) :: qK_cons_vf @@ -494,7 +542,7 @@ contains $:GPU_PARALLEL_LOOP(collapse=3, private='[alpha_K, alpha_rho_K, Re_K, nRtmp, rho_K, gamma_K, pi_inf_K, qv_K, dyn_pres_K, & & rhoYks, B, pres, vftmp, nbub_sc, G_K, T, pres_mag, Ga, B2, m2, S, W, dW, E, D, f, dGa_dW, dp_dW, & - & df_dW, iter]') + & df_dW, iter ]') do l = ibounds(3)%beg, ibounds(3)%end do k = ibounds(2)%beg, ibounds(2)%end do j = ibounds(1)%beg, ibounds(1)%end @@ -523,7 +571,6 @@ contains #endif end if - ! Relativistic MHD primitive variable recovery, Mignone & Bodo A&A (2006) if (relativity) then if (n == 0) then B(1) = Bx0 @@ -560,9 +607,7 @@ contains W = E + D $:GPU_LOOP(parallelism='[seq]') do iter = 1, relativity_cons_to_prim_max_iter - ! Lorentz factor from total enthalpy and magnetic field Ga = (W + B2)*W/sqrt((W + B2)**2*W**2 - (m2*W**2 + S**2*(2*W + B2))) - ! Thermal pressure from EOS pres = (W - D*Ga)/((gamma_K + 1)*Ga**2) f = W - pres + (1 - 1/(2*Ga**2))*B2 - S**2/(2*W**2) - E - D @@ -600,7 +645,6 @@ contains end if if (chemistry) then - ! Reacting flow: recover density from species partial densities, compute mass fractions Y_k = rhoY_k / rho rho_K = 0._wp $:GPU_LOOP(parallelism='[seq]') do i = chemxb, chemxe @@ -617,7 +661,6 @@ contains qK_prim_vf(i)%sf(j, k, l) = max(0._wp, qK_cons_vf(i)%sf(j, k, l)/rho_K) end do else - ! Non-reacting: partial densities are directly primitive (alpha_i * rho_i) $:GPU_LOOP(parallelism='[seq]') do i = 1, contxe qK_prim_vf(i)%sf(j, k, l) = qK_cons_vf(i)%sf(j, k, l) @@ -628,14 +671,12 @@ contains rho_K = max(rho_K, sgm_eps) #endif - ! Recover velocity from momentum: u = rho*u / rho, and accumulate dynamic pressure 0.5*rho*|u|^2 $:GPU_LOOP(parallelism='[seq]') do i = momxb, momxe if (model_eqns /= 4) then qK_prim_vf(i)%sf(j, k, l) = qK_cons_vf(i)%sf(j, k, l)/rho_K dyn_pres_K = dyn_pres_K + 5.e-1_wp*qK_cons_vf(i)%sf(j, k, l)*qK_prim_vf(i)%sf(j, k, l) else - ! Four-equation model (Kapila et al. PoF 2001): divide by total density q_cons(1) qK_prim_vf(i)%sf(j, k, l) = qK_cons_vf(i)%sf(j, k, l)/qK_cons_vf(1)%sf(j, k, l) end if end do @@ -671,7 +712,6 @@ contains end if if (bubbles_euler) then - ! Recover bubble primitive variables: divide conserved moments by bubble number density $:GPU_LOOP(parallelism='[seq]') do i = 1, nb nRtmp(i) = qK_cons_vf(bubrs_vc(i))%sf(j, k, l) @@ -769,7 +809,9 @@ contains end subroutine s_convert_conservative_to_primitive_variables - !> Convert primitives (rho, u, p, alpha) to conserved variables (rho*alpha, rho*u, E, alpha). + !> The following procedure handles the conversion between the primitive variables and the conservative variables. + !! @param q_prim_vf Primitive variables + !! @param q_cons_vf Conservative variables impure subroutine s_convert_primitive_to_conservative_variables(q_prim_vf, q_cons_vf) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -884,7 +926,6 @@ contains end do if (chemistry) then - ! Reacting mixture: compute conserved energy from species mass fractions and temperature do i = chemxb, chemxe Ys(i - chemxb + 1) = q_prim_vf(i)%sf(j, k, l) q_cons_vf(i)%sf(j, k, l) = rho*q_prim_vf(i)%sf(j, k, l) @@ -905,24 +946,24 @@ contains pres_mag = 0.5_wp*(q_prim_vf(B_idx%beg)%sf(j, k, l)**2 + q_prim_vf(B_idx%beg + 1)%sf(j, k, & & l)**2 + q_prim_vf(B_idx%beg + 2)%sf(j, k, l)**2) end if - ! MHD energy includes magnetic pressure contribution q_cons_vf(E_idx)%sf(j, k, l) = gamma*q_prim_vf(E_idx)%sf(j, k, l) + dyn_pres + pres_mag + pi_inf + qv else if ((model_eqns /= 4) .and. (bubbles_euler .neqv. .true.)) then - ! Five-equation model (Allaire et al. JCP 2002): E = Gamma*p + 0.5*rho*|u|^2 + pi_inf + qv + ! E = Gamma*P + \rho u u /2 + \pi_inf + (\alpha\rho qv) q_cons_vf(E_idx)%sf(j, k, l) = gamma*q_prim_vf(E_idx)%sf(j, k, l) + dyn_pres + pi_inf + qv else if ((model_eqns /= 4) .and. (bubbles_euler)) then - ! Bubble-augmented energy with void fraction correction + ! \tilde{E} = dyn_pres + (1-\alf)(\Gamma p_l + \Pi_inf) q_cons_vf(E_idx)%sf(j, k, l) = dyn_pres + (1._wp - q_prim_vf(alf_idx)%sf(j, k, & & l))*(gamma*q_prim_vf(E_idx)%sf(j, k, l) + pi_inf) else - ! Four-equation model (Kapila et al. PoF 2001): Tait EOS, no conserved energy variable + ! Tait EOS, no conserved energy variable q_cons_vf(E_idx)%sf(j, k, l) = 0._wp end if end if - ! Six-equation model (Saurel et al. JCP 2009): compute per-phase internal energies + ! Computing the internal energies from the pressure and continuities if (model_eqns == 3) then do i = 1, num_fluids + ! internal energy calculation for each of the fluids q_cons_vf(i + intxb - 1)%sf(j, k, l) = q_cons_vf(i + advxb - 1)%sf(j, k, & & l)*(gammas(i)*q_prim_vf(E_idx)%sf(j, k, & & l) + pi_infs(i)) + q_cons_vf(i + contxb - 1)%sf(j, k, l)*qvs(i) @@ -1013,7 +1054,15 @@ contains end subroutine s_convert_primitive_to_conservative_variables - !> Convert primitive variables to Eulerian flux variables. + !> The following subroutine handles the conversion between the primitive variables and the Eulerian flux variables. + !! @param qK_prim_vf Primitive variables + !! @param FK_vf Flux variables + !! @param FK_src_vf Flux source variables + !! @param is1 Index bounds in the first coordinate direction + !! @param is2 Index bounds in the second coordinate direction + !! @param is3 Index bounds in the third coordinate direction + !! @param s2b Starting boundary index in the second coordinate direction + !! @param s3b Starting boundary index in the third coordinate direction subroutine s_convert_primitive_to_flux_variables(qK_prim_vf, FK_vf, FK_src_vf, is1, is2, is3, s2b, s3b) integer, intent(in) :: s2b, s3b @@ -1157,7 +1206,7 @@ contains end subroutine s_convert_primitive_to_flux_variables - !> Compute partial densities and volume fractions + !> This subroutine computes partial densities and volume fractions subroutine s_compute_species_fraction(q_vf, k, l, r, alpha_rho_K, alpha_K) $:GPU_ROUTINE(function_name='s_compute_species_fraction', parallelism='[seq]', cray_noinline=True) @@ -1208,7 +1257,7 @@ contains end subroutine s_compute_species_fraction - !> Deallocate fluid property arrays and post-processing fields allocated during module initialization. + !> @brief Deallocates fluid property arrays and post-processing fields allocated during module initialization. impure subroutine s_finalize_variables_conversion_module() ! Deallocating the density, the specific heat ratio function and the liquid stiffness function @@ -1231,7 +1280,7 @@ contains end subroutine s_finalize_variables_conversion_module #ifndef MFC_PRE_PROCESS - !> Compute the speed of sound from thermodynamic state variables, supporting multiple equation-of-state models. + !> @brief Computes the speed of sound from thermodynamic state variables, supporting multiple equation-of-state models. subroutine s_compute_speed_of_sound(pres, rho, gamma, pi_inf, H, adv, vel_sum, c_c, c, qv) $:GPU_ROUTINE(parallelism='[seq]') @@ -1257,6 +1306,7 @@ contains c = sqrt((1.0_wp + 1.0_wp/gamma)*pres/rho) end if else if (relativity) then ! Relativistic sound speed + ! Only supports perfect gas for now c = sqrt((1._wp + 1._wp/gamma)*pres/rho/H) else if (alt_soundspeed) then ! Wood's mixture sound speed via bulk moduli @@ -1293,7 +1343,7 @@ contains #endif #ifndef MFC_PRE_PROCESS - !> Compute the fast magnetosonic wave speed from the sound speed, density, and magnetic field components. + !> @brief Computes the fast magnetosonic wave speed from the sound speed, density, and magnetic field components. subroutine s_compute_fast_magnetosonic_speed(rho, c, B, norm, c_fast, h) $:GPU_ROUTINE(function_name='s_compute_fast_magnetosonic_speed', parallelism='[seq]', cray_noinline=True) diff --git a/src/post_process/m_data_input.f90 b/src/post_process/m_data_input.f90 index 3a75c391f2..255b93f964 100644 --- a/src/post_process/m_data_input.f90 +++ b/src/post_process/m_data_input.f90 @@ -25,6 +25,7 @@ module m_data_input abstract interface !> Subroutine for reading data files + !! @param t_step Current time-step to input impure subroutine s_read_abstract_data_files(t_step) implicit none @@ -39,6 +40,7 @@ end subroutine s_read_abstract_data_files type(scalar_field), allocatable, dimension(:), public :: q_prim_vf !< Primitive variables type(integer_field), allocatable, dimension(:,:), public :: bc_type !< Boundary condition identifiers type(scalar_field), public :: q_T_sf !< Temperature field + ! type(scalar_field), public :: ib_markers !< type(integer_field), public :: ib_markers @@ -47,6 +49,12 @@ end subroutine s_read_abstract_data_files contains !> Helper subroutine to read grid data files for a given direction + !! @param t_step_dir Directory containing the time-step data + !! @param direction Direction name ('x', 'y', 'z') + !! @param cb_array Cell boundary array to populate + !! @param d_array Cell width array to populate + !! @param cc_array Cell center array to populate + !! @param size_dim Size of the dimension impure subroutine s_read_grid_data_direction(t_step_dir, direction, cb_array, d_array, cc_array, size_dim) character(len=*), intent(in) :: t_step_dir @@ -58,9 +66,12 @@ impure subroutine s_read_grid_data_direction(t_step_dir, direction, cb_array, d_ character(LEN=len_trim(t_step_dir) + 10) :: file_loc logical :: file_check + ! Checking whether direction_cb.dat exists + file_loc = trim(t_step_dir) // '/' // direction // '_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_check) + ! Reading direction_cb.dat if it exists, exiting otherwise if (file_check) then open (1, FILE=trim(file_loc), form='unformatted', STATUS='old', ACTION='read') read (1) cb_array(-1:size_dim) @@ -69,27 +80,37 @@ impure subroutine s_read_grid_data_direction(t_step_dir, direction, cb_array, d_ call s_mpi_abort('File ' // direction // '_cb.dat is missing in ' // trim(t_step_dir) // '. Exiting.') end if + ! Computing the cell-width distribution d_array(0:size_dim) = cb_array(0:size_dim) - cb_array(-1:size_dim - 1) + + ! Computing the cell-center locations cc_array(0:size_dim) = cb_array(-1:size_dim - 1) + d_array(0:size_dim)/2._wp end subroutine s_read_grid_data_direction #ifdef MFC_MPI !> Helper subroutine to setup MPI data I/O parameters + !! @param data_size Local array size (output) + !! @param m_MOK, n_MOK, p_MOK MPI offset kinds for dimensions (output) + !! @param WP_MOK, MOK, str_MOK, NVARS_MOK Other MPI offset kinds (output) impure subroutine s_setup_mpi_io_params(data_size, m_MOK, n_MOK, p_MOK, WP_MOK, MOK, str_MOK, NVARS_MOK) integer, intent(out) :: data_size integer(KIND=MPI_OFFSET_KIND), intent(out) :: m_MOK, n_MOK, p_MOK integer(KIND=MPI_OFFSET_KIND), intent(out) :: WP_MOK, MOK, str_MOK, NVARS_MOK + ! Initialize MPI data I/O + if (ib) then call s_initialize_mpi_data(q_cons_vf, ib_markers) else call s_initialize_mpi_data(q_cons_vf) end if + ! Size of local arrays data_size = (m + 1)*(n + 1)*(p + 1) + ! Resize some integers so MPI can read even the biggest file m_MOK = int(m_glb + 1, MPI_OFFSET_KIND) n_MOK = int(n_glb + 1, MPI_OFFSET_KIND) p_MOK = int(p_glb + 1, MPI_OFFSET_KIND) @@ -102,6 +123,8 @@ end subroutine s_setup_mpi_io_params #endif !> Helper subroutine to read IB data files + !! @param file_loc_base Base file location for IB data + !! @param t_step Time step index impure subroutine s_read_ib_data_files(file_loc_base, t_step) character(len=*), intent(in) :: file_loc_base @@ -115,7 +138,6 @@ impure subroutine s_read_ib_data_files(file_loc_base, t_step) integer(KIND=MPI_OFFSET_KIND) :: disp integer :: m_MOK, n_MOK, p_MOK, MOK, WP_MOK, save_index #endif - if (.not. ib) return if (parallel_io) then @@ -162,6 +184,10 @@ impure subroutine s_read_ib_data_files(file_loc_base, t_step) end subroutine s_read_ib_data_files !> Helper subroutine to allocate field arrays for given dimensionality + !! @param local_start_idx Starting index for allocation + !! @param end_x End index for x dimension + !! @param end_y End index for y dimension + !! @param end_z End index for z dimension impure subroutine s_allocate_field_arrays(local_start_idx, end_x, end_y, end_z) integer, intent(in) :: local_start_idx, end_x, end_y, end_z @@ -182,25 +208,34 @@ impure subroutine s_allocate_field_arrays(local_start_idx, end_x, end_y, end_z) end subroutine s_allocate_field_arrays - !> Read the raw data files present in the corresponding time-step directory and to populate the associated grid and conservative - !! variables. + !> This subroutine is called at each time-step that has to be post-processed in order to read the raw data files present in the + !! corresponding time-step directory and to populate the associated grid and conservative variables. + !! @param t_step Current time-step impure subroutine s_read_serial_data_files(t_step) - integer, intent(in) :: t_step - character(LEN=len_trim(case_dir) + 2*name_len) :: t_step_dir - character(LEN=len_trim(case_dir) + 3*name_len) :: file_loc + integer, intent(in) :: t_step + character(LEN=len_trim(case_dir) + 2*name_len) :: t_step_dir + character(LEN=len_trim(case_dir) + 3*name_len) :: file_loc + + !> Used to store the variable position, in character form, of the currently manipulated conservative variable file character(LEN=int(floor(log10(real(sys_size, wp)))) + 1) :: file_num - character(LEN=len_trim(case_dir) + 2*name_len) :: t_step_ib_dir - logical :: dir_check - logical :: file_check - integer :: i + + !> Location of the time-step directory associated with t_step + character(LEN=len_trim(case_dir) + 2*name_len) :: t_step_ib_dir + logical :: dir_check + logical :: file_check + integer :: i + + ! Setting location of time-step folder based on current time-step write (t_step_dir, '(A,I0,A,I0)') '/p_all/p', proc_rank, '/', t_step t_step_dir = trim(case_dir) // trim(t_step_dir) + ! Inquiring as to the existence of the time-step directory file_loc = trim(t_step_dir) // '/.' call my_inquire(file_loc, dir_check) + ! If the time-step directory is missing, the post-process exits. if (dir_check .neqv. .true.) then call s_mpi_abort('Time-step folder ' // trim(t_step_dir) // ' is missing. Exiting.') end if @@ -211,6 +246,7 @@ impure subroutine s_read_serial_data_files(t_step) call s_assign_default_bc_type(bc_type) end if + ! Reading the Grid Data Files using helper subroutine call s_read_grid_data_direction(t_step_dir, 'x', x_cb, dx, x_cc, m) if (n > 0) then @@ -221,11 +257,15 @@ impure subroutine s_read_serial_data_files(t_step) end if end if + ! Reading the Conservative Variables Data Files do i = 1, sys_size + ! Checking whether the data file associated with the variable position of currently manipulated conservative variable + ! exists write (file_num, '(I0)') i file_loc = trim(t_step_dir) // '/q_cons_vf' // trim(file_num) // '.dat' inquire (FILE=trim(file_loc), EXIST=file_check) + ! Reading the data file if it exists, exiting otherwise if (file_check) then open (1, FILE=trim(file_loc), form='unformatted', STATUS='old', ACTION='read') read (1) q_cons_vf(i)%sf(0:m,0:n,0:p) @@ -238,12 +278,14 @@ impure subroutine s_read_serial_data_files(t_step) end if end do + ! Reading IB data using helper subroutine call s_read_ib_data_files(t_step_dir) end subroutine s_read_serial_data_files - !> Parallel-read the raw data files present in the corresponding time-step directory and to populate the associated grid and - !! conservative variables. + !> This subroutine is called at each time-step that has to be post-processed in order to parallel-read the raw data files + !! present in the corresponding time-step directory and to populate the associated grid and conservative variables. + !! @param t_step Current time-step impure subroutine s_read_parallel_data_files(t_step) integer, intent(in) :: t_step @@ -274,6 +316,7 @@ impure subroutine s_read_parallel_data_files(t_step) stride = 1 end if + ! Read in cell boundary locations in x-direction file_loc = trim(case_dir) // '/restart_data' // trim(mpiiofs) // 'x_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_exist) @@ -293,11 +336,15 @@ impure subroutine s_read_parallel_data_files(t_step) call s_mpi_abort('File ' // trim(file_loc) // ' is missing. Exiting.') end if + ! Assigning local cell boundary locations x_cb(-1:m) = x_cb_glb((start_idx(1) - 1):(start_idx(1) + m)) + ! Computing the cell width distribution dx(0:m) = x_cb(0:m) - x_cb(-1:m - 1) + ! Computing the cell center location x_cc(0:m) = x_cb(-1:m - 1) + dx(0:m)/2._wp if (n > 0) then + ! Read in cell boundary locations in y-direction file_loc = trim(case_dir) // '/restart_data' // trim(mpiiofs) // 'y_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_exist) @@ -317,11 +364,15 @@ impure subroutine s_read_parallel_data_files(t_step) call s_mpi_abort('File ' // trim(file_loc) // ' is missing. Exiting.') end if + ! Assigning local cell boundary locations y_cb(-1:n) = y_cb_glb((start_idx(2) - 1):(start_idx(2) + n)) + ! Computing the cell width distribution dy(0:n) = y_cb(0:n) - y_cb(-1:n - 1) + ! Computing the cell center location y_cc(0:n) = y_cb(-1:n - 1) + dy(0:n)/2._wp if (p > 0) then + ! Read in cell boundary locations in z-direction file_loc = trim(case_dir) // '/restart_data' // trim(mpiiofs) // 'z_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_exist) @@ -341,8 +392,11 @@ impure subroutine s_read_parallel_data_files(t_step) call s_mpi_abort('File ' // trim(file_loc) // ' is missing. Exiting.') end if + ! Assigning local cell boundary locations z_cb(-1:p) = z_cb_glb((start_idx(3) - 1):(start_idx(3) + p)) + ! Computing the cell width distribution dz(0:p) = z_cb(0:p) - z_cb(-1:p - 1) + ! Computing the cell center location z_cc(0:p) = z_cb(-1:p - 1) + dz(0:p)/2._wp end if end if @@ -362,6 +416,9 @@ end subroutine s_read_parallel_data_files #ifdef MFC_MPI !> Helper subroutine to read parallel conservative variable data + !! @param t_step Current time-step + !! @param m_MOK, n_MOK, p_MOK MPI offset kinds for dimensions + !! @param WP_MOK, MOK, str_MOK, NVARS_MOK Other MPI offset kinds impure subroutine s_read_parallel_conservative_data(t_step, m_MOK, n_MOK, p_MOK, WP_MOK, MOK, str_MOK, NVARS_MOK) integer, intent(in) :: t_step @@ -377,6 +434,7 @@ impure subroutine s_read_parallel_conservative_data(t_step, m_MOK, n_MOK, p_MOK, if (file_per_process) then call s_int_to_str(t_step, t_step_string) + ! Open the file to read conservative variables write (file_loc, '(I0,A1,I7.7,A)') t_step, '_', proc_rank, '.dat' file_loc = trim(case_dir) // '/restart_data/lustre_' // trim(t_step_string) // trim(mpiiofs) // trim(file_loc) inquire (FILE=trim(file_loc), EXIST=file_exist) @@ -387,6 +445,7 @@ impure subroutine s_read_parallel_conservative_data(t_step, m_MOK, n_MOK, p_MOK, if (down_sample) then call s_initialize_mpi_data_ds(q_cons_temp) else + ! Initialize MPI data I/O if (ib) then call s_initialize_mpi_data(q_cons_vf, ib_markers) else @@ -395,11 +454,14 @@ impure subroutine s_read_parallel_conservative_data(t_step, m_MOK, n_MOK, p_MOK, end if if (down_sample) then + ! Size of local arrays data_size = (m + 3)*(n + 3)*(p + 3) else + ! Size of local arrays data_size = (m + 1)*(n + 1)*(p + 1) end if + ! Resize some integers so MPI can read even the biggest file m_MOK = int(m_glb + 1, MPI_OFFSET_KIND) n_MOK = int(n_glb + 1, MPI_OFFSET_KIND) p_MOK = int(p_glb + 1, MPI_OFFSET_KIND) @@ -408,6 +470,7 @@ impure subroutine s_read_parallel_conservative_data(t_step, m_MOK, n_MOK, p_MOK, str_MOK = int(name_len, MPI_OFFSET_KIND) NVARS_MOK = int(sys_size, MPI_OFFSET_KIND) + ! Read the data for each variable if (bubbles_euler .or. elasticity .or. mhd) then do i = 1, sys_size var_MOK = int(i, MPI_OFFSET_KIND) @@ -434,6 +497,7 @@ impure subroutine s_read_parallel_conservative_data(t_step, m_MOK, n_MOK, p_MOK, call s_mpi_abort('File ' // trim(file_loc) // ' is missing. Exiting.') end if else + ! Open the file to read conservative variables write (file_loc, '(I0,A)') t_step, '.dat' file_loc = trim(case_dir) // '/restart_data' // trim(mpiiofs) // trim(file_loc) inquire (FILE=trim(file_loc), EXIST=file_exist) @@ -443,9 +507,11 @@ impure subroutine s_read_parallel_conservative_data(t_step, m_MOK, n_MOK, p_MOK, call s_setup_mpi_io_params(data_size, m_MOK, n_MOK, p_MOK, WP_MOK, MOK, str_MOK, NVARS_MOK) + ! Read the data for each variable do i = 1, sys_size var_MOK = int(i, MPI_OFFSET_KIND) + ! Initial displacement to skip at beginning of file disp = m_MOK*max(MOK, n_MOK)*max(MOK, p_MOK)*WP_MOK*(var_MOK - 1) call MPI_FILE_SET_VIEW(ifile, disp, mpi_p, MPI_IO_DATA%view(i), 'native', mpi_info_int, ierr) @@ -469,11 +535,19 @@ impure subroutine s_initialize_data_input_module integer :: i + ! Allocating the parts of the conservative and primitive variables that do not require the direct knowledge of the + ! dimensionality of the simulation + allocate (q_cons_vf(1:sys_size)) allocate (q_prim_vf(1:sys_size)) allocate (q_cons_temp(1:sys_size)) + ! Allocating the parts of the conservative and primitive variables that do require the direct knowledge of the + ! dimensionality of the simulation using helper subroutine + + ! Simulation is at least 2D if (n > 0) then + ! Simulation is 3D if (p > 0) then call s_allocate_field_arrays(-buff_size, m + buff_size, n + buff_size, p + buff_size) if (down_sample) then @@ -482,12 +556,15 @@ impure subroutine s_initialize_data_input_module end do end if else + ! Simulation is 2D call s_allocate_field_arrays(-buff_size, m + buff_size, n + buff_size, 0) end if else + ! Simulation is 1D call s_allocate_field_arrays(-buff_size, m + buff_size, 0, 0) end if + ! Allocating arrays to store the bc types allocate (bc_type(1:num_dims,1:2)) allocate (bc_type(1, 1)%sf(0:0,0:n,0:p)) @@ -514,6 +591,8 @@ impure subroutine s_finalize_data_input_module integer :: i + ! Deallocating the conservative and primitive variables + do i = 1, sys_size deallocate (q_cons_vf(i)%sf) deallocate (q_prim_vf(i)%sf) diff --git a/src/post_process/m_data_output.fpp b/src/post_process/m_data_output.fpp index 0ac093288f..4a679c85c5 100644 --- a/src/post_process/m_data_output.fpp +++ b/src/post_process/m_data_output.fpp @@ -22,10 +22,13 @@ module m_data_output & s_write_energy_data_file, s_close_formatted_database_file, s_close_intf_data_file, s_close_energy_data_file, & & s_finalize_data_output_module - ! Include Silo-HDF5 interface library + ! Including the Silo Fortran interface library that features the subroutines and parameters that are required to write in the + ! Silo-HDF5 database format INCLUDE 'silo.inc' include 'silo_f9x.inc' - ! Flow variable storage; q_root_sf gathers to rank 0 in 1D parallel runs + ! Generic storage for flow variable(s) that are to be written to formatted database file(s). Note that for 1D simulations, + ! q_root_sf is employed to gather the flow variable(s) from all sub-domains on to the root process. If the run is not parallel, + ! but serial, then q_root_sf is equal to q_sf. real(wp), allocatable, dimension(:,:,:), public :: q_sf real(wp), allocatable, dimension(:,:,:) :: q_root_sf real(wp), allocatable, dimension(:,:,:) :: cyl_q_sf @@ -35,15 +38,20 @@ module m_data_output real(sp), allocatable, dimension(:,:,:) :: q_root_sf_s real(sp), allocatable, dimension(:,:,:) :: cyl_q_sf_s - ! Spatial and data extents for VisIt visualization + ! The spatial and data extents array variables contain information about the minimum and maximum values of the grid and flow + ! variable(s), respectively. The purpose of bookkeeping this information is to boost the visualization of the Silo-HDF5 database + ! file(s) in VisIt. real(wp), allocatable, dimension(:,:) :: spatial_extents real(wp), allocatable, dimension(:,:) :: data_extents - ! Ghost zone layer sizes (lo/hi) for subdomain connectivity in VisIt + ! The size of the ghost zone layer at beginning of each coordinate direction (lo) and at end of each coordinate direction (hi). + ! Adding this information to Silo-HDF5 database file(s) is recommended since it supplies VisIt with connectivity information + ! between the sub-domains of a parallel data set. integer, allocatable, dimension(:) :: lo_offset integer, allocatable, dimension(:) :: hi_offset - ! Track cell-boundary count per active coordinate direction + ! For Silo-HDF5 database format, this variable is used to keep track of the number of cell-boundaries, for the grid associated + ! with the local process, in each of the active coordinate directions. integer, allocatable, dimension(:) :: dims ! Locations of various folders in the case's directory tree, associated with the choice of the formatted database format. These @@ -74,12 +82,20 @@ module m_data_output contains - !> Allocate storage arrays, configure output directories, and count flow variables for formatted database output. + !> @brief Allocate storage arrays, configure output directories, and count flow variables for formatted database output. impure subroutine s_initialize_data_output_module() + ! Description: Computation of parameters, allocation procedures, and/or any other tasks needed to properly setup the module + + ! Generic string used to store the location of a particular file character(LEN=len_trim(case_dir) + 2*name_len) :: file_loc - logical :: dir_check - integer :: i + + ! Generic logical used to test the existence of a particular folder + logical :: dir_check + integer :: i + + ! Allocating the generic storage for the flow variable(s) that are going to be written to the formatted database file(s). + ! Note once more that the root variable is only required for 1D computations. allocate (q_sf(-offset_x%beg:m + offset_x%end,-offset_y%beg:n + offset_y%end,-offset_z%beg:p + offset_z%end)) if (grid_geometry == 3) then @@ -157,7 +173,9 @@ contains end if end if + ! Generating Silo-HDF5 Directory Tree if (format == 1) then + ! Creating the directory associated with the local process dbdir = trim(case_dir) // '/silo_hdf5' write (proc_rank_dir, '(A,I0)') '/p', proc_rank @@ -171,6 +189,7 @@ contains call s_create_directory(trim(proc_rank_dir)) end if + ! Creating the directory associated with the root process if (proc_rank == 0) then rootdir = trim(dbdir) // '/root' @@ -181,7 +200,10 @@ contains call s_create_directory(trim(rootdir)) end if end if + + ! Generating Binary Directory Tree else + ! Creating the directory associated with the local process dbdir = trim(case_dir) // '/binary' write (proc_rank_dir, '(A,I0)') '/p', proc_rank @@ -196,6 +218,7 @@ contains call s_create_directory(trim(proc_rank_dir)) end if + ! Creating the directory associated with the root process if (n == 0 .and. proc_rank == 0) then rootdir = trim(dbdir) // '/root' @@ -229,9 +252,13 @@ contains dbfile = 1 end if + ! Querying Number of Flow Variable(s) in Binary Output + if (format == 2) then + ! Initializing the counter of the number of flow variable(s) to be written to the formatted database file(s) dbvars = 0 + ! Partial densities if ((model_eqns == 2) .or. (model_eqns == 3)) then do i = 1, num_fluids if (alpha_rho_wrt(i) .or. (cons_vars_wrt .or. prim_vars_wrt)) then @@ -240,6 +267,7 @@ contains end do end if + ! Density if ((rho_wrt .or. (model_eqns == 1 .and. (cons_vars_wrt .or. prim_vars_wrt))) .and. (.not. relativity)) then dbvars = dbvars + 1 end if @@ -247,24 +275,37 @@ contains if (relativity .and. (rho_wrt .or. prim_vars_wrt)) dbvars = dbvars + 1 if (relativity .and. (rho_wrt .or. cons_vars_wrt)) dbvars = dbvars + 1 + ! Momentum do i = 1, E_idx - mom_idx%beg if (mom_wrt(i) .or. cons_vars_wrt) dbvars = dbvars + 1 end do + ! Velocity do i = 1, E_idx - mom_idx%beg if (vel_wrt(i) .or. prim_vars_wrt) dbvars = dbvars + 1 end do + ! Flux limiter function do i = 1, E_idx - mom_idx%beg if (flux_wrt(i)) dbvars = dbvars + 1 end do + ! Energy if (E_wrt .or. cons_vars_wrt) dbvars = dbvars + 1 + + ! Pressure if (pres_wrt .or. prim_vars_wrt) dbvars = dbvars + 1 + + ! Elastic stresses if (hypoelasticity) dbvars = dbvars + (num_dims*(num_dims + 1))/2 + + ! Damage state variable if (cont_damage) dbvars = dbvars + 1 + + ! Hyperbolic cleaning for MHD if (hyper_cleaning) dbvars = dbvars + 1 + ! Magnetic field if (mhd) then if (n == 0) then dbvars = dbvars + 2 @@ -273,6 +314,7 @@ contains end if end if + ! Volume fraction(s) if ((model_eqns == 2) .or. (model_eqns == 3)) then do i = 1, num_fluids - 1 if (alpha_wrt(i) .or. (cons_vars_wrt .or. prim_vars_wrt)) then @@ -285,19 +327,26 @@ contains end if end if + ! Specific heat ratio function if (gamma_wrt .or. (model_eqns == 1 .and. (cons_vars_wrt .or. prim_vars_wrt))) then dbvars = dbvars + 1 end if + ! Specific heat ratio if (heat_ratio_wrt) dbvars = dbvars + 1 + ! Liquid stiffness function if (pi_inf_wrt .or. (model_eqns == 1 .and. (cons_vars_wrt .or. prim_vars_wrt))) then dbvars = dbvars + 1 end if + ! Liquid stiffness if (pres_inf_wrt) dbvars = dbvars + 1 + + ! Speed of sound if (c_wrt) dbvars = dbvars + 1 + ! Vorticity if (p > 0) then do i = 1, num_vels if (omega_wrt(i)) dbvars = dbvars + 1 @@ -308,12 +357,15 @@ contains end do end if + ! Numerical Schlieren function if (schlieren_wrt) dbvars = dbvars + 1 end if + ! END: Querying Number of Flow Variable(s) in Binary Output + end subroutine s_initialize_data_output_module - !> Compute the cell-index bounds for the user-specified partial output domain in each coordinate direction. + !> @brief Compute the cell-index bounds for the user-specified partial output domain in each coordinate direction. impure subroutine s_define_output_region integer :: i @@ -348,23 +400,42 @@ contains end subroutine s_define_output_region - !> Open (or create) the Silo-HDF5 or Binary formatted database slave and master files for a given time step. + !> @brief Open (or create) the Silo-HDF5 or Binary formatted database slave and master files for a given time step. impure subroutine s_open_formatted_database_file(t_step) - integer, intent(in) :: t_step + ! Description: This subroutine opens a new formatted database file, or replaces an old one, and readies it for the data + ! storage of the grid and the flow variable(s) associated with the current time-step, t_step. This is performed by all the + ! local process(es). The root processor, in addition, must also generate a master formatted database file whose job will be + ! to link, and thus combine, the data from all of the local process(es). Note that for the Binary format, this extra task + ! that is assigned to the root process is not performed in multidimensions. + + ! Time-step that is currently being post-processed + integer, intent(in) :: t_step + + ! Generic string used to store the location of a particular file character(LEN=len_trim(case_dir) + 3*name_len) :: file_loc integer :: ierr + ! Silo-HDF5 Database Format + if (format == 1) then + ! Generating the relative path to the formatted database slave file, that is to be opened for the current time-step, + ! t_step write (file_loc, '(A,I0,A)') '/', t_step, '.silo' file_loc = trim(proc_rank_dir) // trim(file_loc) + ! Creating formatted database slave file at the above location and setting up the structure of the file and its header + ! info ierr = DBCREATE(trim(file_loc), len_trim(file_loc), DB_CLOBBER, DB_LOCAL, 'MFC v3.0', 8, DB_HDF5, dbfile) + ! Verifying that the creation and setup process of the formatted database slave file has been performed without errors. + ! If this is not the case, the post-process exits. if (dbfile == -1) then call s_mpi_abort('Unable to create Silo-HDF5 database ' // 'slave file ' // trim(file_loc) // '. ' // 'Exiting.') end if + ! Next, analogous steps to the ones above are carried out by the root process to create and setup the formatted database + ! master file. if (proc_rank == 0) then write (file_loc, '(A,I0,A)') '/collection_', t_step, '.silo' file_loc = trim(rootdir) // trim(file_loc) @@ -376,16 +447,26 @@ contains & // 'Exiting.') end if end if + + ! Binary Database Format else + ! Generating the relative path to the formatted database slave file, that is to be opened for the current time-step, + ! t_step write (file_loc, '(A,I0,A)') '/', t_step, '.dat' file_loc = trim(proc_rank_dir) // trim(file_loc) + ! Creating the formatted database slave file, at the previously precised relative path location, and setting up its + ! structure open (dbfile, IOSTAT=err, FILE=trim(file_loc), form='unformatted', STATUS='replace') + ! Verifying that the creation and setup process of the formatted database slave file has been performed without errors. + ! If this is not the case, the post-process exits. if (err /= 0) then call s_mpi_abort('Unable to create Binary database slave ' // 'file ' // trim(file_loc) // '. Exiting.') end if + ! Further defining the structure of the formatted database slave file by describing in it the dimensionality of + ! post-processed data as well as the total number of flow variable(s) that will eventually be stored in it if (output_partial_domain) then write (dbfile) x_output_idx%end - x_output_idx%beg, y_output_idx%end - y_output_idx%beg, & & z_output_idx%end - z_output_idx%beg, dbvars @@ -393,6 +474,8 @@ contains write (dbfile) m, n, p, dbvars end if + ! Next, analogous steps to the ones above are carried out by the root process to create and setup the formatted database + ! master file. Note that this is only done in multidimensional cases. if (n == 0 .and. proc_rank == 0) then write (file_loc, '(A,I0,A)') '/', t_step, '.dat' file_loc = trim(rootdir) // trim(file_loc) @@ -413,7 +496,7 @@ contains end subroutine s_open_formatted_database_file - !> Open the interface data file for appending extracted interface coordinates. + !> @brief Open the interface data file for appending extracted interface coordinates. impure subroutine s_open_intf_data_file() character(LEN=path_len + 3*name_len) :: file_path @@ -421,11 +504,12 @@ contains write (file_path, '(A)') '/intf_data.dat' file_path = trim(case_dir) // trim(file_path) + ! Opening the simulation data file open (211, FILE=trim(file_path), form='formatted', POSITION='append', STATUS='unknown') end subroutine s_open_intf_data_file - !> Open the energy data file for appending volume-integrated energy budget quantities. + !> @brief Open the energy data file for appending volume-integrated energy budget quantities. impure subroutine s_open_energy_data_file() character(LEN=path_len + 3*name_len) :: file_path @@ -433,20 +517,37 @@ contains write (file_path, '(A)') '/eng_data.dat' file_path = trim(case_dir) // trim(file_path) + ! Opening the simulation data file open (251, FILE=trim(file_path), form='formatted', POSITION='append', STATUS='unknown') end subroutine s_open_energy_data_file - !> Write the computational grid (cell-boundary coordinates) to the formatted database slave and master files. + !> @brief Write the computational grid (cell-boundary coordinates) to the formatted database slave and master files. impure subroutine s_write_grid_to_formatted_database_file(t_step) + ! Description: The general objective of this subroutine is to write the necessary grid data to the formatted database file, + ! for the current time-step, t_step. The local processor will write the grid data of the domain segment that it is in charge + ! of to the formatted database slave file. The root process will additionally take care of linking that grid data in the + ! formatted database master file. In the Silo- HDF5 database format, the spatial extents of each local process grid are also + ! written to the master file. In the Binary format, note that no master file is maintained in multidimensions. Finally, in + ! 1D, no grid data is written within this subroutine for the Silo-HDF5 format because curve objects rather than + ! quadrilateral meshes are used. For curve objects, in contrast to the quadrilateral mesh objects, the grid data is included + ! side by side with the flow variable data. Then, in this case, we take care of writing both the grid and the flow variable + ! data in the subroutine s_write_variable_to_formatted_database_file. + + ! Time-step that is currently being post-processed integer, intent(in) :: t_step - ! NAG compiler requires these to be statically sized + ! Bookkeeping variables storing the name and type of mesh that is handled by the local processor(s). Note that due to an + ! internal NAG Fortran compiler problem, these two variables could not be allocated dynamically. character(LEN=4*name_len), dimension(num_procs) :: meshnames integer, dimension(num_procs) :: meshtypes - integer :: i - integer :: ierr + + ! Generic loop iterator + integer :: i + integer :: ierr + + ! Silo-HDF5 Database Format if (format == 1) then ! For multidimensional data sets, the spatial extents of all of the grid(s) handled by the local processor(s) are @@ -514,6 +615,9 @@ contains & DB_DOUBLE, DB_COLLINEAR, optlist, ierr) err = DBFREEOPTLIST(optlist) end if + ! END: Silo-HDF5 Database Format + + ! Binary Database Format else if (format == 2) then ! Multidimensional local grid data is written to the formatted database slave file. Recall that no master file to ! maintained in multidimensions. @@ -574,17 +678,34 @@ contains end subroutine s_write_grid_to_formatted_database_file - !> Write a single flow variable field to the formatted database slave and master files for a given time step. + !> @brief Write a single flow variable field to the formatted database slave and master files for a given time step. impure subroutine s_write_variable_to_formatted_database_file(varname, t_step) + ! Description: The goal of this subroutine is to write to the formatted database file the flow variable at the current + ! time-step, t_step. The local process(es) write the part of the flow variable that they handle to the formatted database + ! slave file. The root process, on the other hand, will also take care of connecting all of the flow variable data in the + ! formatted database master file. In the Silo-HDF5 database format, the extents of each local process flow variable are also + ! written to the master file. Note that in Binary format, no master file is maintained in multidimensions. Finally note that + ! in 1D, grid data is also written within this subroutine for Silo-HDF5 database format since curve and not the + ! quadrilateral variable objects are used, see description of s_write_grid_to_formatted_database_file for more details on + ! this topic. + + ! Name of the flow variable, which will be written to the formatted database file at the current time-step, t_step character(LEN=*), intent(in) :: varname - integer, intent(in) :: t_step - ! NAG compiler requires these to be statically sized + ! Time-step that is currently being post-processed + integer, intent(in) :: t_step + + ! Bookkeeping variables storing the name and type of flow variable that is about to be handled by the local processor(s). + ! Note that due to an internal NAG Fortran compiler problem, these variables could not be allocated dynamically. character(LEN=4*name_len), dimension(num_procs) :: varnames integer, dimension(num_procs) :: vartypes - integer :: i, j, k - integer :: ierr + + ! Generic loop iterator + integer :: i, j, k + integer :: ierr + + ! Silo-HDF5 Database Format if (format == 1) then ! Determining the extents of the flow variable on each local process and gathering all this information on root process @@ -594,6 +715,7 @@ contains data_extents(:,0) = (/minval(q_sf), maxval(q_sf)/) end if + ! Next, the root process proceeds to write the gathered flow variable data extents to formatted database master file. if (proc_rank == 0) then do i = 1, num_procs write (varnames(i), '(A,I0,A,I0,A)') '../p', i - 1, '/', t_step, '.silo:' // trim(varname) @@ -610,6 +732,8 @@ contains err = DBFREEOPTLIST(optlist) end if + ! Finally, each of the local processor(s) proceeds to write the flow variable data that it is responsible for to the + ! formatted database slave file. if (wp == dp) then if (precision == 1) then do i = -offset_x%beg, m + offset_x%end @@ -677,6 +801,10 @@ contains end if end if #:endfor + + ! END: Silo-HDF5 Database Format + + ! Binary Database Format else ! Writing the name of the flow variable and its data, associated with the local processor, to the formatted database ! slave file @@ -707,7 +835,8 @@ contains end subroutine s_write_variable_to_formatted_database_file - !> Write the post-processed results in the folder 'lag_bubbles_data' + !> Subroutine that writes the post processed results in the folder 'lag_bubbles_data' + !! @param t_step Current time step impure subroutine s_write_lag_bubbles_results_to_text(t_step) integer, intent(in) :: t_step @@ -729,7 +858,6 @@ contains integer :: i integer, dimension(:), allocatable :: proc_bubble_counts real(wp), dimension(1:1,1:lag_io_vars) :: lag_io_null - lag_io_null = 0._wp ! Construct file path @@ -860,7 +988,7 @@ contains end subroutine s_write_lag_bubbles_results_to_text - !> Read Lagrangian bubble restart data and write bubble positions and scalar fields to the Silo database. + !> @brief Read Lagrangian bubble restart data and write bubble positions and scalar fields to the Silo database. impure subroutine s_write_lag_bubbles_to_formatted_database_file(t_step) integer, intent(in) :: t_step @@ -1068,7 +1196,7 @@ contains end subroutine s_write_lag_bubbles_to_formatted_database_file - !> Write a single Lagrangian bubble point-variable to the Silo database slave and master files. + !> @brief Write a single Lagrangian bubble point-variable to the Silo database slave and master files. subroutine s_write_lag_variable_to_formatted_database_file(varname, t_step, data, nBubs) character(len=*), intent(in) :: varname @@ -1113,7 +1241,6 @@ contains end subroutine s_write_lag_variable_to_formatted_database_file - !> Convert the binary immersed-boundary state file to per-body formatted text files impure subroutine s_write_ib_state_files() character(len=len_trim(case_dir) + 4*name_len) :: in_file, out_file, file_loc @@ -1164,7 +1291,8 @@ contains end subroutine s_write_ib_state_files - !> Extract the volume-fraction interface contour from primitive fields and write the coordinates to the interface data file. + !> @brief Extract the volume-fraction interface contour from primitive fields and write the coordinates to the interface data + !! file. impure subroutine s_write_intf_data_file(q_prim_vf) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -1250,7 +1378,8 @@ contains end subroutine s_write_intf_data_file - !> Compute volume-integrated kinetic, potential, and internal energies and write the energy budget to the energy data file. + !> @brief Compute volume-integrated kinetic, potential, and internal energies and write the energy budget to the energy data + !! file. impure subroutine s_write_energy_data_file(q_prim_vf, q_cons_vf) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf, q_cons_vf @@ -1342,14 +1471,24 @@ contains end subroutine s_write_energy_data_file - !> Close the formatted database slave file and, for the root process, the master file. + !> @brief Close the formatted database slave file and, for the root process, the master file. impure subroutine s_close_formatted_database_file() + ! Description: The purpose of this subroutine is to close any formatted database file(s) that may be opened at the time-step + ! that is currently being post-processed. The root process must typically close two files, one associated with the local + ! sub-domain and the other with the entire domain. The non- root process(es) must close one file, which is associated with + ! the local sub-domain. Note that for the Binary data- base format and multidimensional data, the root process only has to + ! close the file associated with the local sub- domain, because one associated with the entire domain is not generated. + integer :: ierr + ! Silo-HDF5 database format + if (format == 1) then ierr = DBCLOSE(dbfile) if (proc_rank == 0) ierr = DBCLOSE(dbroot) + + ! Binary database format else close (dbfile) if (n == 0 .and. proc_rank == 0) close (dbroot) @@ -1357,23 +1496,27 @@ contains end subroutine s_close_formatted_database_file - !> Close the interface data file. + !> @brief Close the interface data file. impure subroutine s_close_intf_data_file() close (211) end subroutine s_close_intf_data_file - !> Close the energy data file. + !> @brief Close the energy data file. impure subroutine s_close_energy_data_file() close (251) end subroutine s_close_energy_data_file - !> Deallocate module arrays and release all data-output resources. + !> @brief Deallocate module arrays and release all data-output resources. impure subroutine s_finalize_data_output_module() + ! Description: Deallocation procedures for the module + + ! Deallocating the generic storage employed for the flow variable(s) that were written to the formatted database file(s). + ! Note that the root variable is only deallocated in the case of a 1D computation. deallocate (q_sf) if (n == 0) deallocate (q_root_sf) if (grid_geometry == 3) then diff --git a/src/post_process/m_derived_variables.fpp b/src/post_process/m_derived_variables.fpp index daa9ca6dbf..4c18dee689 100644 --- a/src/post_process/m_derived_variables.fpp +++ b/src/post_process/m_derived_variables.fpp @@ -18,7 +18,10 @@ module m_derived_variables & s_derive_sound_speed, s_derive_flux_limiter, s_derive_vorticity_component, s_derive_qm, s_derive_liutex, & & s_derive_numerical_schlieren_function, s_compute_speed_of_sound, s_finalize_derived_variables_module + !> Gradient magnitude (gm) of the density for each cell of the computational sub-domain. This variable is employed in the + !! calculation of the numerical Schlieren function. real(wp), allocatable, dimension(:,:,:) :: gm_rho_sf !< Density gradient magnitude for numerical Schlieren + !> @name Finite-difference (fd) coefficients in x-, y- and z-coordinate directions. Note that because sufficient boundary !! information is available for all the active coordinate directions, the centered family of the finite-difference schemes is !! used. @@ -28,6 +31,11 @@ module m_derived_variables real(wp), allocatable, dimension(:,:), public :: fd_coeff_z !> @} + !> Flagging (flg) variable used to annotate the dimensionality of the dataset that is undergoing the post-process. A flag value + !! of 1 indicates that the dataset is 3D, while a flag value of 0 indicates that it is not. This flg variable is necessary to + !! avoid cycling through the third dimension of the flow variable(s) when the simulation is not 3D and the size of the buffer is + !! non-zero. Note that a similar procedure does not have to be applied to the second dimension since in 1D, the buffer size is + !! always zero. integer, private :: flg !< Dimensionality flag: 1 = 3D dataset, 0 = otherwise contains @@ -35,25 +43,34 @@ contains !> Computation of parameters, allocation procedures, and/or any other tasks needed to properly setup the module impure subroutine s_initialize_derived_variables_module - ! Allocate density gradient magnitude if Schlieren output requested + ! Allocating the gradient magnitude of the density variable provided that numerical Schlieren function is outputted during + ! post-process if (schlieren_wrt) then allocate (gm_rho_sf(-offset_x%beg:m + offset_x%end,-offset_y%beg:n + offset_y%end,-offset_z%beg:p + offset_z%end)) end if - ! Allocate FD coefficients (up to 4th order; higher orders need extension) + ! Allocating the variables which will store the coefficients of the centered family of finite-difference schemes. Note that + ! sufficient space is allocated so that the coefficients up to any chosen order of accuracy may be bookkept. However, if + ! higher than fourth-order accuracy coefficients are wanted, the formulae required to compute these coefficients will have + ! to be implemented in the subroutine s_compute_finite_difference_coefficients. + ! Allocating centered finite-difference coefficients in x-direction if (omega_wrt(2) .or. omega_wrt(3) .or. schlieren_wrt .or. liutex_wrt) then allocate (fd_coeff_x(-fd_number:fd_number,-offset_x%beg:m + offset_x%end)) end if + ! Allocating centered finite-difference coefficients in y-direction if (omega_wrt(1) .or. omega_wrt(3) .or. liutex_wrt .or. (n > 0 .and. schlieren_wrt)) then allocate (fd_coeff_y(-fd_number:fd_number,-offset_y%beg:n + offset_y%end)) end if + ! Allocating centered finite-difference coefficients in z-direction if (omega_wrt(1) .or. omega_wrt(2) .or. liutex_wrt .or. (p > 0 .and. schlieren_wrt)) then allocate (fd_coeff_z(-fd_number:fd_number,-offset_z%beg:p + offset_z%end)) end if + ! Annotating the dimensionality of the dataset undergoing the post- process. A flag value of 1 indicates that the dataset is + ! 3D, while a flag value of 0 indicates that it is not. if (p > 0) then flg = 1 else @@ -62,14 +79,17 @@ contains end subroutine s_initialize_derived_variables_module - !> Derive the specific heat ratio from the specific heat ratio function gamma_sf. The latter is stored in the derived flow - !! quantity storage variable, q_sf. + !> This subroutine receives as input the specific heat ratio function, gamma_sf, and derives from it the specific heat ratio. + !! The latter is stored in the derived flow quantity storage variable, q_sf. + !! @param q_sf Specific heat ratio subroutine s_derive_specific_heat_ratio(q_sf) real(wp), dimension(-offset_x%beg:m + offset_x%end,-offset_y%beg:n + offset_y%end,-offset_z%beg:p + offset_z%end), & & intent(inout) :: q_sf integer :: i, j, k + + ! Computing specific heat ratio from specific heat ratio function do k = -offset_z%beg, p + offset_z%end do j = -offset_y%beg, n + offset_y%end do i = -offset_x%beg, m + offset_x%end @@ -80,15 +100,19 @@ contains end subroutine s_derive_specific_heat_ratio - !> Compute the liquid stiffness from the specific heat ratio function gamma_sf and the liquid stiffness function pi_inf_sf, + !> This subroutine admits as inputs the specific heat ratio function and the liquid stiffness function, gamma_sf and pi_inf_sf, !! respectively. These are used to calculate the values of the liquid stiffness, which are stored in the derived flow quantity !! storage variable, q_sf. + !! @param q_sf Liquid stiffness subroutine s_derive_liquid_stiffness(q_sf) real(wp), dimension(-offset_x%beg:m + offset_x%end,-offset_y%beg:n + offset_y%end,-offset_z%beg:p + offset_z%end), & & intent(inout) :: q_sf integer :: i, j, k + + ! Calculating the values of the liquid stiffness from those of the specific heat ratio function and the liquid stiffness + ! function do k = -offset_z%beg, p + offset_z%end do j = -offset_y%beg, n + offset_y%end do i = -offset_x%beg, m + offset_x%end @@ -99,9 +123,11 @@ contains end subroutine s_derive_liquid_stiffness - !> Compute the speed of sound from the primitive variables, density, specific heat ratio function, and liquid stiffness + !> This subroutine admits as inputs the primitive variables, the density, the specific heat ratio function and liquid stiffness !! function. It then computes from those variables the values of the speed of sound, which are stored in the derived flow !! quantity storage variable, q_sf. + !! @param q_prim_vf Primitive variables + !! @param q_sf Speed of sound subroutine s_derive_sound_speed(q_prim_vf, q_sf) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -109,12 +135,17 @@ contains real(wp), dimension(-offset_x%beg:m + offset_x%end,-offset_y%beg:n + offset_y%end,-offset_z%beg:p + offset_z%end), & & intent(inout) :: q_sf - integer :: i, j, k + integer :: i, j, k + + ! Fluid bulk modulus for alternate sound speed real(wp) :: blkmod1, blkmod2 + ! Computing speed of sound values from those of pressure, density, specific heat ratio function and the liquid stiffness + ! function do k = -offset_z%beg, p + offset_z%end do j = -offset_y%beg, n + offset_y%end do i = -offset_x%beg, m + offset_x%end + ! Compute mixture sound speed if (alt_soundspeed .neqv. .true.) then q_sf(i, j, k) = (((gamma_sf(i, j, k) + 1._wp)*q_prim_vf(E_idx)%sf(i, j, k) + pi_inf_sf(i, j, & & k))/(gamma_sf(i, j, k)*rho_sf(i, j, k))) @@ -136,8 +167,12 @@ contains end subroutine s_derive_sound_speed - !> Derive the flux limiter at cell boundary i+1/2. This is an approximation because the velocity used to determine the upwind - !! direction is the velocity at the cell center i instead of the contact velocity at the cell boundary from the Riemann solver. + !> This subroutine derives the flux_limiter at cell boundary i+1/2. This is an approximation because the velocity used to + !! determine the upwind direction is the velocity at the cell center i instead of the contact velocity at the cell boundary from + !! the Riemann solver. + !! @param i Component indicator + !! @param q_prim_vf Primitive variables + !! @param q_sf Flux limiter subroutine s_derive_flux_limiter(i, q_prim_vf, q_sf) integer, intent(in) :: i @@ -148,6 +183,7 @@ contains real(wp) :: top, bottom, slope integer :: j, k, l + do l = -offset_z%beg, p + offset_z%end do k = -offset_y%beg, n + offset_y%end do j = -offset_x%beg, m + offset_x%end @@ -182,10 +218,13 @@ contains if (f_approx_equal(top, bottom)) then slope = 1._wp + ! ELSEIF((top == 0._wp .AND. bottom /= 0._wp) & .OR. & (bottom == 0._wp .AND. top /= 0._wp)) THEN slope = + ! 0._wp else slope = (top*bottom)/(bottom**2._wp + 1.e-16_wp) end if + ! Flux limiter function if (flux_lim == 1) then ! MINMOD (MM) q_sf(j, k, l) = max(0._wp, min(1._wp, slope)) else if (flux_lim == 2) then ! MUSCL (MC) @@ -207,18 +246,26 @@ contains end subroutine s_derive_flux_limiter - !> Solve Ax=b via Gaussian elimination with partial pivoting + !> Computes the solution to the linear system Ax=b w/ sol = x + !! @param A Input matrix + !! @param b right-hane-side + !! @param sol Solution + !! @param ndim Problem size subroutine s_solve_linear_system(A, b, sol, ndim) integer, intent(in) :: ndim real(wp), dimension(ndim, ndim), intent(inout) :: A real(wp), dimension(ndim), intent(inout) :: b real(wp), dimension(ndim), intent(out) :: sol - integer :: i, j, k - ! Forward elimination with partial pivoting + ! EXTERNAL DGESV + + integer :: i, j, k + + ! Solve linear system using own linear solver (Thomson/Darter/Comet/Stampede) Forward elimination do i = 1, ndim + ! Pivoting j = i - 1 + maxloc(abs(A(i:ndim,i)), 1) sol = A(i,:) A(i,:) = A(j,:) @@ -226,6 +273,7 @@ contains sol(1) = b(i) b(i) = b(j) b(j) = sol(1) + ! Elimination b(i) = b(i)/A(i, i) A(i,:) = A(i,:)/A(i, i) do k = i + 1, ndim @@ -234,6 +282,7 @@ contains end do end do + ! Backward substitution do i = ndim, 1, -1 sol(i) = b(i) do k = i + 1, ndim @@ -243,8 +292,12 @@ contains end subroutine s_solve_linear_system - !> Compute the specified component of the vorticity from the primitive variables. From those inputs, it proceeds to calculate - !! values of the desired vorticity component, which are subsequently stored in derived flow quantity storage variable, q_sf. + !> This subroutine receives as inputs the indicator of the component of the vorticity that should be outputted and the primitive + !! variables. From those inputs, it proceeds to calculate values of the desired vorticity component, which are subsequently + !! stored in derived flow quantity storage variable, q_sf. + !! @param i Vorticity component indicator + !! @param q_prim_vf Primitive variables + !! @param q_sf Vorticity component subroutine s_derive_vorticity_component(i, q_prim_vf, q_sf) integer, intent(in) :: i @@ -254,6 +307,8 @@ contains & intent(inout) :: q_sf integer :: j, k, l, r + + ! Computing the vorticity component in the x-coordinate direction if (i == 1) then do l = -offset_z%beg, p + offset_z%end do k = -offset_y%beg, n + offset_y%end @@ -273,6 +328,8 @@ contains end do end do end do + + ! Computing the vorticity component in the y-coordinate direction else if (i == 2) then do l = -offset_z%beg, p + offset_z%end do k = -offset_y%beg, n + offset_y%end @@ -291,6 +348,8 @@ contains end do end do end do + + ! Computing the vorticity component in the z-coordinate direction else do l = -offset_z%beg, p + offset_z%end do k = -offset_y%beg, n + offset_y%end @@ -308,8 +367,10 @@ contains end subroutine s_derive_vorticity_component - !> Compute the Q_M criterion from the primitive variables. The Q_M function, which are subsequently stored in the derived flow - !! quantity storage variable, q_sf. + !> This subroutine gets as inputs the primitive variables. From those inputs, it proceeds to calculate the value of the Q_M + !! function, which are subsequently stored in the derived flow quantity storage variable, q_sf. + !! @param q_prim_vf Primitive variables + !! @param q_sf Q_M subroutine s_derive_qm(q_prim_vf, q_sf) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -320,6 +381,7 @@ contains real(wp), dimension(1:3,1:3) :: q_jacobian_sf, S, S2, O, O2 real(wp) :: trS, Q, IIS integer :: j, k, l, r, jj, kk + do l = -offset_z%beg, p + offset_z%end do k = -offset_y%beg, n + offset_y%end do j = -offset_x%beg, m + offset_x%end @@ -340,7 +402,7 @@ contains end do end do - ! Decompose velocity gradient into symmetric strain-rate S and skew-symmetric rotation-rate O + ! Decompose J into asymmetric matrix, S, and a skew-symmetric matrix, O do jj = 1, 3 do kk = 1, 3 S(jj, kk) = 0.5_wp*(q_jacobian_sf(jj, kk) + q_jacobian_sf(kk, jj)) @@ -348,6 +410,7 @@ contains end do end do + ! Compute S2 = S*S' do jj = 1, 3 do kk = 1, 3 O2(jj, kk) = O(jj, 1)*O(kk, 1) + O(jj, 2)*O(kk, 2) + O(jj, 3)*O(kk, 3) @@ -355,10 +418,9 @@ contains end do end do - ! Q-criterion: Q = (||O||^2 - ||S||^2)/2, Hunt et al. CTR (1988) + ! Compute Q Q = 0.5_wp*((O2(1, 1) + O2(2, 2) + O2(3, 3)) - (S2(1, 1) + S2(2, 2) + S2(3, 3))) trS = S(1, 1) + S(2, 2) + S(3, 3) - ! Second invariant of strain-rate tensor IIS = 0.5_wp*((S(1, 1) + S(2, 2) + S(3, 3))**2 - (S2(1, 1) + S2(2, 2) + S2(3, 3))) q_sf(j, k, l) = Q + IIS end do @@ -367,11 +429,11 @@ contains end subroutine s_derive_qm - !> Compute the Liutex vector and its magnitude based on Xu et al. (2019). + !> This subroutine gets as inputs the primitive variables. From those inputs, it proceeds to calculate the Liutex vector and its + !! magnitude based on Xu et al. (2019). + !! @param q_prim_vf Primitive variables impure subroutine s_derive_liutex(q_prim_vf, liutex_mag, liutex_axis) - ! Liutex vortex identification via real eigenvector of velocity gradient, Xu et al. PoF (2019) - integer, parameter :: nm = 3 type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -379,9 +441,11 @@ contains real(wp), dimension(-offset_x%beg:m + offset_x%end,-offset_y%beg:n + offset_y%end,-offset_z%beg:p + offset_z%end), & & intent(out) :: liutex_mag + !> Liutex rigid rotation axis real(wp), dimension(-offset_x%beg:m + offset_x%end,-offset_y%beg:n + offset_y%end,-offset_z%beg:p + offset_z%end,nm), & & intent(out) :: liutex_axis + character, parameter :: ivl = 'N' !< compute left eigenvectors character, parameter :: ivr = 'V' !< compute right eigenvectors real(wp), dimension(nm, nm) :: vgt !< velocity gradient tensor @@ -422,7 +486,7 @@ contains call dgeev(ivl, ivr, nm, vgt, nm, lr, li, vl, nm, vr, nm, work, lwork, info) #endif - ! Find eigenvector with smallest imaginary eigenvalue (real eigenvector of VGT) + ! Find real eigenvector idx = 1 do r = 2, 3 if (abs(li(r)) < abs(li(idx))) then @@ -449,12 +513,11 @@ contains omega_proj = -omega_proj end if - ! Imaginary eigenvalue of the complex conjugate pair (cyclic index selection) + ! Find imaginary part of complex eigenvalue lci = li(mod(idx, 3) + 1) - ! Discriminant: determines whether rotation dominates strain + ! Compute Liutex magnitude alpha = omega_proj**2._wp - 4._wp*lci**2._wp - ! Liutex magnitude = omega_proj - sqrt(discriminant) when rotation dominates if (alpha > 0._wp) then liutex_mag(j, k, l) = omega_proj - sqrt(alpha) else @@ -471,8 +534,10 @@ contains end subroutine s_derive_liutex - !> Compute the values of the numerical Schlieren function, which are subsequently stored in the derived flow quantity storage - !! variable, q_sf. + !> This subroutine gets as inputs the conservative variables and density. From those inputs, it proceeds to calculate the values + !! of the numerical Schlieren function, which are subsequently stored in the derived flow quantity storage variable, q_sf. + !! @param q_cons_vf Conservative variables + !! @param q_sf Numerical Schlieren function impure subroutine s_derive_numerical_schlieren_function(q_cons_vf, q_sf) type(scalar_field), dimension(sys_size), intent(in) :: q_cons_vf @@ -480,10 +545,17 @@ contains real(wp), dimension(-offset_x%beg:m + offset_x%end,-offset_y%beg:n + offset_y%end,-offset_z%beg:p + offset_z%end), & & intent(inout) :: q_sf - real(wp) :: drho_dx, drho_dy, drho_dz !< Spatial derivatives of the density in the x-, y- and z-directions - real(wp), dimension(2) :: gm_rho_max !< Global (max gradient magnitude, rank) pair for density + real(wp) :: drho_dx, drho_dy, drho_dz !< Spatial derivatives of the density in the x-, y- and z-directions + + !> Maximum value of the gradient magnitude (gm) of the density field in entire computational domain and not just the local + !! sub-domain. The first position in the variable contains the maximum value and the second contains the rank of the + !! processor on which it occurred. + real(wp), dimension(2) :: gm_rho_max !< Global (max gradient magnitude, rank) pair for density integer :: i, j, k, l + ! Computing Gradient Magnitude of Density + + ! Contributions from the x- and y-coordinate directions do l = -offset_z%beg, p + offset_z%end do k = -offset_y%beg, n + offset_y%end do j = -offset_x%beg, m + offset_x%end @@ -500,6 +572,7 @@ contains end do end do + ! Contribution from the z-coordinate direction if (p > 0) then do l = -offset_z%beg, p + offset_z%end do k = -offset_y%beg, n + offset_y%end @@ -520,12 +593,21 @@ contains end do end if + ! Up until now, only the dot product of the gradient of the density field has been calculated and stored in the gradient + ! magnitude of density variable. So now we proceed to take the square-root as to complete the desired calculation. gm_rho_sf = sqrt(gm_rho_sf) + ! Determining the local maximum of the gradient magnitude of density and bookkeeping the result, along with rank of the + ! local processor gm_rho_max = (/maxval(gm_rho_sf), real(proc_rank, wp)/) + ! Comparing the local maximum gradient magnitude of the density on this processor to the those computed on the remaining + ! processors. This allows for the global maximum to be computed and the rank of the processor on which it has occurred to be + ! recorded. if (num_procs > 1) call s_mpi_reduce_maxloc(gm_rho_max) + ! Computing Numerical Schlieren Function + ! The form of the numerical Schlieren function depends on the choice of the multicomponent flow model. For the gamma/pi_inf ! model, the exponential of the negative, normalized, gradient magnitude of the density is computed. For the volume fraction ! model, the amplitude of the exponential's inside is also modulated with respect to the identity of the fluid in which the diff --git a/src/post_process/m_global_parameters.fpp b/src/post_process/m_global_parameters.fpp index 0530c31081..e8d961b416 100644 --- a/src/post_process/m_global_parameters.fpp +++ b/src/post_process/m_global_parameters.fpp @@ -26,6 +26,7 @@ module m_global_parameters ! Computational Domain Parameters integer :: proc_rank !< Rank of the local processor + !> @name Number of cells in the x-, y- and z-coordinate directions !> @{ integer :: m, m_root @@ -50,6 +51,7 @@ module m_global_parameters integer :: num_dims !< Number of spatial dimensions integer :: num_vels !< Number of velocity components (different from num_dims for mhd) + !> @name Cell-boundary locations in the x-, y- and z-coordinate directions !> @{ real(wp), allocatable, dimension(:) :: x_cb, x_root_cb, y_cb, z_cb @@ -66,10 +68,13 @@ module m_global_parameters real(wp), allocatable, dimension(:) :: dx, dy, dz !> @} + !> Number of cells in buffer region. For the variables which feature a buffer region, this region is used to store information + !! outside the computational domain based on the boundary conditions. integer :: buff_size !< Number of ghost cells for boundary condition storage integer :: t_step_start !< First time-step directory integer :: t_step_stop !< Last time-step directory integer :: t_step_save !< Interval between consecutive time-step directory + !> @name IO options for adaptive time-stepping !> @{ logical :: cfl_adap_dt, cfl_const_dt, cfl_dt @@ -80,7 +85,8 @@ module m_global_parameters integer :: n_start !> @} - ! NOTE: m_root, x_root_cb, x_root_cc = defragmented grid (1D only; equals m, x_cb, x_cc in serial) + ! NOTE: The variables m_root, x_root_cb and x_root_cc contain the grid data of the defragmented computational domain. They are + ! only used in 1D. For serial simulations, they are equal to m, x_cb and x_cc, respectively. !> @name Simulation Algorithm Parameters !> @{ @@ -110,6 +116,7 @@ module m_global_parameters !> @} integer :: avg_state !< Average state evaluation method + !> @name Annotations of the structure, i.e. the organization, of the state vectors !> @{ type(int_bounds_info) :: cont_idx !< Indexes of first & last continuity eqns. @@ -135,7 +142,8 @@ module m_global_parameters ! Cell Indices for the (local) interior points (O-m, O-n, 0-p). Stands for "InDices With BUFFer". type(int_bounds_info) :: idwint(1:3) - ! Cell indices (InDices With BUFFer): includes buffer in simulation only + ! Cell Indices for the entire (local) domain. In simulation, this includes the buffer region. idwbuff and idwint are the same + ! otherwise. Stands for "InDices With BUFFer". type(int_bounds_info) :: idwbuff(1:3) integer :: num_bc_patches logical :: bc_io @@ -144,16 +152,23 @@ module m_global_parameters type(int_bounds_info) :: bc_x, bc_y, bc_z !> @} - integer :: shear_num !< Number of shear stress components - integer, dimension(3) :: shear_indices !< Indices of the stress components that represent shear stress - integer :: shear_BC_flip_num !< Number of shear stress components to reflect for boundary conditions - integer, dimension(3, 2) :: shear_BC_flip_indices !< Shear stress BC reflection indices (1:3, 1:shear_BC_flip_num) - logical :: parallel_io !< Format of the data files - logical :: sim_data - logical :: file_per_process !< output format - integer, allocatable, dimension(:) :: proc_coords !< Processor coordinates in MPI_CART_COMM + integer :: shear_num !< Number of shear stress components + integer, dimension(3) :: shear_indices !< Indices of the stress components that represent shear stress + integer :: shear_BC_flip_num !< Number of shear stress components to reflect for boundary conditions + !> Indices of shear stress components to reflect for boundary conditions. Size: (1:3, 1:shear_BC_flip_num) for (x/y/z, + !! [indices]) + integer, dimension(3, 2) :: shear_BC_flip_indices !< Shear stress BC reflection indices (1:3, 1:shear_BC_flip_num) + logical :: parallel_io !< Format of the data files + logical :: sim_data + logical :: file_per_process !< output format + integer, allocatable, dimension(:) :: proc_coords !< Processor coordinates in MPI_CART_COMM + type(int_bounds_info), dimension(3) :: nidx + integer, allocatable, dimension(:,:,:) :: neighbor_ranks + !! Neighbor processor ranks + integer, allocatable, dimension(:) :: start_idx !< Starting cell-center index of local processor in global grid - integer :: num_ibs !< Number of immersed boundaries + integer :: num_ibs !< Number of immersed boundaries + #ifdef MFC_MPI type(mpi_io_var), public :: MPI_IO_DATA type(mpi_io_ib_var), public :: MPI_IO_IB_DATA @@ -168,10 +183,14 @@ module m_global_parameters integer :: mpi_info_int !> @} + !> Database of the physical parameters of each of the fluids that is present in the flow. These include the stiffened gas + !! equation of state parameters, and the Reynolds numbers. type(physical_parameters), dimension(num_fluids_max) :: fluid_pp !< Stiffened gas EOS parameters and Reynolds numbers per fluid + ! Subgrid Bubble Parameters type(subgrid_bubble_physical_parameters) :: bub_pp real(wp), allocatable, dimension(:) :: adv !< Advection variables + ! Formatted Database File(s) Structure Parameters integer :: format !< Format of the database file(s) @@ -180,6 +199,7 @@ module m_global_parameters logical :: output_partial_domain !< Specify portion of domain to output for post-processing type(bounds_info) :: x_output, y_output, z_output !< Portion of domain to output for post-processing type(int_bounds_info) :: x_output_idx, y_output_idx, z_output_idx !< Indices of domain to output for post-processing + !> @name Size of the ghost zone layer in the x-, y- and z-coordinate directions. The definition of the ghost zone layers is only !! necessary when using the Silo database file format in multidimensions. These zones provide VisIt with the subdomain !! connectivity information that it requires in order to produce smooth plots. @@ -201,6 +221,8 @@ module m_global_parameters logical :: E_wrt logical, dimension(num_fluids_max) :: alpha_rho_e_wrt logical :: fft_wrt + !> AMDFlang workaround: keep a dummy logical to avoid a compiler case-optimization bug when a parameter+GPU-kernel conditional + !! is false logical :: dummy !< AMDFlang workaround for case-optimization + GPU-kernel bug logical :: pres_wrt logical, dimension(num_fluids_max) :: alpha_wrt @@ -240,9 +262,19 @@ module m_global_parameters logical :: lag_betaC_wrt !> @} + !> Amplitude coefficients of the numerical Schlieren function that are used to adjust the intensity of numerical Schlieren + !! renderings for individual fluids. This enables waves and interfaces of varying strengths and in all of the fluids to be made + !! simultaneously visible on a single plot. real(wp), dimension(num_fluids_max) :: schlieren_alpha !< Per-fluid Schlieren intensity amplitude coefficients - integer :: fd_order !< Finite-difference order for vorticity and Schlieren derivatives - integer :: fd_number !< Finite-difference half-stencil size: MAX(1, fd_order/2) + + !> The order of the finite-difference (fd) approximations of the first-order derivatives that need to be evaluated when + !! vorticity and/or the numerical Schlieren function are to be outputted to the formatted database file(s). + integer :: fd_order !< Finite-difference order for vorticity and Schlieren derivatives + + !> The finite-difference number is given by MAX(1, fd_order/2). Essentially, it is a measure of the half-size of the + !! finite-difference stencil for the selected order of accuracy. + integer :: fd_number !< Finite-difference half-stencil size: MAX(1, fd_order/2) + !> @name Reference parameters for Tait EOS !> @{ real(wp) :: rhoref, pref @@ -304,6 +336,7 @@ contains impure subroutine s_assign_default_values_to_user_inputs integer :: i !< Generic loop iterator + ! Logistics case_dir = '.' @@ -606,11 +639,6 @@ contains end if end if - if (bubbles_lagrange) then - beta_idx = sys_size + 1 - sys_size = beta_idx - end if - if (mhd) then B_idx%beg = sys_size + 1 if (n == 0) then @@ -733,6 +761,11 @@ contains sys_size = c_idx end if + if (bubbles_lagrange) then + beta_idx = sys_size + 1 + sys_size = beta_idx + end if + if (cont_damage) then damage_idx = sys_size + 1 sys_size = damage_idx @@ -968,6 +1001,8 @@ contains if (ib) MPI_IO_IB_DATA%var%sf => null() #endif + if (allocated(neighbor_ranks)) deallocate (neighbor_ranks) + end subroutine s_finalize_global_parameters_module end module m_global_parameters diff --git a/src/post_process/m_mpi_proxy.fpp b/src/post_process/m_mpi_proxy.fpp index c91f140d39..9d18bb18c8 100644 --- a/src/post_process/m_mpi_proxy.fpp +++ b/src/post_process/m_mpi_proxy.fpp @@ -31,10 +31,10 @@ contains #ifdef MFC_MPI integer :: i !< Generic loop iterator integer :: ierr !< Generic flag used to identify and report MPI errors + ! Allocating and configuring the receive counts and the displacement vector variables used in variable-gather communication ! procedures. Note that these are only needed for either multidimensional runs that utilize the Silo database file format or ! for 1D simulations. - if ((format == 1 .and. n > 0) .or. n == 0) then allocate (recvcounts(0:num_procs - 1)) allocate (displs(0:num_procs - 1)) @@ -64,8 +64,8 @@ contains #ifdef MFC_MPI integer :: i !< Generic loop iterator integer :: ierr !< Generic flag used to identify and report MPI errors - ! Logistics + ! Logistics call MPI_BCAST(case_dir, len(case_dir), MPI_CHARACTER, 0, MPI_COMM_WORLD, ierr) #:for VAR in [ 'm', 'n', 'p', 'm_glb', 'n_glb', 'p_glb', & @@ -138,7 +138,10 @@ contains end subroutine s_mpi_bcast_user_inputs - !> Gather spatial extents from all ranks for Silo database metadata + !> This subroutine gathers the Silo database metadata for the spatial extents in order to boost the performance of the + !! multidimensional visualization. + ! ! @param spatial_extents Spatial extents for each processor's sub-domain. First dimension corresponds to the minimum and + ! maximum values, respectively, while the second dimension corresponds to the processor rank. impure subroutine s_mpi_gather_spatial_extents(spatial_extents) real(wp), dimension(1:,0:), intent(inout) :: spatial_extents @@ -148,7 +151,6 @@ contains real(wp) :: ext_temp(0:num_procs - 1) ! Simulation is 3D - if (p > 0) then if (grid_geometry == 3) then ! Minimum spatial extent in the r-direction @@ -229,14 +231,14 @@ contains end subroutine s_mpi_gather_spatial_extents - !> Collect the sub-domain cell-boundary or cell-center location data from all processors and put back together the grid of the - !! entire computational domain on the rank 0 processor. This is only done for 1D simulations. + !> This subroutine collects the sub-domain cell-boundary or cell-center locations data from all of the processors and puts back + !! together the grid of the entire computational domain on the rank 0 processor. This is only done for 1D simulations. impure subroutine s_mpi_defragment_1d_grid_variable #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors - ! Silo-HDF5 database format + ! Silo-HDF5 database format if (format == 1) then call MPI_GATHERV(x_cc(0), m + 1, mpi_p, x_root_cc(0), recvcounts, displs, mpi_p, 0, MPI_COMM_WORLD, ierr) @@ -250,8 +252,11 @@ contains end subroutine s_mpi_defragment_1d_grid_variable - !> Gather the Silo database metadata for the flow variable's extents to boost performance of the multidimensional visualization. - !! @param q_sf Flow variable on a single computational sub-domain + !> This subroutine gathers the Silo database metadata for the flow variable's extents as to boost performance of the + !! multidimensional visualization. + !! @param q_sf Flow variable defined on a single computational sub-domain + ! ! @param data_extents The flow variable extents on each of the processor's sub-domain. First dimension of array corresponds to + ! the former's minimum and maximum values, respectively, while second dimension corresponds to each processor's rank. impure subroutine s_mpi_gather_data_extents(q_sf, data_extents) real(wp), dimension(:,:,:), intent(in) :: q_sf @@ -283,10 +288,10 @@ contains end subroutine s_mpi_gather_data_extents - !> Gather the sub-domain flow variable data from all processors and reassemble it for the entire computational domain on the - !! rank 0 processor. This is only done for 1D simulations. - !! @param q_sf Flow variable on a single computational sub-domain - !! @param q_root_sf Flow variable on the entire computational domain + !> This subroutine gathers the sub-domain flow variable data from all of the processors and puts it back together for the entire + !! computational domain on the rank 0 processor. This is only done for 1D simulations. + !! @param q_sf Flow variable defined on a single computational sub-domain + !! @param q_root_sf Flow variable defined on the entire computational domain impure subroutine s_mpi_defragment_1d_flow_variable(q_sf, q_root_sf) real(wp), dimension(0:m), intent(in) :: q_sf @@ -294,9 +299,9 @@ contains #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors + ! Gathering the sub-domain flow variable data from all the processes and putting it back together for the entire ! computational domain on the process with rank 0 - call MPI_GATHERV(q_sf(0), m + 1, mpi_p, q_root_sf(0), recvcounts, displs, mpi_p, 0, MPI_COMM_WORLD, ierr) #endif diff --git a/src/post_process/m_start_up.fpp b/src/post_process/m_start_up.fpp index c65e4cf7cf..a3868a75d9 100644 --- a/src/post_process/m_start_up.fpp +++ b/src/post_process/m_start_up.fpp @@ -8,6 +8,8 @@ module m_start_up + ! Dependencies + use, intrinsic :: iso_c_binding use m_derived_types @@ -55,9 +57,15 @@ contains impure subroutine s_read_input_file character(LEN=name_len) :: file_loc - logical :: file_check - integer :: iostatus - character(len=1000) :: line + + !> Generic logical used for the purpose of asserting whether a file is or is not present in the designated location + logical :: file_check + integer :: iostatus + !! Integer to check iostat of file read + + character(len=1000) :: line + + ! Namelist for all of the parameters to be inputted by the user namelist /user_inputs/ case_dir, m, n, p, t_step_start, t_step_stop, t_step_save, model_eqns, num_fluids, mpp_lim, & & weno_order, bc_x, bc_y, bc_z, fluid_pp, bub_pp, format, precision, output_partial_domain, x_output, y_output, & @@ -72,9 +80,11 @@ contains & lag_pos_prev_wrt, lag_vel_wrt, lag_rad_wrt, lag_rvel_wrt, lag_r0_wrt, lag_rmax_wrt, lag_rmin_wrt, lag_dphidt_wrt, & & lag_pres_wrt, lag_mv_wrt, lag_mg_wrt, lag_betaT_wrt, lag_betaC_wrt, alpha_rho_e_wrt, ib_state_wrt + ! Inquiring the status of the post_process.inp file file_loc = 'post_process.inp' inquire (FILE=trim(file_loc), EXIST=file_check) + ! Checking whether the input file is there. If it is, the input file is read. If not, the program is terminated. if (file_check) then open (1, FILE=trim(file_loc), form='formatted', STATUS='old', ACTION='read') read (1, NML=user_inputs, iostat=iostatus) @@ -96,6 +106,7 @@ contains p = int((p + 1)/3) - 1 end if + ! Store m,n,p into global m,n,p m_glb = m n_glb = n p_glb = p @@ -120,12 +131,15 @@ contains character(LEN=len_trim(case_dir)) :: file_loc logical :: dir_check + ! Checking the existence of the case folder + case_dir = adjustl(case_dir) file_loc = trim(case_dir) // '/.' call my_inquire(file_loc, dir_check) + ! Constraint on the location of the case directory if (dir_check .neqv. .true.) then call s_mpi_abort('Unsupported choice for the value of ' // 'case_dir. Exiting.') end if @@ -135,7 +149,7 @@ contains end subroutine s_check_input_file - !> Load grid and conservative data for a time step, fill ghost-cell buffers, and convert to primitive variables. + !> @brief Load grid and conservative data for a time step, fill ghost-cell buffers, and convert to primitive variables. impure subroutine s_perform_time_step(t_step) integer, intent(inout) :: t_step @@ -152,20 +166,24 @@ contains end if end if + ! Populating the grid and conservative variables call s_read_data_files(t_step) + ! Populating the buffer regions of the grid and conservative variables if (buff_size > 0) then call s_populate_grid_variables_buffers() call s_populate_variables_buffers(bc_type, q_cons_vf) end if + ! Initialize the Temperature cache. if (chemistry) call s_compute_q_T_sf(q_T_sf, q_cons_vf, idwbuff) + ! Converting the conservative variables to the primitive ones call s_convert_conservative_to_primitive_variables(q_cons_vf, q_T_sf, q_prim_vf, idwbuff) end subroutine s_perform_time_step - !> Derive requested flow quantities from primitive variables and write them to the formatted database files. + !> @brief Derive requested flow quantities from primitive variables and write them to the formatted database files. impure subroutine s_save_data(t_step, varname, pres, c, H) integer, intent(inout) :: t_step @@ -200,6 +218,7 @@ contains z_end = offset_z%end + p end if + ! Opening a new formatted database file call s_open_formatted_database_file(t_step) if (sim_data .and. proc_rank == 0) then @@ -212,20 +231,25 @@ contains call s_write_energy_data_file(q_prim_vf, q_cons_vf) end if + ! Adding the grid to the formatted database file call s_write_grid_to_formatted_database_file(t_step) + ! Computing centered finite-difference coefficients in x-direction if (omega_wrt(2) .or. omega_wrt(3) .or. qm_wrt .or. liutex_wrt .or. schlieren_wrt) then call s_compute_finite_difference_coefficients(m, x_cc, fd_coeff_x, buff_size, fd_number, fd_order, offset_x) end if + ! Computing centered finite-difference coefficients in y-direction if (omega_wrt(1) .or. omega_wrt(3) .or. qm_wrt .or. liutex_wrt .or. (n > 0 .and. schlieren_wrt)) then call s_compute_finite_difference_coefficients(n, y_cc, fd_coeff_y, buff_size, fd_number, fd_order, offset_y) end if + ! Computing centered finite-difference coefficients in z-direction if (omega_wrt(1) .or. omega_wrt(2) .or. qm_wrt .or. liutex_wrt .or. (p > 0 .and. schlieren_wrt)) then call s_compute_finite_difference_coefficients(p, z_cc, fd_coeff_z, buff_size, fd_number, fd_order, offset_z) end if + ! Adding the partial densities to the formatted database file if ((model_eqns == 2) .or. (model_eqns == 3) .or. (model_eqns == 4)) then do i = 1, num_fluids if (alpha_rho_wrt(i) .or. (cons_vars_wrt .or. prim_vars_wrt)) then @@ -242,6 +266,7 @@ contains end do end if + ! Adding the density to the formatted database file if ((rho_wrt .or. (model_eqns == 1 .and. (cons_vars_wrt .or. prim_vars_wrt))) .and. (.not. relativity)) then q_sf(:,:,:) = rho_sf(x_beg:x_end,y_beg:y_end,z_beg:z_end) write (varname, '(A)') 'rho' @@ -267,6 +292,7 @@ contains varname(:) = ' ' end if + ! Adding the momentum to the formatted database file do i = 1, E_idx - mom_idx%beg if (mom_wrt(i) .or. cons_vars_wrt) then q_sf(:,:,:) = q_cons_vf(i + cont_idx%end)%sf(x_beg:x_end,y_beg:y_end,z_beg:z_end) @@ -277,6 +303,7 @@ contains end if end do + ! Adding the velocity to the formatted database file do i = 1, E_idx - mom_idx%beg if (vel_wrt(i) .or. prim_vars_wrt) then q_sf(:,:,:) = q_prim_vf(i + cont_idx%end)%sf(x_beg:x_end,y_beg:y_end,z_beg:z_end) @@ -287,6 +314,7 @@ contains end if end do + ! Adding the species' concentrations to the formatted database file if (chemistry) then do i = 1, num_species if (chem_wrt_Y(i) .or. prim_vars_wrt) then @@ -307,6 +335,7 @@ contains end if end if + ! Adding the flux limiter function to the formatted database file do i = 1, E_idx - mom_idx%beg if (flux_wrt(i)) then call s_derive_flux_limiter(i, q_prim_vf, q_sf) @@ -318,6 +347,7 @@ contains end if end do + ! Adding the energy to the formatted database file if (E_wrt .or. cons_vars_wrt) then q_sf(:,:,:) = q_cons_vf(E_idx)%sf(x_beg:x_end,y_beg:y_end,z_beg:z_end) write (varname, '(A)') 'E' @@ -326,6 +356,7 @@ contains varname(:) = ' ' end if + ! Adding the individual energies to the formatted database file if (model_eqns == 3) then do i = 1, num_fluids if (alpha_rho_e_wrt(i) .or. cons_vars_wrt) then @@ -338,6 +369,7 @@ contains end do end if + ! Adding Energy cascade FFT if (fft_wrt) then do l = 0, p do k = 0, n @@ -443,6 +475,7 @@ contains end do end if + ! Adding the magnetic field to the formatted database file if (mhd .and. prim_vars_wrt) then do i = B_idx%beg, B_idx%end q_sf(:,:,:) = q_prim_vf(i)%sf(x_beg:x_end,y_beg:y_end,z_beg:z_end) @@ -470,6 +503,7 @@ contains end do end if + ! Adding the elastic shear stresses to the formatted database file if (elasticity) then do i = 1, stress_idx%end - stress_idx%beg + 1 if (prim_vars_wrt) then @@ -508,6 +542,7 @@ contains varname(:) = ' ' end if + ! Adding the pressure to the formatted database file if (pres_wrt .or. prim_vars_wrt) then q_sf(:,:,:) = q_prim_vf(E_idx)%sf(x_beg:x_end,y_beg:y_end,z_beg:z_end) write (varname, '(A)') 'pres' @@ -516,6 +551,7 @@ contains varname(:) = ' ' end if + ! Adding the volume fraction(s) to the formatted database file if (((model_eqns == 2) .and. (bubbles_euler .neqv. .true.)) .or. (model_eqns == 3)) then do i = 1, num_fluids - 1 if (alpha_wrt(i) .or. (cons_vars_wrt .or. prim_vars_wrt)) then @@ -549,6 +585,7 @@ contains end if end if + ! Adding specific heat ratio function to formatted database file if (gamma_wrt .or. (model_eqns == 1 .and. (cons_vars_wrt .or. prim_vars_wrt))) then q_sf(:,:,:) = gamma_sf(x_beg:x_end,y_beg:y_end,z_beg:z_end) write (varname, '(A)') 'gamma' @@ -557,6 +594,7 @@ contains varname(:) = ' ' end if + ! Adding the specific heat ratio to the formatted database file if (heat_ratio_wrt) then call s_derive_specific_heat_ratio(q_sf) @@ -566,6 +604,7 @@ contains varname(:) = ' ' end if + ! Adding liquid stiffness function to formatted database file if (pi_inf_wrt .or. (model_eqns == 1 .and. (cons_vars_wrt .or. prim_vars_wrt))) then q_sf(:,:,:) = pi_inf_sf(x_beg:x_end,y_beg:y_end,z_beg:z_end) write (varname, '(A)') 'pi_inf' @@ -574,6 +613,7 @@ contains varname(:) = ' ' end if + ! Adding the liquid stiffness to the formatted database file if (pres_inf_wrt) then call s_derive_liquid_stiffness(q_sf) @@ -583,6 +623,7 @@ contains varname(:) = ' ' end if + ! Adding the sound speed to the formatted database file if (c_wrt) then do k = -offset_z%beg, p + offset_z%end do j = -offset_y%beg, n + offset_y%end @@ -609,6 +650,7 @@ contains varname(:) = ' ' end if + ! Adding the vorticity to the formatted database file do i = 1, 3 if (omega_wrt(i)) then call s_derive_vorticity_component(i, q_prim_vf, q_sf) @@ -627,6 +669,7 @@ contains call s_write_variable_to_formatted_database_file(varname, t_step) end if + ! Adding Q_M to the formatted database file if (p > 0 .and. qm_wrt) then call s_derive_qm(q_prim_vf, q_sf) @@ -636,9 +679,12 @@ contains varname(:) = ' ' end if + ! Adding Liutex magnitude to the formatted database file if (liutex_wrt) then + ! Compute Liutex vector and its magnitude call s_derive_liutex(q_prim_vf, liutex_mag, liutex_axis) + ! Liutex magnitude q_sf = liutex_mag write (varname, '(A)') 'liutex_mag' @@ -646,6 +692,7 @@ contains varname(:) = ' ' + ! Liutex axis do i = 1, 3 q_sf = liutex_axis(:,:,:,i) @@ -656,6 +703,7 @@ contains end do end if + ! Adding numerical Schlieren function to formatted database file if (schlieren_wrt) then call s_derive_numerical_schlieren_function(q_cons_vf, q_sf) @@ -665,6 +713,7 @@ contains varname(:) = ' ' end if + ! Adding the color function to formatted database file if (cf_wrt) then q_sf(:,:,:) = q_cons_vf(c_idx)%sf(x_beg:x_end,y_beg:y_end,z_beg:z_end) write (varname, '(A,I0)') 'color_function' @@ -672,6 +721,7 @@ contains varname(:) = ' ' end if + ! Adding the volume fraction(s) to the formatted database file if (bubbles_euler) then do i = adv_idx%beg, adv_idx%end q_sf(:,:,:) = q_cons_vf(i)%sf(x_beg:x_end,y_beg:y_end,z_beg:z_end) @@ -681,6 +731,7 @@ contains end do end if + ! Adding the bubble variables to the formatted database file if (bubbles_euler) then ! nR do i = 1, nb @@ -724,8 +775,9 @@ contains end if end if + ! Adding the lagrangian subgrid variables to the formatted database file if (bubbles_lagrange) then - ! Void fraction field + !! Void fraction field q_sf(:,:,:) = 1._wp - q_cons_vf(beta_idx)%sf(-offset_x%beg:m + offset_x%end,-offset_y%beg:n + offset_y%end, & & -offset_z%beg:p + offset_z%end) write (varname, '(A)') 'voidFraction' @@ -741,11 +793,12 @@ contains call s_close_energy_data_file() end if + ! Closing the formatted database file call s_close_formatted_database_file() end subroutine s_save_data - !> Transpose 3-D complex data from x-pencil to y-pencil layout via MPI_Alltoall. + !> @brief Transpose 3-D complex data from x-pencil to y-pencil layout via MPI_Alltoall. subroutine s_mpi_transpose_x2y complex(c_double_complex), allocatable :: sendbuf(:), recvbuf(:) @@ -787,7 +840,7 @@ contains end subroutine s_mpi_transpose_x2y - !> Transpose 3-D complex data from y-pencil to z-pencil layout via MPI_Alltoall. + !> @brief Transpose 3-D complex data from y-pencil to z-pencil layout via MPI_Alltoall. subroutine s_mpi_transpose_y2z complex(c_double_complex), allocatable :: sendbuf(:), recvbuf(:) @@ -830,9 +883,10 @@ contains end subroutine s_mpi_transpose_y2z - !> Initialize all post-process sub-modules, set up I/O pointers, and prepare FFTW plans and MPI communicators. + !> @brief Initialize all post-process sub-modules, set up I/O pointers, and prepare FFTW plans and MPI communicators. impure subroutine s_initialize_modules + ! Computation of parameters, allocation procedures, and/or any other tasks needed to properly setup the modules integer :: size_n(1), inembed(1), onembed(1) call s_initialize_global_parameters_module() @@ -849,6 +903,7 @@ contains call s_initialize_derived_variables_module() call s_initialize_data_output_module() + ! Associate pointers for serial or parallel I/O if (parallel_io .neqv. .true.) then s_read_data_files => s_read_serial_data_files else @@ -919,7 +974,7 @@ contains end subroutine s_initialize_modules - !> Perform a distributed forward 3-D FFT using pencil decomposition with FFTW and MPI transposes. + !> @brief Perform a distributed forward 3-D FFT using pencil decomposition with FFTW and MPI transposes. subroutine s_mpi_FFT_fwd integer :: j, k, l @@ -986,13 +1041,17 @@ contains end subroutine s_mpi_FFT_fwd - !> Set up the MPI environment, read and broadcast user inputs, and decompose the computational domain. + !> @brief Set up the MPI environment, read and broadcast user inputs, and decompose the computational domain. impure subroutine s_initialize_mpi_domain num_dims = 1 + min(1, n) + min(1, p) + ! Initialization of the MPI environment call s_mpi_initialize() + ! Processor with rank 0 assigns default user input values prior to reading those in from the input file. Next, the user + ! inputs are read in and their consistency is checked. The detection of any inconsistencies automatically leads to the + ! termination of the post-process. if (proc_rank == 0) then call s_assign_default_values_to_user_inputs() call s_read_input_file() @@ -1001,6 +1060,8 @@ contains print '(" Post-processing a ", I0, "x", I0, "x", I0, " case on ", I0, " rank(s)")', m, n, p, num_procs end if + ! Broadcasting the user inputs to all of the processors and performing the parallel computational domain decomposition. + ! Neither procedure has to be carried out if the post-process is in fact not truly executed in parallel. call s_mpi_bcast_user_inputs() call s_initialize_parallel_io() call s_mpi_decompose_computational_domain() @@ -1008,11 +1069,14 @@ contains end subroutine s_initialize_mpi_domain - !> Destroy FFTW plans, free MPI communicators, and finalize all post-process sub-modules. + !> @brief Destroy FFTW plans, free MPI communicators, and finalize all post-process sub-modules. impure subroutine s_finalize_modules + ! Disassociate pointers for serial and parallel I/O s_read_data_files => null() + ! if (sim_data .and. proc_rank == 0) then call s_close_intf_data_file() call s_close_energy_data_file() end if + if (fft_wrt) then if (c_associated(fwd_plan_x)) call fftw_destroy_plan(fwd_plan_x) if (c_associated(fwd_plan_y)) call fftw_destroy_plan(fwd_plan_y) @@ -1035,6 +1099,7 @@ contains end if #endif + ! Deallocation procedures for the modules call s_finalize_data_output_module() call s_finalize_derived_variables_module() call s_finalize_data_input_module() @@ -1045,6 +1110,7 @@ contains end if call s_finalize_global_parameters_module() + ! Finalizing the MPI environment call s_mpi_finalize() end subroutine s_finalize_modules diff --git a/src/post_process/p_main.fpp b/src/post_process/p_main.fpp index 32d8dc2c7e..166b449463 100644 --- a/src/post_process/p_main.fpp +++ b/src/post_process/p_main.fpp @@ -2,7 +2,10 @@ !! @file !! @brief Contains program p_main -!> Post-process raw simulation data into formatted database files (Silo-HDF5 or Binary) +!> @brief The post-process restructures raw unformatted data, outputted by the simulation, into a formatted database, Silo-HDF5 or +!! Binary, chosen by the user. The user may also specify which variables to include in the database. The choices range from any one +!! of the primitive and conservative variables, as well as quantities that can be derived from those such as the unadvected volume +!! fraction, specific heat ratio, liquid stiffness, speed of sound, vorticity and the numerical Schlieren function. program p_main use m_global_parameters @@ -11,6 +14,7 @@ program p_main implicit none integer :: t_step !< Iterator for the main time-stepping loop + !> Generic storage for the name(s) of the flow variable(s) that will be added to the formatted database file(s) character(LEN=name_len) :: varname real(wp) :: pres @@ -58,7 +62,9 @@ program p_main exit end if else - ! Adjust time-step iterator to reach final step if needed, else exit + ! Modifies the time-step iterator so that it may reach the final time- step to be post-processed, in the case that this + ! one is not originally attainable through constant incrementation from the first time-step. This modification is + ! performed upon reaching the final time-step. In case that it is not needed, the post-processor is done and may exit. if ((t_step_stop - t_step) < t_step_save .and. t_step_stop /= t_step) then t_step = t_step_stop - t_step_save else if (t_step == t_step_stop) then diff --git a/src/pre_process/m_assign_variables.fpp b/src/pre_process/m_assign_variables.fpp index e171097d4b..b91a9045f8 100644 --- a/src/pre_process/m_assign_variables.fpp +++ b/src/pre_process/m_assign_variables.fpp @@ -20,13 +20,22 @@ module m_assign_variables type(scalar_field) :: alf_sum - !> Pointer to mixture or species patch assignment routine + !> Depending on the multicomponent flow model, this variable is a pointer to either the subroutine + !! s_assign_patch_mixture_primitive_variables, or the subroutine s_assign_patch_species_primitive_variables procedure(s_assign_patch_xxxxx_primitive_variables), pointer :: s_assign_patch_primitive_variables => null() + !> Abstract interface to the two subroutines that assign the patch primitive variables, either mixture or species, depending on !! the subroutine, to a particular cell in the computational domain abstract interface !> Skeleton of s_assign_patch_mixture_primitive_variables and s_assign_patch_species_primitive_variables + !! @param patch_id is the patch identifier + !! @param j (x) cell index in which the mixture or species primitive variables from the indicated patch are assigned + !! @param k (y,th) cell index in which the mixture or species primitive variables from the indicated patch are assigned + !! @param l (z) cell index in which the mixture or species primitive variables from the indicated patch are assigned + !! @param eta pseudo volume fraction + !! @param q_prim_vf Primitive variables + !! @param patch_id_fp Array to track patch ids subroutine s_assign_patch_xxxxx_primitive_variables(patch_id, j, k, l, eta, q_prim_vf, patch_id_fp) import :: scalar_field, sys_size, n, m, p, wp @@ -51,14 +60,15 @@ module m_assign_variables contains - !> Allocate volume fraction sum and set the patch primitive variable assignment procedure pointer. + !> @brief Allocates volume fraction sum and sets the patch primitive variable assignment procedure pointer. impure subroutine s_initialize_assign_variables_module if (.not. igr) then allocate (alf_sum%sf(0:m,0:n,0:p)) end if - ! Select procedure pointer based on multicomponent flow model + ! Depending on multicomponent flow model, the appropriate procedure for assignment of the patch mixture or species primitive + ! variables to a cell in the domain is targeted by the procedure pointer if (model_eqns == 1) then ! Gamma/pi_inf model s_assign_patch_primitive_variables => s_assign_patch_mixture_primitive_variables @@ -68,11 +78,18 @@ contains end subroutine s_initialize_assign_variables_module - !> Assign the mixture primitive variables of the patch designated by the patch_id to the cell that is designated by the indexes - !! (j,k,l). In addition, the variable bookkeeping the patch identities in the entire domain is updated with the new assignment. - !! Note that if the smoothing of the patch's boundaries is employed, the ensuing primitive variables in the cell will be a type - !! of combination of the current patch's primitive variables with those of the smoothing patch. The specific details of the - !! combination may be found in Shyue's work (1998). + !> This subroutine assigns the mixture primitive variables of the patch designated by the patch_id, to the cell that is + !! designated by the indexes (j,k,l). In addition, the variable bookkeeping the patch identities in the entire domain is updated + !! with the new assignment. Note that if the smoothing of the patch's boundaries is employed, the ensuing primitive variables in + !! the cell will be a type of combination of the current patch's primitive variables with those of the smoothing patch. The + !! specific details of the combination may be found in Shyue's work (1998). + !! @param patch_id the patch identifier + !! @param j the x-dir node index + !! @param k the y-dir node index + !! @param l the z-dir node index + !! @param eta pseudo volume fraction + !! @param q_prim_vf Primitive variables + !! @param patch_id_fp Array to track patch ids subroutine s_assign_patch_mixture_primitive_variables(patch_id, j, k, l, eta, q_prim_vf, patch_id_fp) $:GPU_ROUTINE(parallelism='[seq]') @@ -91,28 +108,38 @@ contains integer :: smooth_patch_id integer :: i + ! Assigning the mixture primitive variables of a uniform state patch + + ! Transferring the identity of the smoothing patch smooth_patch_id = patch_icpp(patch_id)%smooth_patch_id + ! Density q_prim_vf(1)%sf(j, k, l) = eta*patch_icpp(patch_id)%rho + (1._wp - eta)*patch_icpp(smooth_patch_id)%rho + ! Velocity do i = 1, E_idx - mom_idx%beg q_prim_vf(i + 1)%sf(j, k, l) = 1._wp/q_prim_vf(1)%sf(j, k, & & l)*(eta*patch_icpp(patch_id)%rho*patch_icpp(patch_id)%vel(i) + (1._wp - eta)*patch_icpp(smooth_patch_id) & & %rho*patch_icpp(smooth_patch_id)%vel(i)) end do + ! Specific heat ratio function q_prim_vf(gamma_idx)%sf(j, k, l) = eta*patch_icpp(patch_id)%gamma + (1._wp - eta)*patch_icpp(smooth_patch_id)%gamma + ! Pressure q_prim_vf(E_idx)%sf(j, k, l) = 1._wp/q_prim_vf(gamma_idx)%sf(j, k, & & l)*(eta*patch_icpp(patch_id)%gamma*patch_icpp(patch_id)%pres + (1._wp - eta)*patch_icpp(smooth_patch_id) & & %gamma*patch_icpp(smooth_patch_id)%pres) + ! Liquid stiffness function q_prim_vf(pi_inf_idx)%sf(j, k, l) = eta*patch_icpp(patch_id)%pi_inf + (1._wp - eta)*patch_icpp(smooth_patch_id)%pi_inf + ! Species Concentrations if (chemistry) then block real(wp) :: sum, term + ! Accumulating the species concentrations sum = 0._wp do i = 1, num_species term = eta*patch_icpp(patch_id)%Y(i) + (1._wp - eta)*patch_icpp(smooth_patch_id)%Y(i) @@ -122,6 +149,7 @@ contains sum = max(sum, verysmall) + ! Normalizing the species concentrations do i = 1, num_species q_prim_vf(chemxb + i - 1)%sf(j, k, l) = q_prim_vf(chemxb + i - 1)%sf(j, k, l)/sum Ys(i) = q_prim_vf(chemxb + i - 1)%sf(j, k, l) @@ -129,11 +157,16 @@ contains end block end if + ! Updating the patch identities bookkeeping variable if (1._wp - eta < 1.e-16_wp) patch_id_fp(j, k, l) = patch_id end subroutine s_assign_patch_mixture_primitive_variables - !> Apply a stable pressure perturbation following Ando's method for bubble-laden flows. + !> @brief Applies a stable pressure perturbation following Ando's method for bubble-laden flows. + !! @param j the x-dir node index + !! @param k the y-dir node index + !! @param l the z-dir node index + !! @param q_prim_vf Primitive variables subroutine s_perturb_primitive(j, k, l, q_prim_vf) integer, intent(in) :: j, k, l @@ -204,8 +237,15 @@ contains end subroutine s_perturb_primitive - !> Assign the species primitive variables, following s_assign_patch_species_primitive_variables with adaptation for - !! ensemble-averaged bubble modeling + !> This subroutine assigns the species primitive variables. This follows s_assign_patch_species_primitive_variables with + !! adaptation for ensemble-averaged bubble modeling + !! @param patch_id the patch identifier + !! @param j the x-dir node index + !! @param k the y-dir node index + !! @param l the z-dir node index + !! @param eta pseudo volume fraction + !! @param q_prim_vf Primitive variables + !! @param patch_id_fp Array to track patch ids impure subroutine s_assign_patch_species_primitive_variables(patch_id, j, k, l, eta, q_prim_vf, patch_id_fp) $:GPU_ROUTINE(parallelism='[seq]') @@ -220,7 +260,8 @@ contains #endif type(scalar_field), dimension(1:sys_size), intent(inout) :: q_prim_vf - ! Density, gamma, and liquid stiffness from current and smoothing patches + ! Density, the specific heat ratio function and the liquid stiffness function, respectively, obtained from the combination + ! of primitive variables of the current and smoothing patches real(wp) :: rho !< density real(wp) :: gamma real(wp) :: lit_gamma !< specific heat ratio @@ -239,8 +280,10 @@ contains integer :: i integer :: smooth_patch_id + ! Transferring the identity of the smoothing patch smooth_patch_id = patch_icpp(patch_id)%smooth_patch_id + ! Transferring original primitive variables do i = 1, sys_size orig_prim_vf(i) = q_prim_vf(i)%sf(j, k, l) end do @@ -257,9 +300,13 @@ contains end do end if + ! Computing Mixture Variables from Original Primitive Variables call s_convert_species_to_mixture_variables( & call s_convert_to_mixture_variables(q_prim_vf, j, k, l, orig_rho, orig_gamma, orig_pi_inf, orig_qv) + ! Computing Mixture Variables of Current Patch + if (.not. igr .or. num_fluids > 1) then + ! Volume fraction(s) do i = adv_idx%beg, adv_idx%end q_prim_vf(i)%sf(j, k, l) = patch_icpp(patch_id)%alpha(i - E_idx) end do @@ -277,22 +324,28 @@ contains end do end if + ! Partial densities if (model_eqns /= 4) then do i = 1, cont_idx%end q_prim_vf(i)%sf(j, k, l) = patch_icpp(patch_id)%alpha_rho(i) end do end if + ! Density and the specific heat ratio and liquid stiffness functions call s_convert_species_to_mixture_variables( & call s_convert_to_mixture_variables(q_prim_vf, j, k, l, patch_icpp(patch_id)%rho, patch_icpp(patch_id)%gamma, & & patch_icpp(patch_id)%pi_inf, patch_icpp(patch_id)%qv) + ! Computing Mixture Variables of Smoothing Patch + if (model_eqns /= 4) then + ! Partial densities do i = 1, cont_idx%end q_prim_vf(i)%sf(j, k, l) = patch_icpp(smooth_patch_id)%alpha_rho(i) end do end if if (.not. igr .or. num_fluids > 1) then + ! Volume fraction(s) do i = adv_idx%beg, adv_idx%end q_prim_vf(i)%sf(j, k, l) = patch_icpp(smooth_patch_id)%alpha(i - E_idx) end do @@ -310,6 +363,7 @@ contains end do end if + ! Bubbles euler variables if (bubbles_euler) then do i = 1, nb muR = R0(i)*patch_icpp(smooth_patch_id)%r0/R0ref @@ -351,13 +405,16 @@ contains end if end if + ! Density and the specific heat ratio and liquid stiffness functions call s_convert_species_to_mixture_variables( & call s_convert_to_mixture_variables(q_prim_vf, j, k, l, patch_icpp(smooth_patch_id)%rho, & & patch_icpp(smooth_patch_id)%gamma, patch_icpp(smooth_patch_id)%pi_inf, & & patch_icpp(smooth_patch_id)%qv) + ! Pressure q_prim_vf(E_idx)%sf(j, k, l) = (eta*patch_icpp(patch_id)%pres + (1._wp - eta)*orig_prim_vf(E_idx)) if (.not. igr .or. num_fluids > 1) then + ! Volume fractions \alpha do i = adv_idx%beg, adv_idx%end q_prim_vf(i)%sf(j, k, l) = eta*patch_icpp(patch_id)%alpha(i - E_idx) + (1._wp - eta)*orig_prim_vf(i) end do @@ -374,6 +431,7 @@ contains end if end if + ! Elastic Shear Stress if (elasticity) then do i = 1, (stress_idx%end - stress_idx%beg) + 1 q_prim_vf(i + stress_idx%beg - 1)%sf(j, k, & @@ -381,6 +439,7 @@ contains end do end if + ! Elastic Shear Stress if (hyperelasticity) then if (pre_stress) then ! pre stressed initial condition in spatial domain rcoord = sqrt((x_cc(j)**2 + y_cc(k)**2 + z_cc(l)**2)) @@ -415,6 +474,7 @@ contains end do end if + ! Partial densities \alpha \rho if (model_eqns /= 4) then ! mixture density is an input do i = 1, cont_idx%end @@ -431,17 +491,22 @@ contains & l) + pi_inf)/(pref + pi_inf))**(1/lit_gamma))*rhoref*(1 - q_prim_vf(alf_idx)%sf(j, k, l)) end if + ! Density and the specific heat ratio and liquid stiffness functions call s_convert_species_to_mixture_variables(q_prim_vf, + ! j, k, l, & call s_convert_to_mixture_variables(q_prim_vf, j, k, l, rho, gamma, pi_inf, qv) + ! Velocity do i = 1, E_idx - mom_idx%beg q_prim_vf(i + cont_idx%end)%sf(j, k, & & l) = (eta*patch_icpp(patch_id)%vel(i) + (1._wp - eta)*orig_prim_vf(i + cont_idx%end)) end do + ! Species Concentrations if (chemistry) then block real(wp) :: sum, term + ! Accumulating the species concentrations sum = 0._wp do i = 1, num_species term = eta*patch_icpp(patch_id)%Y(i) + (1._wp - eta)*patch_icpp(smooth_patch_id)%Y(i) @@ -453,6 +518,7 @@ contains sum = 1._wp end if + ! Normalizing the species concentrations do i = 1, num_species q_prim_vf(chemxb + i - 1)%sf(j, k, l) = q_prim_vf(chemxb + i - 1)%sf(j, k, l)/sum Ys(i) = q_prim_vf(chemxb + i - 1)%sf(j, k, l) @@ -474,6 +540,7 @@ contains end do end if + ! Smoothed bubble variables if (bubbles_euler) then do i = 1, nb muR = R0(i)*patch_icpp(patch_id)%r0/R0ref @@ -532,6 +599,7 @@ contains do i = 1, nb if (f_is_default(real(q_prim_vf(bub_idx%ps(i))%sf(j, k, l), kind=wp))) then q_prim_vf(bub_idx%ps(i))%sf(j, k, l) = pb0(i) + ! print *, 'setting to pb0' end if if (f_is_default(real(q_prim_vf(bub_idx%ms(i))%sf(j, k, l), kind=wp))) then q_prim_vf(bub_idx%ms(i))%sf(j, k, l) = mass_v0(i) @@ -543,13 +611,20 @@ contains q_prim_vf(c_idx)%sf(j, k, l) = eta*patch_icpp(patch_id)%cf_val + (1._wp - eta)*orig_prim_vf(c_idx) end if + ! Updating the patch identities bookkeeping variable if (1._wp - eta < 1.e-16_wp) patch_id_fp(j, k, l) = patch_id + ! if (j == 1) then print *, (q_prim_vf(bub_idx%rs(i))%sf(j, k, l), i = 1, nb) print *, (q_prim_vf(bub_idx%fullmom(i, 1, + ! 0))%sf(j, k, l), i = 1, nb) print *, (R0(i), i = 1, nb) print *, patch_icpp(patch_id)%r0 print *, (bub_idx%rs(i), i = 1, + ! nb) print *, (bub_idx%fullmom(i, 1, 0), i = 1, nb) end if + end subroutine s_assign_patch_species_primitive_variables - !> Nullify the patch primitive variable assignment procedure pointer. + !> @brief Nullifies the patch primitive variable assignment procedure pointer. impure subroutine s_finalize_assign_variables_module + ! Nullifying procedure pointer to the subroutine assigning either the patch mixture or species primitive variables to a cell + ! in the computational domain s_assign_patch_primitive_variables => null() end subroutine s_finalize_assign_variables_module diff --git a/src/pre_process/m_boundary_conditions.fpp b/src/pre_process/m_boundary_conditions.fpp index 70c3485a12..1c5eef99f3 100644 --- a/src/pre_process/m_boundary_conditions.fpp +++ b/src/pre_process/m_boundary_conditions.fpp @@ -20,17 +20,18 @@ module m_boundary_conditions real(wp) :: length_x, length_y, length_z real(wp) :: radius type(bounds_info) :: x_boundary, y_boundary, z_boundary + private; public :: s_apply_boundary_patches contains - !> Apply a line-segment boundary condition patch along a domain edge in 2D. + !> @brief Applies a line-segment boundary condition patch along a domain edge in 2D. impure subroutine s_line_segment_bc(patch_id, bc_type) type(integer_field), dimension(1:num_dims,1:2), intent(inout) :: bc_type integer, intent(in) :: patch_id integer :: j - ! Patch is a line segment along y on the x-boundary face + ! Patch is a vertical line at x_beg or x_end if (patch_bc(patch_id)%dir == 1) then y_centroid = patch_bc(patch_id)%centroid(2) @@ -39,7 +40,7 @@ contains y_boundary%beg = y_centroid - 0.5_wp*length_y y_boundary%end = y_centroid + 0.5_wp*length_y - ! Apply patch if x boundary is a domain boundary + ! Patch is a vertical line at x_beg and x_beg is a domain boundary #:for BOUND, X, LOC, IDX in [('beg', '-i', -1, 1), ('end', 'm+i', 1, 2)] if (patch_bc(patch_id)%loc == ${LOC}$ .and. bc_x%${BOUND}$ < 0) then do j = 0, n @@ -51,7 +52,7 @@ contains #:endfor end if - ! Patch is a line segment along x on the y-boundary face + ! Patch is a vertical line at y_beg or y_end if (patch_bc(patch_id)%dir == 2) then x_centroid = patch_bc(patch_id)%centroid(1) length_x = patch_bc(patch_id)%length(1) @@ -59,7 +60,7 @@ contains x_boundary%beg = x_centroid - 0.5_wp*length_x x_boundary%end = x_centroid + 0.5_wp*length_x - ! Apply patch if y boundary is a domain boundary + ! Patch is a vertical line at x_beg and x_beg is a domain boundary #:for BOUND, Y, LOC, IDX in [('beg', '-i', -1, 1), ('end', 'n+i', 1, 2)] if (patch_bc(patch_id)%loc == ${LOC}$ .and. bc_y%${BOUND}$ < 0) then do j = 0, m @@ -73,7 +74,7 @@ contains end subroutine s_line_segment_bc - !> Apply a circular boundary condition patch on a domain face in 3D. + !> @brief Applies a circular boundary condition patch on a domain face in 3D. impure subroutine s_circle_bc(patch_id, bc_type) type(integer_field), dimension(1:num_dims,1:2), intent(inout) :: bc_type @@ -133,7 +134,7 @@ contains end subroutine s_circle_bc - !> Apply a rectangular boundary condition patch on a domain face in 3D. + !> @brief Applies a rectangular boundary condition patch on a domain face in 3D. impure subroutine s_rectangle_bc(patch_id, bc_type) type(integer_field), dimension(1:num_dims,1:2), intent(inout) :: bc_type @@ -151,7 +152,7 @@ contains z_boundary%beg = z_centroid - 0.5_wp*length_z z_boundary%end = z_centroid + 0.5_wp*length_z - ! Patch is a rectangle on the x-boundary face + ! Patch is a circle at x_beg and x_beg is a domain boundary #:for BOUND, X, LOC, IDX in [('beg', '-i', -1, 1), ('end', 'm+i', 1, 2)] if (patch_bc(patch_id)%loc == ${LOC}$ .and. bc_x%${BOUND}$ < 0) then do k = 0, p @@ -176,7 +177,7 @@ contains z_boundary%beg = z_centroid - 0.5_wp*length_z z_boundary%end = z_centroid + 0.5_wp*length_z - ! Patch is a rectangle on the y-boundary face + ! Patch is a circle at y_beg and y_beg is a domain boundary #:for BOUND, Y, LOC, IDX in [('beg', '-i', -1, 1), ('end', 'n+i', 1, 2)] if (patch_bc(patch_id)%loc == ${LOC}$ .and. bc_y%${BOUND}$ < 0) then do k = 0, p @@ -217,7 +218,7 @@ contains end subroutine s_rectangle_bc - !> Iterate over all boundary condition patches and dispatch them by geometry type. + !> @brief Iterates over all boundary condition patches and dispatches them by geometry type. impure subroutine s_apply_boundary_patches(q_prim_vf, bc_type) type(scalar_field), dimension(sys_size) :: q_prim_vf diff --git a/src/pre_process/m_check_ib_patches.fpp b/src/pre_process/m_check_ib_patches.fpp index 844d051716..1c82bcd5bc 100644 --- a/src/pre_process/m_check_ib_patches.fpp +++ b/src/pre_process/m_check_ib_patches.fpp @@ -12,6 +12,7 @@ module m_check_ib_patches use m_global_parameters use m_mpi_proxy use m_data_output + #ifdef MFC_MPI use mpi !< Message passing interface (MPI) module #endif @@ -29,13 +30,14 @@ module m_check_ib_patches contains - !> Validate the geometry parameters of all active and inactive immersed boundary patches. + !> @brief Validates the geometry parameters of all active and inactive immersed boundary patches. impure subroutine s_check_ib_patches integer :: i do i = 1, num_patches_max if (i <= num_ibs) then + ! call s_check_patch_geometry(i) call s_int_to_str(i, iStr) @:PROHIBIT(patch_ib(i)%geometry == dflt_int, "IB patch undefined. patch_ib("//trim(iStr)//")%geometry must be set.") @@ -64,16 +66,16 @@ contains end if else @:PROHIBIT(patch_ib(i)%geometry /= dflt_int, & - & "Inactive IB patch defined. " // "patch_ib(" // trim(iStr) & - & // ")%geometry must not be set for inactive patches.") + & "Inactive IB patch defined. "// "patch_ib("//trim(iStr) & + & //")%geometry must not be set for inactive patches.") call s_check_inactive_ib_patch_geometry(i) end if end do end subroutine s_check_ib_patches - !> Verify that the geometric parameters of the circle patch have been consistently inputted. - + !> This subroutine verifies that the geometric parameters of the circle patch have consistently been inputted by the user. + !! @param patch_id Patch identifier impure subroutine s_check_circle_ib_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -81,12 +83,12 @@ contains call s_int_to_str(patch_id, iStr) @:PROHIBIT(n == 0 .or. p > 0 .or. patch_ib(patch_id)%radius <= 0._wp .or. f_is_default(patch_ib(patch_id)%x_centroid) & - & .or. f_is_default(patch_ib(patch_id)%y_centroid), 'in circle IB patch ' // trim(iStr)) + & .or. f_is_default(patch_ib(patch_id)%y_centroid), 'in circle IB patch '//trim(iStr)) end subroutine s_check_circle_ib_patch_geometry - !> Verify that the geometric parameters of the ellipse patch have been consistently inputted. - + !> This subroutine verifies that the geometric parameters of the ellipse patch have consistently been inputted by the user. + !! @param patch_id Patch identifier impure subroutine s_check_ellipse_ib_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -95,12 +97,12 @@ contains @:PROHIBIT(n == 0 .or. p > 0 .or. patch_ib(patch_id)%length_x <= 0._wp .or. patch_ib(patch_id) & & %length_y <= 0._wp .or. f_is_default(patch_ib(patch_id)%x_centroid) .or. f_is_default(patch_ib(patch_id) & - & %y_centroid), 'in ellipse IB patch ' // trim(iStr)) + & %y_centroid), 'in ellipse IB patch '//trim(iStr)) end subroutine s_check_ellipse_ib_patch_geometry - !> Verify that the geometric parameters of the airfoil patch have been consistently inputted. - + !> This subroutine verifies that the geometric parameters of the airfoil patch have consistently been inputted by the user. + !! @param patch_id Patch identifier impure subroutine s_check_airfoil_ib_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -109,12 +111,12 @@ contains @:PROHIBIT(n == 0 .or. p > 0 .or. patch_ib(patch_id)%c <= 0._wp .or. patch_ib(patch_id)%p <= 0._wp .or. patch_ib(patch_id) & & %t <= 0._wp .or. patch_ib(patch_id)%m <= 0._wp .or. f_is_default(patch_ib(patch_id)%x_centroid) & - & .or. f_is_default(patch_ib(patch_id)%y_centroid), 'in airfoil IB patch ' // trim(iStr)) + & .or. f_is_default(patch_ib(patch_id)%y_centroid), 'in airfoil IB patch '//trim(iStr)) end subroutine s_check_airfoil_ib_patch_geometry - !> Verify that the geometric parameters of the 3D airfoil patch have been consistently inputted. - + !> This subroutine verifies that the geometric parameters of the 3d airfoil patch have consistently been inputted by the user. + !! @param patch_id Patch identifier impure subroutine s_check_3d_airfoil_ib_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -125,12 +127,12 @@ contains & %p <= 0._wp .or. patch_ib(patch_id)%t <= 0._wp .or. patch_ib(patch_id) & & %m <= 0._wp .or. f_is_default(patch_ib(patch_id)%x_centroid) .or. f_is_default(patch_ib(patch_id)%y_centroid) & & .or. f_is_default(patch_ib(patch_id)%z_centroid) .or. f_is_default(patch_ib(patch_id)%length_z), & - & 'in 3d airfoil IB patch ' // trim(iStr)) + & 'in 3d airfoil IB patch '//trim(iStr)) end subroutine s_check_3d_airfoil_ib_patch_geometry - !> Verify that the geometric parameters of the rectangle patch have been consistently inputted. - + !> This subroutine verifies that the geometric parameters of the rectangle patch have consistently been inputted by the user. + !! @param patch_id Patch identifier impure subroutine s_check_rectangle_ib_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -139,12 +141,12 @@ contains @:PROHIBIT(n == 0 .or. p > 0 .or. f_is_default(patch_ib(patch_id)%x_centroid) .or. f_is_default(patch_ib(patch_id) & & %y_centroid) .or. patch_ib(patch_id)%length_x <= 0._wp .or. patch_ib(patch_id)%length_y <= 0._wp, & - & 'in rectangle IB patch ' // trim(iStr)) + & 'in rectangle IB patch '//trim(iStr)) end subroutine s_check_rectangle_ib_patch_geometry - !> Verify that the geometric parameters of the sphere patch have been consistently inputted. - + !> This subroutine verifies that the geometric parameters of the sphere patch have consistently been inputted by the user. + !! @param patch_id Patch identifier impure subroutine s_check_sphere_ib_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -153,12 +155,12 @@ contains @:PROHIBIT(n == 0 .or. p == 0 .or. f_is_default(patch_ib(patch_id)%x_centroid) .or. f_is_default(patch_ib(patch_id) & & %y_centroid) .or. f_is_default(patch_ib(patch_id)%z_centroid) .or. patch_ib(patch_id)%radius <= 0._wp, & - & 'in sphere IB patch ' // trim(iStr)) + & 'in sphere IB patch '//trim(iStr)) end subroutine s_check_sphere_ib_patch_geometry - !> Verify that the geometric parameters of the cuboid patch have been consistently inputted. - + !> This subroutine verifies that the geometric parameters of the cuboid patch have consistently been inputted by the user. + !! @param patch_id Patch identifier impure subroutine s_check_cuboid_ib_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -168,12 +170,12 @@ contains @:PROHIBIT(n == 0 .or. p == 0 .or. f_is_default(patch_ib(patch_id)%x_centroid) .or. f_is_default(patch_ib(patch_id) & & %y_centroid) .or. f_is_default(patch_ib(patch_id)%z_centroid) .or. patch_ib(patch_id) & & %length_x <= 0._wp .or. patch_ib(patch_id)%length_y <= 0._wp .or. patch_ib(patch_id)%length_z <= 0._wp, & - & 'in cuboid IB patch ' // trim(iStr)) + & 'in cuboid IB patch '//trim(iStr)) end subroutine s_check_cuboid_ib_patch_geometry - !> Verify that the geometric parameters of the cylinder patch have been consistently inputted. - + !> This subroutine verifies that the geometric parameters of the cylinder patch have consistently been inputted by the user. + !! @param patch_id Patch identifier impure subroutine s_check_cylinder_ib_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -183,19 +185,19 @@ contains @:PROHIBIT(p == 0 .or. f_is_default(patch_ib(patch_id)%x_centroid) .or. f_is_default(patch_ib(patch_id)%y_centroid) & & .or. f_is_default(patch_ib(patch_id)%z_centroid) .or. (patch_ib(patch_id) & & %length_x <= 0._wp .and. patch_ib(patch_id)%length_y <= 0._wp .and. patch_ib(patch_id)%length_z <= 0._wp) & - & .or. patch_ib(patch_id)%radius <= 0._wp, 'in cylinder IB patch ' // trim(iStr)) + & .or. patch_ib(patch_id)%radius <= 0._wp, 'in cylinder IB patch '//trim(iStr)) - @:PROHIBIT((patch_ib(patch_id)%length_x > 0._wp .and. ((.not. f_is_default(patch_ib(patch_id)%length_y)) & + @:PROHIBIT( (patch_ib(patch_id)%length_x > 0._wp .and. ((.not. f_is_default(patch_ib(patch_id)%length_y)) & & .or. (.not. f_is_default(patch_ib(patch_id)%length_z)))) .or. (patch_ib(patch_id) & & %length_y > 0._wp .and. ((.not. f_is_default(patch_ib(patch_id)%length_x)) & & .or. (.not. f_is_default(patch_ib(patch_id)%length_z)))) .or. (patch_ib(patch_id) & & %length_z > 0._wp .and. ((.not. f_is_default(patch_ib(patch_id)%length_x)) & - & .or. (.not. f_is_default(patch_ib(patch_id)%length_y)))), 'in cylinder IB patch ' // trim(iStr)) + & .or. (.not. f_is_default(patch_ib(patch_id)%length_y)))), 'in cylinder IB patch '//trim(iStr)) end subroutine s_check_cylinder_ib_patch_geometry - !> Verify that the geometric parameters of the model patch have been consistently inputted. - + !> This subroutine verifies that the geometric parameters of the model patch have consistently been inputted by the user. + !! @param patch_id Patch identifier impure subroutine s_check_model_ib_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -205,11 +207,12 @@ contains @:PROHIBIT(patch_ib(patch_id)%model_filepath == dflt_char, 'Empty model file path for patch '//trim(iStr)) @:PROHIBIT(patch_ib(patch_id)%model_scale(1) <= 0._wp .or. patch_ib(patch_id)%model_scale(2) & - & <= 0._wp .or. patch_ib(patch_id)%model_scale(3) <= 0._wp, 'Negative scale in model IB patch ' // trim(iStr)) + & <= 0._wp .or. patch_ib(patch_id)%model_scale(3) <= 0._wp, 'Negative scale in model IB patch '//trim(iStr)) end subroutine s_check_model_ib_patch_geometry - !> Verify that inactive IB patch geometry parameters remain at defaults + !!> This subroutine verifies that the geometric parameters of + !! the inactive patch remain unaltered by the user inputs. @param patch_id Patch identifier impure subroutine s_check_inactive_ib_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -220,7 +223,7 @@ contains & .or. (.not. f_is_default(patch_ib(patch_id)%z_centroid)) .or. (.not. f_is_default(patch_ib(patch_id) & & %length_x)) .or. (.not. f_is_default(patch_ib(patch_id)%length_y)) & & .or. (.not. f_is_default(patch_ib(patch_id)%length_z)) .or. (.not. f_is_default(patch_ib(patch_id)%radius)), & - & 'in inactive IB patch ' // trim(iStr)) + & 'in inactive IB patch '//trim(iStr)) end subroutine s_check_inactive_ib_patch_geometry diff --git a/src/pre_process/m_check_patches.fpp b/src/pre_process/m_check_patches.fpp index adcb233f97..50be404eb9 100644 --- a/src/pre_process/m_check_patches.fpp +++ b/src/pre_process/m_check_patches.fpp @@ -15,6 +15,7 @@ module m_check_patches use m_global_parameters use m_mpi_proxy use m_data_output + #ifdef MFC_MPI use mpi !< Message passing interface (MPI) module #endif @@ -31,7 +32,7 @@ module m_check_patches contains - !> Validate the geometry parameters of all active and inactive initial condition patches. + !> @brief Validates the geometry parameters of all active and inactive initial condition patches. impure subroutine s_check_patches integer :: i @@ -41,15 +42,16 @@ contains do i = 1, num_patches_max if (i <= num_patches) then + ! call s_check_patch_geometry(i) call s_int_to_str(i, iStr) @:PROHIBIT(patch_icpp(i)%geometry == 6, & - & "Invalid patch geometry number. " // "patch_icpp(" // trim(iStr) // ")%geometry is deprecated.") + & "Invalid patch geometry number. "// "patch_icpp("//trim(iStr)//")%geometry is deprecated.") @:PROHIBIT(patch_icpp(i)%geometry == 7, & - & "Invalid patch geometry number. " // "patch_icpp(" // trim(iStr) // ")%geometry is deprecated.") + & "Invalid patch geometry number. "// "patch_icpp("//trim(iStr)//")%geometry is deprecated.") @:PROHIBIT(patch_icpp(i)%geometry == 15, & - & "Invalid patch geometry number. " // "patch_icpp(" // trim(iStr) // ")%geometry is deprecated.") + & "Invalid patch geometry number. "// "patch_icpp("//trim(iStr)//")%geometry is deprecated.") @:PROHIBIT(patch_icpp(i)%geometry == dflt_int, & - & "Invalid patch geometry number. " // "patch_icpp(" // trim(iStr) // ")%geometry must be set.") + & "Invalid patch geometry number. "// "patch_icpp("//trim(iStr)//")%geometry must be set.") ! Constraints on the geometric initial condition patch parameters if (patch_icpp(i)%geometry == 1) then @@ -86,9 +88,9 @@ contains end if else @:PROHIBIT(patch_icpp(i)%geometry /= dflt_int, & - & "Inactive patch defined. " // "patch_icpp(" // trim(iStr) & - & // ")%geometry not be set for inactive patches. " // "Patch " // trim(iStr) & - & // " is inactive as the number of patches is " // trim(num_patches_str)) + & "Inactive patch defined. "// "patch_icpp("//trim(iStr) & + & //")%geometry not be set for inactive patches. "// "Patch "//trim(iStr) & + & //" is inactive as the number of patches is "//trim(num_patches_str)) call s_check_inactive_patch_geometry(i) end if end do @@ -125,7 +127,8 @@ contains end subroutine s_check_patches - !> Check the line segment patch input + !> This subroutine checks the line segment patch input + !! @param patch_id Patch identifier impure subroutine s_check_line_segment_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -134,13 +137,14 @@ contains @:PROHIBIT(n > 0, "Line segment patch "//trim(iStr)//": n must be zero") @:PROHIBIT(patch_icpp(patch_id)%length_x <= 0._wp, & - & "Line segment patch " // trim(iStr) // ": length_x must be greater than zero") + & "Line segment patch "//trim(iStr)//": length_x must be greater than zero") @:PROHIBIT(f_is_default(patch_icpp(patch_id)%x_centroid), "Line segment patch "//trim(iStr)//": x_centroid must be set") @:PROHIBIT(cyl_coord, "Line segment patch "//trim(iStr)//": cyl_coord is not supported") end subroutine s_check_line_segment_patch_geometry - !> Check the circle patch input + !> This subroutine checks the circle patch input + !! @param patch_id Patch identifier impure subroutine s_check_circle_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -155,7 +159,8 @@ contains end subroutine s_check_circle_patch_geometry - !> Check the rectangle patch input + !> This subroutine checks the rectangle patch input + !! @param patch_id Patch identifier impure subroutine s_check_rectangle_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -171,7 +176,8 @@ contains end subroutine s_check_rectangle_patch_geometry - !> Check the line sweep patch input + !> This subroutine checks the line sweep patch input + !! @param patch_id Patch identifier impure subroutine s_check_line_sweep_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -185,11 +191,12 @@ contains @:PROHIBIT(f_is_default(patch_icpp(patch_id)%normal(1)), "Line sweep patch "//trim(iStr)//": normal(1) must be set") @:PROHIBIT(f_is_default(patch_icpp(patch_id)%normal(2)), "Line sweep patch "//trim(iStr)//": normal(2) must be set") @:PROHIBIT(.not. f_is_default(patch_icpp(patch_id)%normal(3)), & - & "Line sweep patch " // trim(iStr) // ": normal(3) must not be set") + & "Line sweep patch "//trim(iStr)//": normal(3) must not be set") end subroutine s_check_line_sweep_patch_geometry - !> Check the ellipse patch input + !> This subroutine checks the ellipse patch input + !! @param patch_id Patch identifier impure subroutine s_check_ellipse_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -206,7 +213,8 @@ contains end subroutine s_check_ellipse_patch_geometry - !> Check the model patch input + !> This subroutine checks the model patch input + !! @param patch_id Patch identifier impure subroutine s_check_2D_TaylorGreen_vortex_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -216,19 +224,20 @@ contains @:PROHIBIT(n == 0, "Taylor Green vortex patch "//trim(iStr)//": n must be greater than zero") @:PROHIBIT(p > 0, "Taylor Green vortex patch "//trim(iStr)//": p must be zero") @:PROHIBIT(f_is_default(patch_icpp(patch_id)%x_centroid), & - & "Taylor Green vortex patch " // trim(iStr) // ": x_centroid must be set") + & "Taylor Green vortex patch "//trim(iStr)//": x_centroid must be set") @:PROHIBIT(f_is_default(patch_icpp(patch_id)%y_centroid), & - & "Taylor Green vortex patch " // trim(iStr) // ": y_centroid must be set") + & "Taylor Green vortex patch "//trim(iStr)//": y_centroid must be set") @:PROHIBIT(patch_icpp(patch_id)%length_x <= 0._wp, & - & "Taylor Green vortex patch " // trim(iStr) // ": length_x must be greater than zero") + & "Taylor Green vortex patch "//trim(iStr)//": length_x must be greater than zero") @:PROHIBIT(patch_icpp(patch_id)%length_y <= 0._wp, & - & "Taylor Green vortex patch " // trim(iStr) // ": length_y must be greater than zero") + & "Taylor Green vortex patch "//trim(iStr)//": length_y must be greater than zero") @:PROHIBIT(patch_icpp(patch_id)%vel(2) <= 0._wp, & - & "Taylor Green vortex patch " // trim(iStr) // ": vel(2) must be greater than zero") + & "Taylor Green vortex patch "//trim(iStr)//": vel(2) must be greater than zero") end subroutine s_check_2D_TaylorGreen_vortex_patch_geometry - !> Check the model patch input + !> This subroutine checks the model patch input + !! @param patch_id Patch identifier impure subroutine s_check_sphere_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -243,7 +252,6 @@ contains end subroutine s_check_sphere_patch_geometry - !> Validate geometry parameters for a 2D modal (Fourier) patch impure subroutine s_check_2d_modal_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -258,7 +266,6 @@ contains end subroutine s_check_2d_modal_patch_geometry - !> Validate geometry parameters for a 3D spherical harmonic patch impure subroutine s_check_3d_spherical_harmonic_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -267,17 +274,18 @@ contains @:PROHIBIT(p == 0, "Spherical harmonic patch "//trim(iStr)//": p must be greater than zero") @:PROHIBIT(patch_icpp(patch_id)%radius <= 0._wp, & - & "Spherical harmonic patch " // trim(iStr) // ": radius must be greater than zero") + & "Spherical harmonic patch "//trim(iStr)//": radius must be greater than zero") @:PROHIBIT(f_is_default(patch_icpp(patch_id)%x_centroid), & - & "Spherical harmonic patch " // trim(iStr) // ": x_centroid must be set") + & "Spherical harmonic patch "//trim(iStr)//": x_centroid must be set") @:PROHIBIT(f_is_default(patch_icpp(patch_id)%y_centroid), & - & "Spherical harmonic patch " // trim(iStr) // ": y_centroid must be set") + & "Spherical harmonic patch "//trim(iStr)//": y_centroid must be set") @:PROHIBIT(f_is_default(patch_icpp(patch_id)%z_centroid), & - & "Spherical harmonic patch " // trim(iStr) // ": z_centroid must be set") + & "Spherical harmonic patch "//trim(iStr)//": z_centroid must be set") end subroutine s_check_3d_spherical_harmonic_patch_geometry - !> Check the model patch input + !> This subroutine checks the model patch input + !! @param patch_id Patch identifier impure subroutine s_check_cuboid_patch_geometry(patch_id) ! Patch identifier @@ -295,7 +303,8 @@ contains end subroutine s_check_cuboid_patch_geometry - !> Check the model patch input + !> This subroutine checks the model patch input + !! @param patch_id Patch identifier impure subroutine s_check_cylinder_patch_geometry(patch_id) ! Patch identifier @@ -310,20 +319,20 @@ contains @:PROHIBIT(patch_icpp(patch_id)%radius <= 0._wp, "Cylinder patch "//trim(iStr)//": radius must be greater than zero") ! Check if exactly one length is defined - @:PROHIBIT(count([patch_icpp(patch_id)%length_x > 0._wp, patch_icpp(patch_id)%length_y > 0._wp, & - & patch_icpp(patch_id)%length_z > 0._wp]) /= 1, & - & "Cylinder patch " // trim(iStr) & - & // ": Exactly one of length_x, length_y, or length_z must be defined and positive") + @:PROHIBIT(count([ patch_icpp(patch_id)%length_x > 0._wp, patch_icpp(patch_id)%length_y > 0._wp, & + & patch_icpp(patch_id)%length_z > 0._wp ]) /= 1, & + & "Cylinder patch "//trim(iStr)//": Exactly one of length_x, length_y, or length_z must be defined and positive") ! Ensure the defined length is positive - @:PROHIBIT((.not. f_is_default(patch_icpp(patch_id)%length_x) .and. patch_icpp(patch_id)%length_x <= 0._wp) & + @:PROHIBIT( (.not. f_is_default(patch_icpp(patch_id)%length_x) .and. patch_icpp(patch_id)%length_x <= 0._wp) & & .or. (.not. f_is_default(patch_icpp(patch_id)%length_y) .and. patch_icpp(patch_id)%length_y <= 0._wp) & & .or. (.not. f_is_default(patch_icpp(patch_id)%length_z) .and. patch_icpp(patch_id)%length_z <= 0._wp), & - & "Cylinder patch " // trim(iStr) // ": The defined length_{} must be greater than zero") + & "Cylinder patch "//trim(iStr)//": The defined length_{} must be greater than zero") end subroutine s_check_cylinder_patch_geometry - !> Check the model patch input + !> This subroutine checks the model patch input + !! @param patch_id Patch identifier impure subroutine s_check_plane_sweep_patch_geometry(patch_id) ! Patch identifier @@ -341,7 +350,8 @@ contains end subroutine s_check_plane_sweep_patch_geometry - !> Check the model patch input + !> This subroutine checks the model patch input + !! @param patch_id Patch identifier impure subroutine s_check_ellipsoid_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -358,7 +368,8 @@ contains end subroutine s_check_ellipsoid_patch_geometry - !> Verify that inactive patch geometry parameters remain at defaults + !!> This subroutine verifies that the geometric parameters of + !! the inactive patch remain unaltered by the user inputs. @param patch_id Patch identifier impure subroutine s_check_inactive_patch_geometry(patch_id) integer, intent(in) :: patch_id @@ -366,11 +377,11 @@ contains call s_int_to_str(patch_id, iStr) @:PROHIBIT(.not. f_is_default(patch_icpp(patch_id)%x_centroid), & - & "Inactive patch " // trim(iStr) // ": x_centroid must not be set") + & "Inactive patch "//trim(iStr)//": x_centroid must not be set") @:PROHIBIT(.not. f_is_default(patch_icpp(patch_id)%y_centroid), & - & "Inactive patch " // trim(iStr) // ": y_centroid must not be set") + & "Inactive patch "//trim(iStr)//": y_centroid must not be set") @:PROHIBIT(.not. f_is_default(patch_icpp(patch_id)%z_centroid), & - & "Inactive patch " // trim(iStr) // ": z_centroid must not be set") + & "Inactive patch "//trim(iStr)//": z_centroid must not be set") @:PROHIBIT(.not. f_is_default(patch_icpp(patch_id)%length_x), "Inactive patch "//trim(iStr)//": length_x must not be set") @:PROHIBIT(.not. f_is_default(patch_icpp(patch_id)%length_y), "Inactive patch "//trim(iStr)//": length_y must not be set") @:PROHIBIT(.not. f_is_default(patch_icpp(patch_id)%length_z), "Inactive patch "//trim(iStr)//": length_z must not be set") @@ -386,7 +397,8 @@ contains end subroutine s_check_inactive_patch_geometry - !> Verify the active patch's right to overwrite the preceding patches + !> This subroutine verifies the active patch's right to overwrite the preceding patches + !! @param patch_id Patch identifier impure subroutine s_check_active_patch_alteration_rights(patch_id) integer, intent(in) :: patch_id @@ -395,12 +407,13 @@ contains @:PROHIBIT(.not. patch_icpp(patch_id)%alter_patch(0), "Patch "//trim(iStr)//": alter_patch(0) must be true") @:PROHIBIT(any(patch_icpp(patch_id)%alter_patch(patch_id:)), & - & "Patch " // trim(iStr) // ":alter_patch(i) must be false for i >= " // trim(iStr) & - & // ". Only preceding patches can be altered") + & "Patch "//trim(iStr)// ":alter_patch(i) must be false for i >= "//trim(iStr) & + & //". Only preceding patches can be altered") end subroutine s_check_active_patch_alteration_rights - !> Verify that inactive patches cannot overwrite other patches + !> This subroutine verifies that inactive patches cannot overwrite other patches + !! @param patch_id Patch identifier impure subroutine s_check_inactive_patch_alteration_rights(patch_id) ! Patch identifier @@ -410,11 +423,12 @@ contains @:PROHIBIT(.not. patch_icpp(patch_id)%alter_patch(0), "Inactive patch "//trim(iStr)//": cannot have alter_patch(0) altered") @:PROHIBIT(any(patch_icpp(patch_id)%alter_patch(1:)), & - & "Inactive patch " // trim(iStr) // ": cannot have any alter_patch(i) enabled") + & "Inactive patch "//trim(iStr)//": cannot have any alter_patch(i) enabled") end subroutine s_check_inactive_patch_alteration_rights - !> Check the smoothing parameters + !> This subroutine checks the smoothing parameters + !! @param patch_id Patch identifier impure subroutine s_check_supported_patch_smoothing(patch_id) integer, intent(in) :: patch_id @@ -423,21 +437,22 @@ contains if (patch_icpp(patch_id)%smoothen) then @:PROHIBIT(patch_icpp(patch_id)%smooth_patch_id >= patch_id, & - & "Smoothen enabled. Patch " // trim(iStr) // ": smooth_patch_id must be less than patch_id") + & "Smoothen enabled. Patch "//trim(iStr)//": smooth_patch_id must be less than patch_id") @:PROHIBIT(patch_icpp(patch_id)%smooth_patch_id == 0, & - & "Smoothen enabled. Patch " // trim(iStr) // ": smooth_patch_id must be greater than zero") + & "Smoothen enabled. Patch "//trim(iStr)//": smooth_patch_id must be greater than zero") @:PROHIBIT(patch_icpp(patch_id)%smooth_coeff <= 0._wp, & - & "Smoothen enabled. Patch " // trim(iStr) // ": smooth_coeff must be greater than zero") + & "Smoothen enabled. Patch "//trim(iStr)//": smooth_coeff must be greater than zero") else @:PROHIBIT(patch_icpp(patch_id)%smooth_patch_id /= patch_id, & - & "Smoothen disabled. Patch " // trim(iStr) // ": smooth_patch_id must be equal to patch_id") + & "Smoothen disabled. Patch "//trim(iStr)//": smooth_patch_id must be equal to patch_id") @:PROHIBIT(.not. f_is_default(patch_icpp(patch_id)%smooth_coeff), & - & "Smoothen disabled. Patch " // trim(iStr) // ": smooth_coeff must not be set") + & "Smoothen disabled. Patch "//trim(iStr)//": smooth_coeff must not be set") end if end subroutine s_check_supported_patch_smoothing - !> Verify that inactive patches cannot be smoothed + !> This subroutine verifies that inactive patches cannot be smoothed + !! @param patch_id Patch identifier impure subroutine s_check_unsupported_patch_smoothing(patch_id) ! Patch identifier @@ -447,13 +462,14 @@ contains @:PROHIBIT(patch_icpp(patch_id)%smoothen, "Inactive patch "//trim(iStr)//": cannot have smoothen enabled") @:PROHIBIT(patch_icpp(patch_id)%smooth_patch_id /= patch_id, & - & "Inactive patch " // trim(iStr) // ": smooth_patch_id must be equal to patch_id") + & "Inactive patch "//trim(iStr)//": smooth_patch_id must be equal to patch_id") @:PROHIBIT(.not. f_is_default(patch_icpp(patch_id)%smooth_coeff), & - & "Inactive patch " // trim(iStr) // ": smooth_coeff must not be set") + & "Inactive patch "//trim(iStr)//": smooth_coeff must not be set") end subroutine s_check_unsupported_patch_smoothing - !> Check the primitive variables + !> This subroutine checks the primitive variables + !! @param patch_id Patch identifier impure subroutine s_check_active_patch_primitive_variables(patch_id) integer, intent(in) :: patch_id @@ -463,24 +479,23 @@ contains @:PROHIBIT(f_is_default(patch_icpp(patch_id)%vel(1)), "Patch "//trim(iStr)//": vel(1) must be set") @:PROHIBIT(n == 0 .and. (.not. f_is_default(patch_icpp(patch_id)%vel(2))) .and. (.not. f_approx_equal(patch_icpp(patch_id) & - & %vel(2), 0._wp)) .and. (.not. mhd), "Patch " // trim(iStr) // ": vel(2) must not be set when n = 0") + & %vel(2) , 0._wp)) .and. (.not. mhd), "Patch "//trim(iStr)//": vel(2) must not be set when n = 0") @:PROHIBIT(n > 0 .and. f_is_default(patch_icpp(patch_id)%vel(2)), "Patch "//trim(iStr)//": vel(2) must be set when n > 0") @:PROHIBIT(p == 0 .and. (.not. f_is_default(patch_icpp(patch_id)%vel(3))) .and. (.not. f_approx_equal(patch_icpp(patch_id) & - & %vel(3), 0._wp)) .and. (.not. mhd), "Patch " // trim(iStr) // ": vel(3) must not be set when p = 0") + & %vel(3) , 0._wp)) .and. (.not. mhd), "Patch "//trim(iStr)//": vel(3) must not be set when p = 0") @:PROHIBIT(p > 0 .and. f_is_default(patch_icpp(patch_id)%vel(3)), "Patch "//trim(iStr)//": vel(3) must be set when p > 0") @:PROHIBIT(mhd .and. (f_is_default(patch_icpp(patch_id)%vel(2)) .or. f_is_default(patch_icpp(patch_id)%vel(3))), & - & "Patch " // trim(iStr) // ": All velocities (vel(1:3)) must be set when mhd = true") + & "Patch "//trim(iStr)//": All velocities (vel(1:3)) must be set when mhd = true") @:PROHIBIT(model_eqns == 1 .and. patch_icpp(patch_id)%rho <= 0._wp, & - & "Patch " // trim(iStr) // ": rho must be greater than zero when model_eqns = 1") + & "Patch "//trim(iStr)//": rho must be greater than zero when model_eqns = 1") @:PROHIBIT(model_eqns == 1 .and. patch_icpp(patch_id)%gamma <= 0._wp, & - & "Patch " // trim(iStr) // ": gamma must be greater than zero when model_eqns = 1") + & "Patch "//trim(iStr)//": gamma must be greater than zero when model_eqns = 1") @:PROHIBIT(model_eqns == 1 .and. patch_icpp(patch_id)%pi_inf < 0._wp, & - & "Patch " // trim(iStr) // ": pi_inf must be greater than or equal to zero when model_eqns = 1") + & "Patch "//trim(iStr)//": pi_inf must be greater than or equal to zero when model_eqns = 1") @:PROHIBIT(patch_icpp(patch_id)%geometry == 5 .and. patch_icpp(patch_id)%pi_inf > 0, & - & "Patch " // trim(iStr) // ": pi_inf must be less than or equal to zero when geometry = 5") + & "Patch "//trim(iStr)//": pi_inf must be less than or equal to zero when geometry = 5") @:PROHIBIT(model_eqns == 2 .and. any(patch_icpp(patch_id)%alpha_rho(1:num_fluids) < 0._wp), & - & "Patch " // trim(iStr) & - & // ": alpha_rho(1:num_fluids) must be greater than or equal to zero when model_eqns = 2") + & "Patch "//trim(iStr)//": alpha_rho(1:num_fluids) must be greater than or equal to zero when model_eqns = 2") is_set_B(1) = .not. f_is_default(patch_icpp(patch_id)%Bx) is_set_B(2) = .not. f_is_default(patch_icpp(patch_id)%By) @@ -493,19 +508,23 @@ contains if (model_eqns == 2 .and. num_fluids < num_fluids_max) then @:PROHIBIT(.not. f_all_default(patch_icpp(patch_id)%alpha_rho(num_fluids + 1:)), & - & "Patch " // trim(iStr) // ": alpha_rho(i) must not be set for i > num_fluids") + & "Patch "//trim(iStr)//": alpha_rho(i) must not be set for i > num_fluids") @:PROHIBIT(.not. f_all_default(patch_icpp(patch_id)%alpha(num_fluids + 1:)), & - & "Patch " // trim(iStr) // ": alpha(i) must not be set for i > num_fluids") + & "Patch "//trim(iStr)//": alpha(i) must not be set for i > num_fluids") @:PROHIBIT(f_is_default(patch_icpp(patch_id)%alpha(num_fluids)), & - & "Patch " // trim(iStr) // ": alpha(num_fluids) must be set") + & "Patch "//trim(iStr)//": alpha(num_fluids) must be set") end if if (chemistry) then + !@:ASSERT(all(patch_icpp(patch_id)%Y(1:num_species) >= 0._wp), "Patch " // trim(iStr) // ".") + !@:ASSERT(any(patch_icpp(patch_id)%Y(1:num_species) > verysmall), "Patch " // trim(iStr) // ".") end if end subroutine s_check_active_patch_primitive_variables - !> Verify that the primitive variables associated with the given inactive patch remain unaltered by the user inputs. + !> This subroutine verifies that the primitive variables associated with the given inactive patch remain unaltered by the user + !! inputs. + !! @param patch_id Patch identifier impure subroutine s_check_inactive_patch_primitive_variables(patch_id) integer, intent(in) :: patch_id @@ -513,7 +532,7 @@ contains call s_int_to_str(patch_id, iStr) @:PROHIBIT(.not. f_all_default(patch_icpp(patch_id)%alpha_rho), & - & "Inactive patch " // trim(iStr) // ": alpha_rho must not be set") + & "Inactive patch "//trim(iStr)//": alpha_rho must not be set") @:PROHIBIT(.not. f_is_default(patch_icpp(patch_id)%rho), "Inactive patch "//trim(iStr)//": rho must not be set") @:PROHIBIT(.not. f_all_default(patch_icpp(patch_id)%vel), "Inactive patch "//trim(iStr)//": vel must not be set") @:PROHIBIT(.not. f_is_default(patch_icpp(patch_id)%pres), "Inactive patch "//trim(iStr)//": pres must not be set") @@ -523,7 +542,7 @@ contains end subroutine s_check_inactive_patch_primitive_variables - !> Verify that the model file referenced by the given patch exists on disk. + !> @brief Verifies that the model file referenced by the given patch exists on disk. impure subroutine s_check_model_geometry(patch_id) integer, intent(in) :: patch_id @@ -532,8 +551,8 @@ contains inquire (file=patch_icpp(patch_id)%model_filepath, exist=file_exists) @:PROHIBIT(.not. file_exists, & - & "Model file " // trim(patch_icpp(patch_id)%model_filepath) // " requested by patch " // trim(iStr) & - & // " does not exist") + & "Model file "//trim(patch_icpp(patch_id)%model_filepath)// " requested by patch "//trim(iStr) & + & //" does not exist") end subroutine s_check_model_geometry diff --git a/src/pre_process/m_data_output.fpp b/src/pre_process/m_data_output.fpp index ab3257a77b..e5123b7ee7 100644 --- a/src/pre_process/m_data_output.fpp +++ b/src/pre_process/m_data_output.fpp @@ -9,6 +9,7 @@ module m_data_output use m_global_parameters use m_helper use m_mpi_proxy + #ifdef MFC_MPI use mpi #endif @@ -33,10 +34,12 @@ module m_data_output abstract interface !> Interface for the conservative data + !! @param q_cons_vf Conservative variables impure subroutine s_write_abstract_data_files(q_cons_vf, q_prim_vf, bc_type) import :: scalar_field, integer_field, sys_size, m, n, p, pres_field, num_dims + ! Conservative variables type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf, q_prim_vf type(integer_field), dimension(1:num_dims,-1:1), intent(in) :: bc_type @@ -46,29 +49,37 @@ module m_data_output !> Time-step folder into which grid and initial condition data will be placed character(LEN=path_len + 2*name_len), private :: t_step_dir character(LEN=path_len + 2*name_len), public :: restart_dir !< Restart data folder + procedure(s_write_abstract_data_files), pointer :: s_write_data_files => null() contains !> Writes grid and initial condition data files to the "0" time-step directory in the local processor rank folder + !! @param q_cons_vf Conservative variables + !! @param q_prim_vf Primitive variables + !! @param bc_type Boundary condition types impure subroutine s_write_serial_data_files(q_cons_vf, q_prim_vf, bc_type) - type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf, q_prim_vf + type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf, q_prim_vf + + ! BC types type(integer_field), dimension(1:num_dims,-1:1), intent(in) :: bc_type logical :: file_exist character(LEN=15) :: FMT character(LEN=3) :: status - character(LEN=int(floor(log10(real(sys_size, wp)))) + 1) :: file_num - character(LEN=len_trim(t_step_dir) + name_len) :: file_loc - integer :: i, j, k, l, r, c - integer :: t_step - real(wp), dimension(nb) :: nRtmp - real(wp) :: nbub - real(wp) :: gamma, lit_gamma, pi_inf, qv - real(wp) :: rho - real(wp) :: pres, T - real(wp) :: rhoYks(1:num_species) - real(wp) :: pres_mag + + !> Used to store the number, in character form, of the currently manipulated conservative variable data file + character(LEN=int(floor(log10(real(sys_size, wp)))) + 1) :: file_num + character(LEN=len_trim(t_step_dir) + name_len) :: file_loc + integer :: i, j, k, l, r, c + integer :: t_step + real(wp), dimension(nb) :: nRtmp + real(wp) :: nbub + real(wp) :: gamma, lit_gamma, pi_inf, qv + real(wp) :: rho + real(wp) :: pres, T + real(wp) :: rhoYks(1:num_species) + real(wp) :: pres_mag pres_mag = 0._wp @@ -76,6 +87,8 @@ contains t_step = 0 + ! Outputting the Locations of the Cell-boundaries + if (old_grid) then status = 'old' else @@ -90,17 +103,21 @@ contains end if end if + ! x-coordinate direction file_loc = trim(t_step_dir) // '/x_cb.dat' open (1, FILE=trim(file_loc), form='unformatted', STATUS=status) write (1) x_cb(-1:m) close (1) + ! y- and z-coordinate directions if (n > 0) then + ! y-coordinate direction file_loc = trim(t_step_dir) // '/y_cb.dat' open (1, FILE=trim(file_loc), form='unformatted', STATUS=status) write (1) y_cb(-1:n) close (1) + ! z-coordinate direction if (p > 0) then file_loc = trim(t_step_dir) // '/z_cb.dat' open (1, FILE=trim(file_loc), form='unformatted', STATUS=status) @@ -109,6 +126,7 @@ contains end if end if + ! Outputting Conservative Variables do i = 1, sys_size write (file_num, '(I0)') i file_loc = trim(t_step_dir) // '/q_cons_vf' // trim(file_num) // '.dat' @@ -117,6 +135,7 @@ contains close (1) end do + ! Outputting pb and mv for non-polytropic qbmm if (qbmm .and. .not. polytropic) then do i = 1, nb do r = 1, nnode @@ -159,6 +178,7 @@ contains if (cfl_dt) t_step = n_start + ! 1D if (n == 0 .and. p == 0) then if (model_eqns == 2) then do i = 1, sys_size @@ -274,6 +294,7 @@ contains FMT = "(3F40.14)" end if + ! 2D if ((n > 0) .and. (p == 0)) then do i = 1, sys_size write (file_loc, '(A,I0,A,I2.2,A,I6.6,A)') trim(t_step_dir) // '/cons.', i, '.', proc_rank, '.', t_step, '.dat' @@ -325,6 +346,7 @@ contains FMT = "(4F40.14)" end if + ! 3D if (p > 0) then do i = 1, sys_size write (file_loc, '(A,I0,A,I2.2,A,I6.6,A)') trim(t_step_dir) // '/cons.', i, '.', proc_rank, '.', t_step, '.dat' @@ -380,8 +402,12 @@ contains end subroutine s_write_serial_data_files !> Writes grid and initial condition data files in parallel to the "0" time-step directory in the local processor rank folder + !! @param q_cons_vf Conservative variables + !! @param q_prim_vf Primitive variables + !! @param bc_type Boundary condition types impure subroutine s_write_parallel_data_files(q_cons_vf, q_prim_vf, bc_type) + ! Conservative variables type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf, q_prim_vf type(integer_field), dimension(1:num_dims,-1:1), intent(in) :: bc_type @@ -395,11 +421,15 @@ contains integer(KIND=MPI_OFFSET_KIND) :: MOK character(LEN=path_len + 2*name_len) :: file_loc logical :: file_exist, dir_check - integer :: i, j, k, l - real(wp) :: loc_violations, glb_violations - integer :: m_ds, n_ds, p_ds - integer :: m_glb_ds, n_glb_ds, p_glb_ds - integer :: m_glb_save, n_glb_save, p_glb_save !< Size of array being saved + + ! Generic loop iterators + integer :: i, j, k, l + real(wp) :: loc_violations, glb_violations + + ! Downsample variables + integer :: m_ds, n_ds, p_ds + integer :: m_glb_ds, n_glb_ds, p_glb_ds + integer :: m_glb_save, n_glb_save, p_glb_save !< Size of array being saved loc_violations = 0._wp @@ -429,12 +459,14 @@ contains call s_mpi_barrier() call DelayFileAccess(proc_rank) + ! Initialize MPI data I/O if (down_sample) then call s_initialize_mpi_data_ds(q_cons_temp) else call s_initialize_mpi_data(q_cons_vf) end if + ! Open the file to write all flow variables if (cfl_dt) then write (file_loc, '(I0,A,i7.7,A)') n_start, '_', proc_rank, '.dat' else @@ -449,11 +481,13 @@ contains call MPI_FILE_OPEN(MPI_COMM_SELF, file_loc, ior(MPI_MODE_WRONLY, MPI_MODE_CREATE), mpi_info_int, ifile, ierr) if (down_sample) then + ! Size of local arrays data_size = (m_ds + 3)*(n_ds + 3)*(p_ds + 3) m_glb_save = m_glb_ds + 3 n_glb_save = n_glb_ds + 3 p_glb_save = p_glb_ds + 3 else + ! Size of local arrays data_size = (m + 1)*(n + 1)*(p + 1) m_glb_save = m_glb + 1 n_glb_save = n_glb + 1 @@ -469,12 +503,14 @@ contains str_MOK = int(name_len, MPI_OFFSET_KIND) NVARS_MOK = int(sys_size, MPI_OFFSET_KIND) + ! Write the data for each variable if (bubbles_euler) then do i = 1, sys_size var_MOK = int(i, MPI_OFFSET_KIND) call MPI_FILE_WRITE_ALL(ifile, MPI_IO_DATA%var(i)%sf, data_size*mpi_io_type, mpi_io_p, status, ierr) end do + ! Additional variables pb and mv for non-polytropic qbmm if (qbmm .and. .not. polytropic) then do i = sys_size + 1, sys_size + 2*nb*nnode var_MOK = int(i, MPI_OFFSET_KIND) @@ -502,6 +538,7 @@ contains else call s_initialize_mpi_data(q_cons_vf) + ! Open the file to write all flow variables if (cfl_dt) then write (file_loc, '(I0,A)') n_start, '.dat' else @@ -514,6 +551,7 @@ contains end if call MPI_FILE_OPEN(MPI_COMM_WORLD, file_loc, ior(MPI_MODE_WRONLY, MPI_MODE_CREATE), mpi_info_int, ifile, ierr) + ! Size of local arrays data_size = (m + 1)*(n + 1)*(p + 1) ! Resize some integers so MPI can write even the biggest files @@ -525,19 +563,23 @@ contains str_MOK = int(name_len, MPI_OFFSET_KIND) NVARS_MOK = int(sys_size, MPI_OFFSET_KIND) + ! Write the data for each variable if (bubbles_euler) then do i = 1, sys_size var_MOK = int(i, MPI_OFFSET_KIND) + ! Initial displacement to skip at beginning of file disp = m_MOK*max(MOK, n_MOK)*max(MOK, p_MOK)*WP_MOK*(var_MOK - 1) call MPI_FILE_SET_VIEW(ifile, disp, mpi_io_p, MPI_IO_DATA%view(i), 'native', mpi_info_int, ierr) call MPI_FILE_WRITE_ALL(ifile, MPI_IO_DATA%var(i)%sf, data_size*mpi_io_type, mpi_io_p, status, ierr) end do + ! Additional variables pb and mv for non-polytropic qbmm if (qbmm .and. .not. polytropic) then do i = sys_size + 1, sys_size + 2*nb*nnode var_MOK = int(i, MPI_OFFSET_KIND) + ! Initial displacement to skip at beginning of file disp = m_MOK*max(MOK, n_MOK)*max(MOK, p_MOK)*WP_MOK*(var_MOK - 1) call MPI_FILE_SET_VIEW(ifile, disp, mpi_io_p, MPI_IO_DATA%view(i), 'native', mpi_info_int, ierr) @@ -546,8 +588,10 @@ contains end if else do i = 1, sys_size + ! do i = 1, adv_idx%end var_MOK = int(i, MPI_OFFSET_KIND) + ! Initial displacement to skip at beginning of file disp = m_MOK*max(MOK, n_MOK)*max(MOK, p_MOK)*WP_MOK*(var_MOK - 1) call MPI_FILE_SET_VIEW(ifile, disp, mpi_io_p, MPI_IO_DATA%view(i), 'native', mpi_info_int, ierr) @@ -572,17 +616,24 @@ contains !> Computation of parameters, allocation procedures, and/or any other tasks needed to properly setup the module impure subroutine s_initialize_data_output_module + ! Generic string used to store the address of a particular file character(LEN=len_trim(case_dir) + 2*name_len) :: file_loc character(len=15) :: temp character(LEN=1), dimension(3), parameter :: coord = (/'x', 'y', 'z'/) - logical :: dir_check - integer :: i - integer :: m_ds, n_ds, p_ds + + ! Generic logical used to check the existence of directories + logical :: dir_check + integer :: i + integer :: m_ds, n_ds, p_ds if (parallel_io .neqv. .true.) then + ! Setting the address of the time-step directory write (t_step_dir, '(A,I0,A)') '/p_all/p', proc_rank, '/0' t_step_dir = trim(case_dir) // trim(t_step_dir) + ! Checking the existence of the time-step directory, removing it, if it exists, and creating a new copy. Note that if + ! preexisting grid and/or initial condition data are to be read in from the very same location, then the above described + ! steps are not executed here but rather in the module m_start_up.f90. if (old_grid .neqv. .true.) then file_loc = trim(t_step_dir) // '/' diff --git a/src/pre_process/m_global_parameters.fpp b/src/pre_process/m_global_parameters.fpp index 077262aece..118add7996 100644 --- a/src/pre_process/m_global_parameters.fpp +++ b/src/pre_process/m_global_parameters.fpp @@ -41,14 +41,19 @@ module m_global_parameters integer :: num_vels !< Number of velocity components (different from num_dims for mhd) logical :: cyl_coord integer :: grid_geometry !< Cylindrical coordinates (either axisymmetric or full 3D) + !> Locations of cell-centers (cc) in x-, y- and z-directions, respectively real(wp), allocatable, dimension(:) :: x_cc, y_cc, z_cc + !> Locations of cell-boundaries (cb) in x-, y- and z-directions, respectively real(wp), allocatable, dimension(:) :: x_cb, y_cb, z_cb real(wp) :: dx, dy, dz !< Minimum cell-widths in the x-, y- and z-coordinate directions type(bounds_info) :: x_domain, y_domain, z_domain !< Locations of the domain bounds in the x-, y- and z-coordinate directions logical :: stretch_x, stretch_y, stretch_z !< Grid stretching flags for the x-, y- and z-coordinate directions - ! Grid stretching: a_x/a_y/a_z = rate, x_a/y_a/z_a = location + + ! Parameters of the grid stretching function for the x-, y- and z-coordinate directions. The "a" parameters are a measure of the + ! rate at which the grid is stretched while the remaining parameters are indicative of the location on the grid at which the + ! stretching begins. real(wp) :: a_x, a_y, a_z integer :: loops_x, loops_y, loops_z real(wp) :: x_a, y_a, z_a @@ -81,6 +86,7 @@ module m_global_parameters logical :: igr !< Use information geometric regularization integer :: igr_order !< IGR reconstruction order logical, parameter :: chemistry = .${chemistry}$. !< Chemistry modeling + ! Annotations of the structure, i.e. the organization, of the state vectors type(int_bounds_info) :: cont_idx !< Indexes of first & last continuity eqns. type(int_bounds_info) :: mom_idx !< Indexes of first & last momentum eqns. @@ -99,42 +105,67 @@ module m_global_parameters type(int_bounds_info) :: species_idx !< Indexes of first & last concentration eqns. integer :: damage_idx !< Index of damage state variable (D) for continuum damage model integer :: psi_idx !< Index of hyperbolic cleaning state variable for MHD + ! Cell Indices for the (local) interior points (O-m, O-n, 0-p). Stands for "InDices With BUFFer". type(int_bounds_info) :: idwint(1:3) - ! Cell indices (InDices With BUFFer): includes buffer except in pre_process - type(int_bounds_info) :: idwbuff(1:3) - type(int_bounds_info) :: bc_x, bc_y, bc_z !< Boundary conditions in the x-, y- and z-coordinate directions - integer :: shear_num !< Number of shear stress components - integer, dimension(3) :: shear_indices !< Indices of the stress components that represent shear stress - integer :: shear_BC_flip_num !< Number of shear stress components to reflect for boundary conditions - integer, dimension(3, 2) :: shear_BC_flip_indices !< Shear stress BC reflection indices (1:3, 1:shear_BC_flip_num) - logical :: parallel_io !< Format of the data files - logical :: file_per_process !< type of data output - integer :: precision !< Precision of output files - logical :: down_sample !< Down-sample the output data - logical :: mixlayer_vel_profile !< Set hyperbolic tangent streamwise velocity profile - real(wp) :: mixlayer_vel_coef !< Coefficient for the hyperbolic tangent streamwise velocity profile - logical :: mixlayer_perturb !< Superimpose instability waves to surrounding fluid flow - integer :: mixlayer_perturb_nk !< Number of Fourier modes for perturbation with mixlayer_perturb flag - real(wp) :: mixlayer_perturb_k0 !< Peak wavenumber for mixlayer perturbation (default: most unstable mode) + ! Cell Indices for the entire (local) domain. In simulation and post_process, this includes the buffer region. idwbuff and + ! idwint are the same otherwise. Stands for "InDices With BUFFer". + type(int_bounds_info) :: idwbuff(1:3) + + !> The order of the finite-difference (fd) approximations of the first-order derivatives that need to be evaluated when the CoM + !! or flow probe data files are to be written at each time step + integer :: fd_order + + !> The finite-difference number is given by MAX(1, fd_order/2). Essentially, it is a measure of the half-size of the + !! finite-difference stencil for the selected order of accuracy. + integer :: fd_number + + !> @name lagrangian subgrid bubble parameters + !> @{! + type(bubbles_lagrange_parameters) :: lag_params !< Lagrange bubbles' parameters + !> @} + + type(int_bounds_info) :: bc_x, bc_y, bc_z !< Boundary conditions in the x-, y- and z-coordinate directions + integer :: shear_num !< Number of shear stress components + integer, dimension(3) :: shear_indices !< Indices of the stress components that represent shear stress + integer :: shear_BC_flip_num !< Number of shear stress components to reflect for boundary conditions + !> Indices of shear stress components to reflect for boundary conditions. Size: (1:3, 1:shear_BC_flip_num) for (x/y/z, + !! [indices]) + integer, dimension(3, 2) :: shear_BC_flip_indices !< Shear stress BC reflection indices (1:3, 1:shear_BC_flip_num) + logical :: parallel_io !< Format of the data files + logical :: file_per_process !< type of data output + integer :: precision !< Precision of output files + logical :: down_sample !< Down-sample the output data + logical :: mixlayer_vel_profile !< Set hyperbolic tangent streamwise velocity profile + real(wp) :: mixlayer_vel_coef !< Coefficient for the hyperbolic tangent streamwise velocity profile + logical :: mixlayer_perturb !< Superimpose instability waves to surrounding fluid flow + integer :: mixlayer_perturb_nk !< Number of Fourier modes for perturbation with mixlayer_perturb flag + !> Peak wavenumber of prescribed energy spectra with mixlayer_perturb flag Default value (k0 = 0.4446) is most unstable mode + !! obtained from linear stability analysis See Michalke (1964, JFM) for details + real(wp) :: mixlayer_perturb_k0 !< Peak wavenumber for mixlayer perturbation (default: most unstable mode) logical :: simplex_perturb type(simplex_noise_params) :: simplex_params - real(wp) :: pi_fac !< Factor for artificial pi_inf + real(wp) :: pi_fac !< Factor for artificial pi_inf logical :: viscous logical :: bubbles_lagrange ! Perturb density of surrounding air so as to break symmetry of grid - logical :: perturb_flow - integer :: perturb_flow_fluid !< Fluid to be perturbed with perturb_flow flag - real(wp) :: perturb_flow_mag !< Magnitude of perturbation with perturb_flow flag - logical :: perturb_sph - integer :: perturb_sph_fluid !< Fluid to be perturbed with perturb_sph flag - real(wp), dimension(num_fluids_max) :: fluid_rho - logical :: elliptic_smoothing - integer :: elliptic_smoothing_iters - integer, allocatable, dimension(:) :: proc_coords !< Processor coordinates in MPI_CART_COMM - integer, allocatable, dimension(:) :: start_idx !< Starting cell-center index of local processor in global grid + logical :: perturb_flow + integer :: perturb_flow_fluid !< Fluid to be perturbed with perturb_flow flag + real(wp) :: perturb_flow_mag !< Magnitude of perturbation with perturb_flow flag + logical :: perturb_sph + integer :: perturb_sph_fluid !< Fluid to be perturbed with perturb_sph flag + real(wp), dimension(num_fluids_max) :: fluid_rho + logical :: elliptic_smoothing + integer :: elliptic_smoothing_iters + integer, allocatable, dimension(:) :: proc_coords !< Processor coordinates in MPI_CART_COMM + type(int_bounds_info), dimension(3) :: nidx + integer, allocatable, dimension(:,:,:) :: neighbor_ranks + !! Neighbor ranks + + integer, allocatable, dimension(:) :: start_idx !< Starting cell-center index of local processor in global grid + #ifdef MFC_MPI type(mpi_io_var), public :: MPI_IO_DATA character(LEN=name_len) :: mpiiofs @@ -142,14 +173,23 @@ module m_global_parameters #endif ! Initial Condition Parameters - integer :: num_patches !< Number of patches composing initial condition - type(ic_patch_parameters), dimension(num_patches_max) :: patch_icpp !< IC patch parameters (max: num_patches_max) - integer :: num_bc_patches !< Number of boundary condition patches - logical :: bc_io !< whether or not to save BC data - type(bc_patch_parameters), dimension(num_bc_patches_max) :: patch_bc !< Boundary condition patch parameters + integer :: num_patches !< Number of patches composing initial condition + + !> Database of the initial condition patch parameters (icpp) for each of the patches employed in the configuration of the + !! initial condition. Note that the maximum allowable number of patches, num_patches_max, may be changed in the module + !! m_derived_types.f90. + type(ic_patch_parameters), dimension(num_patches_max) :: patch_icpp !< IC patch parameters (max: num_patches_max) + integer :: num_bc_patches !< Number of boundary condition patches + logical :: bc_io !< whether or not to save BC data + !> Boundary condition patch parameters Database of the boundary condition patch parameters for each of the patches employed in + !! the configuration of the boundary conditions + type(bc_patch_parameters), dimension(num_bc_patches_max) :: patch_bc ! Fluids Physical Parameters + !> Database of the physical parameters of each of the fluids that is present in the flow. These include the stiffened gas + !! equation of state parameters, and the Reynolds numbers. type(physical_parameters), dimension(num_fluids_max) :: fluid_pp !< Stiffened gas EOS parameters and Reynolds numbers per fluid + ! Subgrid Bubble Parameters type(subgrid_bubble_physical_parameters) :: bub_pp real(wp) :: rhoref, pref !< Reference parameters for Tait EOS @@ -173,6 +213,9 @@ module m_global_parameters integer :: Np type(ib_patch_parameters), dimension(num_patches_max) :: patch_ib !< Immersed boundary patch parameters type(vec3_dt), allocatable, dimension(:) :: airfoil_grid_u, airfoil_grid_l + !! Database of the immersed boundary patch parameters for each of the patches employed in the configuration of the initial + !! condition. Note that the maximum allowable number of patches, num_patches_max, may be changed in the module + !! m_derived_types.f90. !> @} !> @name Non-polytropic bubble gas compression @@ -210,10 +253,19 @@ module m_global_parameters integer, allocatable, dimension(:,:,:) :: logic_grid type(pres_field) :: pb type(pres_field) :: mv - real(wp) :: Bx0 !< Constant magnetic field in the x-direction (1D) - integer :: buff_size !< Number of ghost cells for boundary condition storage - logical :: fft_wrt - logical :: dummy !< AMDFlang workaround for case-optimization + GPU-kernel bug + real(wp) :: Bx0 !< Constant magnetic field in the x-direction (1D) + + !> The number of cells that are necessary to be able to store enough boundary conditions data to march the solution in the + !! physical computational domain to the next time-step. + integer :: buff_size !< Number of ghost cells for boundary condition storage + logical :: fft_wrt + !> AMDFlang workaround: keep a dummy logical to avoid a compiler case-optimization bug when a parameter+GPU-kernel conditional + !! is false + logical :: dummy !< AMDFlang workaround for case-optimization + GPU-kernel bug + + ! Variables for hardcoded initial conditions that are read from input files + character(LEN=2*path_len) :: interface_file + real(wp) :: normFac, normMag, g0_ic, p0_ic contains @@ -222,6 +274,7 @@ contains impure subroutine s_assign_default_values_to_user_inputs integer :: i !< Generic loop operator + ! Logistics case_dir = '.' @@ -338,6 +391,25 @@ contains ! Initial condition parameters num_patches = dflt_int + fd_order = dflt_int + lag_params%cluster_type = dflt_int + lag_params%pressure_corrector = .false. + lag_params%smooth_type = dflt_int + lag_params%heatTransfer_model = .false. + lag_params%massTransfer_model = .false. + lag_params%write_bubbles = .false. + lag_params%write_bubbles_stats = .false. + lag_params%write_void_evol = .false. + lag_params%pressure_force = .false. + lag_params%gravity_force = .false. + lag_params%nBubs_glb = dflt_int + lag_params%vel_model = dflt_int + lag_params%drag_model = dflt_int + lag_params%epsilonb = 1._wp + lag_params%charwidth = dflt_real + lag_params%charNz = dflt_int + lag_params%valmaxvoid = dflt_real + do i = 1, num_patches_max patch_icpp(i)%geometry = dflt_int patch_icpp(i)%model_scale(:) = 1._wp @@ -820,8 +892,10 @@ contains chemxb = species_idx%beg chemxe = species_idx%end + if (bubbles_lagrange) fd_number = max(1, fd_order/2) + call s_configure_coordinate_bounds(recon_type, weno_polyn, muscl_polyn, igr_order, buff_size, idwint, idwbuff, viscous, & - & bubbles_lagrange, m, n, p, num_dims, igr, ib) + & bubbles_lagrange, m, n, p, num_dims, igr, ib, fd_number) #ifdef MFC_MPI if (qbmm .and. .not. polytropic) then @@ -870,7 +944,7 @@ contains end subroutine s_initialize_global_parameters_module - !> Configure MPI parallel I/O settings and allocate processor coordinate arrays. + !> @brief Configures MPI parallel I/O settings and allocates processor coordinate arrays. impure subroutine s_initialize_parallel_io #ifdef MFC_MPI @@ -904,7 +978,7 @@ contains end subroutine s_initialize_parallel_io - !> Deallocate all global grid, index, and equation-of-state parameter arrays. + !> @brief Deallocates all global grid, index, and equation-of-state parameter arrays. impure subroutine s_finalize_global_parameters_module integer :: i @@ -934,6 +1008,8 @@ contains end if #endif + if (allocated(neighbor_ranks)) deallocate (neighbor_ranks) + end subroutine s_finalize_global_parameters_module end module m_global_parameters diff --git a/src/pre_process/m_grid.f90 b/src/pre_process/m_grid.f90 index 77cb02cef2..34a6a59dc8 100644 --- a/src/pre_process/m_grid.f90 +++ b/src/pre_process/m_grid.f90 @@ -9,6 +9,7 @@ module m_grid use m_global_parameters ! Global parameters for the code use m_mpi_proxy ! Message passing interface (MPI) module proxy use m_helper_basic + #ifdef MFC_MPI use mpi ! Message passing interface (MPI) module #endif @@ -20,7 +21,7 @@ module m_grid abstract interface - !> Abstract interface for generating a rectilinear computational grid. + !> @brief Abstract interface for generating a rectilinear computational grid. impure subroutine s_generate_abstract_grid end subroutine s_generate_abstract_grid @@ -30,13 +31,16 @@ end subroutine s_generate_abstract_grid contains - !> Generate a uniform or stretched rectilinear grid in serial from user parameters. + !> The following subroutine generates either a uniform or non-uniform rectilinear grid in serial, defined by the parameters + !! inputted by the user. The grid information is stored in the grid variables containing coordinates of the cell- centers and + !! cell-boundaries. impure subroutine s_generate_serial_grid ! Generic loop iterator integer :: i, j !< generic loop operators real(wp) :: length !< domain lengths - ! Uniform grid: dx = (x_end - x_beg) / (m + 1) + + ! Grid Generation in the x-direction dx = (x_domain%end - x_domain%beg)/real(m + 1, wp) @@ -47,7 +51,6 @@ impure subroutine s_generate_serial_grid x_cb(m) = x_domain%end - ! Hyperbolic tangent grid stretching if (stretch_x) then length = abs(x_cb(m) - x_cb(-1)) x_cb = x_cb/length @@ -72,8 +75,8 @@ impure subroutine s_generate_serial_grid ! Grid Generation in the y-direction if (n == 0) return - ! Axisymmetric cylindrical grid (r, z): half-cell offset at r=0 axis if (grid_geometry == 2 .and. f_approx_equal(y_domain%beg, 0.0_wp)) then + ! IF (grid_geometry == 2) THEN dy = (y_domain%end - y_domain%beg)/real(2*n + 1, wp) y_cc(0) = y_domain%beg + 5.e-1_wp*dy @@ -94,7 +97,6 @@ impure subroutine s_generate_serial_grid y_cb(n) = y_domain%end - ! Hyperbolic tangent grid stretching in y-direction if (stretch_y) then length = abs(y_cb(n) - y_cb(-1)) y_cb = y_cb/length @@ -128,7 +130,6 @@ impure subroutine s_generate_serial_grid z_cb(p) = z_domain%end - ! Hyperbolic tangent grid stretching in z-direction if (stretch_z) then length = abs(z_cb(p) - z_cb(-1)) z_cb = z_cb/length @@ -152,11 +153,14 @@ impure subroutine s_generate_serial_grid end subroutine s_generate_serial_grid - !> Generate a uniform or stretched rectilinear grid in parallel from user parameters. + !> The following subroutine generates either a uniform or non-uniform rectilinear grid in parallel, defined by the parameters + !! inputted by the user. The grid information is stored in the grid variables containing coordinates of the cell- centers and + !! cell-boundaries. impure subroutine s_generate_parallel_grid #ifdef MFC_MPI real(wp) :: length !< domain lengths + ! Locations of cell boundaries real(wp), allocatable, dimension(:) :: x_cb_glb, y_cb_glb, z_cb_glb !< Locations of cell boundaries character(LEN=path_len + name_len) :: file_loc !< Generic string used to store the address of a file @@ -168,13 +172,12 @@ impure subroutine s_generate_parallel_grid allocate (y_cb_glb(-1:n_glb)) allocate (z_cb_glb(-1:p_glb)) - ! Uniform grid: dx = (x_end - x_beg) / (m_glb + 1) + ! Grid generation in the x-direction dx = (x_domain%end - x_domain%beg)/real(m_glb + 1, wp) do i = 0, m_glb x_cb_glb(i - 1) = x_domain%beg + dx*real(i, wp) end do x_cb_glb(m_glb) = x_domain%end - ! Hyperbolic tangent grid stretching in x-direction (parallel version) if (stretch_x) then length = abs(x_cb_glb(m_glb) - x_cb_glb(-1)) @@ -195,7 +198,6 @@ impure subroutine s_generate_parallel_grid ! Grid generation in the y-direction if (n_glb > 0) then - ! Axisymmetric cylindrical grid (r, z): half-cell offset at r=0 axis if (grid_geometry == 2 .and. f_approx_equal(y_domain%beg, 0.0_wp)) then dy = (y_domain%end - y_domain%beg)/real(2*n_glb + 1, wp) y_cb_glb(-1) = y_domain%beg diff --git a/src/pre_process/m_icpp_patches.fpp b/src/pre_process/m_icpp_patches.fpp index a565a1b0b3..e3a586b875 100644 --- a/src/pre_process/m_icpp_patches.fpp +++ b/src/pre_process/m_icpp_patches.fpp @@ -27,19 +27,31 @@ module m_icpp_patches private; public :: s_apply_icpp_patches - real(wp) :: x_centroid, y_centroid, z_centroid - real(wp) :: length_x, length_y, length_z - integer :: smooth_patch_id - real(wp) :: smooth_coeff !< Smoothing coefficient (mirrors ic_patch_parameters%smooth_coeff) - real(wp) :: eta !< Pseudo volume fraction for patch boundary smoothing - real(wp) :: cart_x, cart_y, cart_z - real(wp) :: sph_phi !< Spherical phi for Cartesian conversion in cylindrical coordinates - type(bounds_info) :: x_boundary, y_boundary, z_boundary !< Patch boundary locations in x, y, z - character(len=5) :: istr !< string to store int to string result for error checking + real(wp) :: x_centroid, y_centroid, z_centroid + real(wp) :: length_x, length_y, length_z + integer :: smooth_patch_id + !> These variables are analogous in both meaning and use to the similarly named components in the ic_patch_parameters type (see + !! m_derived_types.f90 for additional details). They are employed as a means to more concisely perform the actions necessary to + !! lay out a particular patch on the grid. + real(wp) :: smooth_coeff !< Smoothing coefficient (mirrors ic_patch_parameters%smooth_coeff) + + !> In the case that smoothing of patch boundaries is enabled and the boundary between two adjacent patches is to be smeared out, + !! this variable's purpose is to act as a pseudo volume fraction to indicate the contribution of each patch toward the + !! composition of a cell's fluid state. + real(wp) :: eta !< Pseudo volume fraction for patch boundary smoothing + real(wp) :: cart_x, cart_y, cart_z + !> Variables to be used to hold cell locations in Cartesian coordinates if 3D simulation is using cylindrical coordinates + real(wp) :: sph_phi !< Spherical phi for Cartesian conversion in cylindrical coordinates + + !> These variables combine the centroid and length parameters associated with a particular patch to yield the locations of the + !! patch boundaries in the x-, y- and z-coordinate directions. They are used as a means to concisely perform the actions + !! necessary to lay out a particular patch on the grid. + type(bounds_info) :: x_boundary, y_boundary, z_boundary + character(len=5) :: istr !< string to store int to string result for error checking contains - !> Dispatch each initial condition patch to its geometry-specific initialization routine. + !> @brief Dispatches each initial condition patch to its geometry-specific initialization routine. impure subroutine s_apply_icpp_patches(patch_id_fp, q_prim_vf) type(scalar_field), dimension(1:sys_size), intent(inout) :: q_prim_vf @@ -52,7 +64,6 @@ contains integer :: i ! 3D Patch Geometries - if (p > 0) then do i = 1, num_patches if (proc_rank == 0) then @@ -155,6 +166,9 @@ contains !> The line segment patch is a 1D geometry that may be used, for example, in creating a Riemann problem. The geometry of the !! patch is well-defined when its centroid and length in the x-coordinate direction are provided. Note that the line segment !! patch DOES NOT allow for the smearing of its boundaries. + !! @param patch_id patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_line_segment(patch_id, patch_id_fp, q_prim_vf) integer, intent(in) :: patch_id @@ -171,7 +185,6 @@ contains ! Placeholders for the cell boundary values real(wp) :: pi_inf, gamma, lit_gamma - @:HardcodedDimensionsExtrusion() @:Hardcoded1DVariables() @@ -189,10 +202,13 @@ contains x_boundary%beg = x_centroid - 0.5_wp*length_x x_boundary%end = x_centroid + 0.5_wp*length_x - ! Set eta=1 (no smoothing for this patch type) + ! Since the line segment patch does not allow for its boundaries to be smoothed out, the pseudo volume fraction is set to 1 + ! to ensure that only the current patch contributes to the fluid state in the cells that this patch covers. eta = 1._wp - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the line segment covers a particular cell in the domain and verifying whether the current patch has the + ! permission to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to + ! this cell. do i = 0, m if (x_boundary%beg <= x_cc(i) .and. x_boundary%end >= x_cc(i) .and. patch_icpp(patch_id)%alter_patch(patch_id_fp(i, & & 0, 0))) then @@ -215,6 +231,9 @@ contains !> The spiral patch is a 2D geometry that may be used, The geometry of the patch is well-defined when its centroid and radius !! are provided. Note that the circular patch DOES allow for the smoothing of its boundary. + !! @param patch_id patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables impure subroutine s_icpp_spiral(patch_id, patch_id_fp, q_prim_vf) integer, intent(in) :: patch_id @@ -228,7 +247,6 @@ contains integer :: i, j, k !< Generic loop iterators real(wp) :: th, thickness, nturns, mya real(wp) :: spiral_x_min, spiral_x_max, spiral_y_min, spiral_y_max - @:HardcodedDimensionsExtrusion() @:Hardcoded2DVariables() @@ -280,6 +298,9 @@ contains !> The circular patch is a 2D geometry that may be used, for example, in creating a bubble or a droplet. The geometry of the !! patch is well-defined when its centroid and radius are provided. Note that the circular patch DOES allow for the smoothing of !! its boundary. + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_circle(patch_id, patch_id_fp, q_prim_vf) integer, intent(in) :: patch_id @@ -292,7 +313,6 @@ contains type(scalar_field), dimension(1:sys_size), intent(inout) :: q_prim_vf real(wp) :: radius integer :: i, j, k !< Generic loop iterators - @:HardcodedDimensionsExtrusion() @:Hardcoded2DVariables() @@ -304,15 +324,16 @@ contains smooth_patch_id = patch_icpp(patch_id)%smooth_patch_id smooth_coeff = patch_icpp(patch_id)%smooth_coeff - ! Initialize eta=1; modified if smoothing is enabled + ! Initializing the pseudo volume fraction value to 1. The value will be modified as the patch is laid out on the grid, but + ! only in the case that smoothing of the circular patch's boundary is enabled. eta = 1._wp - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the circle covers a particular cell in the domain and verifying whether the current patch has permission + ! to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to this cell. do j = 0, n do i = 0, m if (patch_icpp(patch_id)%smoothen) then - ! Smooth Heaviside via hyperbolic tangent; smooth_coeff controls interface sharpness eta = tanh(smooth_coeff/min(dx, & & dy)*(sqrt((x_cc(i) - x_centroid)**2 + (y_cc(j) - y_centroid)**2) - radius))*(-0.5_wp) + 0.5_wp end if @@ -333,6 +354,9 @@ contains end subroutine s_icpp_circle !> The varcircle patch is a 2D geometry that may be used . It generatres an annulus + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_varcircle(patch_id, patch_id_fp, q_prim_vf) ! Patch identifier @@ -348,7 +372,6 @@ contains ! Generic loop iterators integer :: i, j, k real(wp) :: radius, myr, thickness - @:HardcodedDimensionsExtrusion() @:Hardcoded2DVariables() @@ -360,10 +383,12 @@ contains smooth_coeff = patch_icpp(patch_id)%smooth_coeff thickness = patch_icpp(patch_id)%epsilon - ! Initialize eta=1; modified if smoothing is enabled + ! Initializing the pseudo volume fraction value to 1. The value will be modified as the patch is laid out on the grid, but + ! only in the case that smoothing of the circular patch's boundary is enabled. eta = 1._wp - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the circle covers a particular cell in the domain and verifying whether the current patch has permission + ! to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to this cell. do j = 0, n do i = 0, m myr = sqrt((x_cc(i) - x_centroid)**2 + (y_cc(j) - y_centroid)**2) @@ -389,7 +414,10 @@ contains end subroutine s_icpp_varcircle - !> Initialize a 3D variable-thickness circular annulus patch extruded along the z-axis. + !> @brief Initializes a 3D variable-thickness circular annulus patch extruded along the z-axis. + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_3dvarcircle(patch_id, patch_id_fp, q_prim_vf) ! Patch identifier @@ -405,7 +433,6 @@ contains ! Generic loop iterators integer :: i, j, k real(wp) :: radius, myr, thickness - @:HardcodedDimensionsExtrusion() @:Hardcoded3DVariables() @@ -419,12 +446,14 @@ contains smooth_coeff = patch_icpp(patch_id)%smooth_coeff thickness = patch_icpp(patch_id)%epsilon - ! Initialize eta=1; modified if smoothing is enabled + ! Initializing the pseudo volume fraction value to 1. The value will be modified as the patch is laid out on the grid, but + ! only in the case that smoothing of the circular patch's boundary is enabled. eta = 1._wp ! write for all z - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the circle covers a particular cell in the domain and verifying whether the current patch has permission + ! to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to this cell. do k = 0, p do j = 0, n do i = 0, m @@ -454,6 +483,9 @@ contains !> The elliptical patch is a 2D geometry. The geometry of the patch is well-defined when its centroid and radii are provided. !! Note that the elliptical patch DOES allow for the smoothing of its boundary + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_ellipse(patch_id, patch_id_fp, q_prim_vf) integer, intent(in) :: patch_id @@ -466,7 +498,6 @@ contains type(scalar_field), dimension(1:sys_size), intent(inout) :: q_prim_vf integer :: i, j, k !< Generic loop operators real(wp) :: a, b - @:HardcodedDimensionsExtrusion() @:Hardcoded2DVariables() @@ -478,10 +509,12 @@ contains smooth_patch_id = patch_icpp(patch_id)%smooth_patch_id smooth_coeff = patch_icpp(patch_id)%smooth_coeff - ! Initialize eta=1; modified if smoothing is enabled + ! Initializing the pseudo volume fraction value to 1. The value be modified as the patch is laid out on the grid, but only + ! in the case that smoothing of the elliptical patch's boundary is enabled. eta = 1._wp - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the ellipse covers a particular cell in the domain and verifying whether the current patch has permission + ! to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to this cell. do j = 0, n do i = 0, m if (patch_icpp(patch_id)%smoothen) then @@ -510,6 +543,9 @@ contains !> The ellipsoidal patch is a 3D geometry. The geometry of the patch is well-defined when its centroid and radii are provided. !! Note that the ellipsoidal patch DOES allow for the smoothing of its boundary + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_ellipsoid(patch_id, patch_id_fp, q_prim_vf) ! Patch identifier @@ -525,7 +561,6 @@ contains ! Generic loop iterators integer :: i, j, k real(wp) :: a, b, c - @:HardcodedDimensionsExtrusion() @:Hardcoded3DVariables() @@ -539,10 +574,13 @@ contains smooth_patch_id = patch_icpp(patch_id)%smooth_patch_id smooth_coeff = patch_icpp(patch_id)%smooth_coeff - ! Initialize eta=1; modified if smoothing is enabled + ! Initializing the pseudo volume fraction value to 1. The value be modified as the patch is laid out on the grid, but only + ! in the case that smoothing of the ellipsoidal patch's boundary is enabled. eta = 1._wp - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the ellipsoid covers a particular cell in the domain and verifying whether the current patch has + ! permission to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to + ! this cell. do k = 0, p do j = 0, n do i = 0, m @@ -583,6 +621,9 @@ contains !! region, in alignment with the axes of the Cartesian coordinate system. The geometry of such a patch is well- defined when its !! centroid and lengths in the x- and y- coordinate directions are provided. Please note that the rectangular patch DOES NOT !! allow for the smoothing of its boundaries. + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_rectangle(patch_id, patch_id_fp, q_prim_vf) integer, intent(in) :: patch_id @@ -595,7 +636,6 @@ contains type(scalar_field), dimension(1:sys_size), intent(inout) :: q_prim_vf integer :: i, j, k !< generic loop iterators real(wp) :: pi_inf, gamma, lit_gamma !< Equation of state parameters - @:HardcodedDimensionsExtrusion() @:Hardcoded2DVariables() @@ -615,10 +655,13 @@ contains y_boundary%beg = y_centroid - 0.5_wp*length_y y_boundary%end = y_centroid + 0.5_wp*length_y - ! Set eta=1 (no smoothing for this patch type) + ! Since the rectangular patch does not allow for its boundaries to be smoothed out, the pseudo volume fraction is set to 1 + ! to ensure that only the current patch contributes to the fluid state in the cells that this patch covers. eta = 1._wp - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the rectangle covers a particular cell in the domain and verifying whether the current patch has the + ! permission to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to + ! this cell. do j = 0, n do i = 0, m if (x_boundary%beg <= x_cc(i) .and. x_boundary%end >= x_cc(i) .and. y_boundary%beg <= y_cc(j) & @@ -653,6 +696,9 @@ contains !! region, at an angle with respect to the axes of the Cartesian coordinate system. The geometry of the patch is well-defined !! when its centroid and normal vector, aimed in the sweep direction, are provided. Note that the sweep line patch DOES allow !! the smoothing of its boundary. + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_sweep_line(patch_id, patch_id_fp, q_prim_vf) integer, intent(in) :: patch_id @@ -665,7 +711,6 @@ contains type(scalar_field), dimension(1:sys_size), intent(inout) :: q_prim_vf integer :: i, j, k !< Generic loop operators real(wp) :: a, b, c - @:HardcodedDimensionsExtrusion() @:Hardcoded3DVariables() @@ -680,10 +725,13 @@ contains b = patch_icpp(patch_id)%normal(2) c = -a*x_centroid - b*y_centroid - ! Initialize eta=1; modified if smoothing is enabled + ! Initializing the pseudo volume fraction value to 1. The value will be modified as the patch is laid out on the grid, but + ! only in the case that smoothing of the sweep line patch's boundary is enabled. eta = 1._wp - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the region swept by the line covers a particular cell in the domain and verifying whether the current + ! patch has the permission to write to that cell. If both queries check out, the primitive variables of the current patch + ! are written to this cell. do j = 0, n do i = 0, m if (patch_icpp(patch_id)%smoothen) then @@ -710,6 +758,9 @@ contains !> The Taylor Green vortex is 2D decaying vortex that may be used, for example, to verify the effects of viscous attenuation. !! Geometry of the patch is well-defined when its centroid are provided. + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_2D_TaylorGreen_Vortex(patch_id, patch_id_fp, q_prim_vf) integer, intent(in) :: patch_id @@ -723,7 +774,6 @@ contains integer :: i, j, k !< generic loop iterators real(wp) :: pi_inf, gamma, lit_gamma !< equation of state parameters real(wp) :: L0, U0 !< Taylor Green Vortex parameters - @:HardcodedDimensionsExtrusion() @:Hardcoded2DVariables() @@ -743,13 +793,16 @@ contains y_boundary%beg = y_centroid - 0.5_wp*length_y y_boundary%end = y_centroid + 0.5_wp*length_y - ! Set eta=1 (no smoothing for this patch type) + ! Since the patch doesn't allow for its boundaries to be smoothed out, the pseudo volume fraction is set to 1 to ensure that + ! only the current patch contributes to the fluid state in the cells that this patch covers. eta = 1._wp ! U0 is the characteristic velocity of the vortex U0 = patch_icpp(patch_id)%vel(1) ! L0 is the characteristic length of the vortex L0 = patch_icpp(patch_id)%vel(2) - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the patch covers a particular cell in the domain and verifying whether the current patch has the + ! permission to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to + ! this cell. do j = 0, n do i = 0, m if (x_boundary%beg <= x_cc(i) .and. x_boundary%end >= x_cc(i) .and. y_boundary%beg <= y_cc(j) & @@ -777,7 +830,10 @@ contains end subroutine s_icpp_2D_TaylorGreen_Vortex - !> Initialize a 1D bubble-pulse patch with analytical primitive variable profiles. + !> @brief Initializes a 1D bubble-pulse patch with analytical primitive variable profiles. + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_1d_bubble_pulse(patch_id, patch_id_fp, q_prim_vf) ! Description: This patch assigns the primitive variables as analytical functions such that the code can be verified. @@ -796,7 +852,6 @@ contains integer :: i, j, k ! Placeholders for the cell boundary values real(wp) :: pi_inf, gamma, lit_gamma - @:HardcodedDimensionsExtrusion() @:Hardcoded1DVariables() @@ -812,10 +867,13 @@ contains x_boundary%beg = x_centroid - 0.5_wp*length_x x_boundary%end = x_centroid + 0.5_wp*length_x - ! Set eta=1 (no smoothing for this patch type) + ! Since the patch doesn't allow for its boundaries to be smoothed out, the pseudo volume fraction is set to 1 to ensure that + ! only the current patch contributes to the fluid state in the cells that this patch covers. eta = 1._wp - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the line segment covers a particular cell in the domain and verifying whether the current patch has the + ! permission to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to + ! this cell. do i = 0, m if (x_boundary%beg <= x_cc(i) .and. x_boundary%end >= x_cc(i) .and. patch_icpp(patch_id)%alter_patch(patch_id_fp(i, & & 0, 0))) then @@ -954,6 +1012,9 @@ contains !> The spherical patch is a 3D geometry that may be used, for example, in creating a bubble or a droplet. The patch geometry is !! well-defined when its centroid and radius are provided. Please note that the spherical patch DOES allow for the smoothing of !! its boundary. + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_sphere(patch_id, patch_id_fp, q_prim_vf) integer, intent(in) :: patch_id @@ -968,11 +1029,11 @@ contains ! Generic loop iterators integer :: i, j, k real(wp) :: radius - @:HardcodedDimensionsExtrusion() @:Hardcoded3DVariables() - ! Variables to initialize the pressure field that corresponds to the bubble-collapse test case found in Tiwari et al. (2013) + !! Variables to initialize the pressure field that corresponds to the bubble-collapse test case found in Tiwari et al. + !! (2013) ! Transferring spherical patch's radius, centroid, smoothing patch identity and smoothing coefficient information x_centroid = patch_icpp(patch_id)%x_centroid @@ -982,10 +1043,12 @@ contains smooth_patch_id = patch_icpp(patch_id)%smooth_patch_id smooth_coeff = patch_icpp(patch_id)%smooth_coeff - ! Initialize eta=1; modified if smoothing is enabled + ! Initializing the pseudo volume fraction value to 1. The value will be modified as the patch is laid out on the grid, but + ! only in the case that smoothing of the spherical patch's boundary is enabled. eta = 1._wp - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the sphere covers a particular cell in the domain and verifying whether the current patch has permission + ! to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to this cell. do k = 0, p do j = 0, n do i = 0, m @@ -1023,6 +1086,9 @@ contains !! which is aligned with the axes of the Cartesian coordinate system. The geometry of such a patch is well- defined when its !! centroid and lengths in the x-, y- and z-coordinate directions are provided. Please notice that the cuboidal patch DOES NOT !! allow for the smearing of its boundaries. + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_cuboid(patch_id, patch_id_fp, q_prim_vf) integer, intent(in) :: patch_id @@ -1034,7 +1100,6 @@ contains #endif type(scalar_field), dimension(1:sys_size), intent(inout) :: q_prim_vf integer :: i, j, k !< Generic loop iterators - @:HardcodedDimensionsExtrusion() @:Hardcoded3DVariables() @@ -1054,10 +1119,13 @@ contains z_boundary%beg = z_centroid - 0.5_wp*length_z z_boundary%end = z_centroid + 0.5_wp*length_z - ! Set eta=1 (no smoothing for this patch type) + ! Since the cuboidal patch does not allow for its boundaries to get smoothed out, the pseudo volume fraction is set to 1 to + ! make sure that only the current patch contributes to the fluid state in the cells that this patch covers. eta = 1._wp - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the cuboid covers a particular cell in the domain and verifying whether the current patch has permission + ! to write to to that cell. If both queries check out, the primitive variables of the current patch are assigned to this + ! cell. do k = 0, p do j = 0, n do i = 0, m @@ -1093,6 +1161,9 @@ contains !! like a blood vessel. The geometry of this patch is well-defined when the centroid, the radius and the length along the !! cylinder's axis, parallel to the x-, y- or z-coordinate direction, are provided. Please note that the cylindrical patch DOES !! allow for the smoothing of its lateral boundary. + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Array of primitive variables subroutine s_icpp_cylinder(patch_id, patch_id_fp, q_prim_vf) integer, intent(in) :: patch_id @@ -1105,7 +1176,6 @@ contains type(scalar_field), dimension(1:sys_size), intent(inout) :: q_prim_vf integer :: i, j, k !< Generic loop iterators real(wp) :: radius - @:HardcodedDimensionsExtrusion() @:Hardcoded3DVariables() @@ -1129,10 +1199,13 @@ contains z_boundary%beg = z_centroid - 0.5_wp*length_z z_boundary%end = z_centroid + 0.5_wp*length_z - ! Initialize eta=1; modified if smoothing is enabled + ! Initializing the pseudo volume fraction value to 1. The value will be modified as the patch is laid out on the grid, but + ! only in the case that smearing of the cylindrical patch's boundary is enabled. eta = 1._wp - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the cylinder covers a particular cell in the domain and verifying whether the current patch has the + ! permission to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to + ! this cell. do k = 0, p do j = 0, n do i = 0, m @@ -1188,6 +1261,9 @@ contains !! region, at an angle with respect to the axes of the Cartesian coordinate system. The geometry of the patch is well-defined !! when its centroid and normal vector, aimed in the sweep direction, are provided. Note that the sweep plane patch DOES allow !! the smoothing of its boundary. + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Primitive variables subroutine s_icpp_sweep_plane(patch_id, patch_id_fp, q_prim_vf) integer, intent(in) :: patch_id @@ -1200,7 +1276,6 @@ contains type(scalar_field), dimension(1:sys_size), intent(inout) :: q_prim_vf integer :: i, j, k !< Generic loop iterators real(wp) :: a, b, c, d - @:HardcodedDimensionsExtrusion() @:Hardcoded3DVariables() @@ -1217,10 +1292,13 @@ contains c = patch_icpp(patch_id)%normal(3) d = -a*x_centroid - b*y_centroid - c*z_centroid - ! Initialize eta=1; modified if smoothing is enabled + ! Initializing the pseudo volume fraction value to 1. The value will be modified as the patch is laid out on the grid, but + ! only in the case that smearing of the sweep plane patch's boundary is enabled. eta = 1._wp - ! Assign patch vars if cell is covered and patch has write permission + ! Checking whether the region swept by the plane covers a particular cell in the domain and verifying whether the current + ! patch has the permission to write to that cell. If both queries check out, the primitive variables of the current patch + ! are written to this cell. do k = 0, p do j = 0, n do i = 0, m @@ -1256,6 +1334,9 @@ contains end subroutine s_icpp_sweep_plane !> The STL patch is a 2/3D geometry that is imported from an STL file. + !! @param patch_id is the patch identifier + !! @param patch_id_fp Array to track patch ids + !! @param q_prim_vf Primitive variables subroutine s_icpp_model(patch_id, patch_id_fp, q_prim_vf) integer, intent(in) :: patch_id @@ -1328,6 +1409,8 @@ contains write (*, "(A, 3(2X, F20.10))") " > Cen:", (bbox%min(1:3) + bbox%max(1:3))/2._wp write (*, "(A, 3(2X, F20.10))") " > Max:", bbox%max(1:3) + ! call s_model_write("__out__.stl", model) call s_model_write("__out__.obj", model) + grid_mm(1,:) = (/minval(x_cc) - 0.e5_wp*dx, maxval(x_cc) + 0.e5_wp*dx/) grid_mm(2,:) = (/minval(y_cc) - 0.e5_wp*dy, maxval(y_cc) + 0.e5_wp*dy/) @@ -1381,7 +1464,7 @@ contains end subroutine s_icpp_model - !> Convert cylindrical (r, theta) coordinates to Cartesian (y, z) module variables. + !> @brief Converts cylindrical (r, theta) coordinates to Cartesian (y, z) module variables. subroutine s_convert_cylindrical_to_cartesian_coord(cyl_y, cyl_z) $:GPU_ROUTINE(parallelism='[seq]') @@ -1393,7 +1476,7 @@ contains end subroutine s_convert_cylindrical_to_cartesian_coord - !> Return a 3D Cartesian coordinate vector from a cylindrical (x, r, theta) input vector. + !> @brief Returns a 3D Cartesian coordinate vector from a cylindrical (x, r, theta) input vector. function f_convert_cyl_to_cart(cyl) result(cart) $:GPU_ROUTINE(parallelism='[seq]') @@ -1405,7 +1488,7 @@ contains end function f_convert_cyl_to_cart - !> Compute the spherical azimuthal angle from cylindrical (x, r) coordinates. + !> @brief Computes the spherical azimuthal angle from cylindrical (x, r) coordinates. subroutine s_convert_cylindrical_to_spherical_coord(cyl_x, cyl_y) $:GPU_ROUTINE(parallelism='[seq]') @@ -1417,6 +1500,9 @@ contains end subroutine s_convert_cylindrical_to_spherical_coord !> Archimedes spiral function + !! @param myth Angle + !! @param offset Thickness + !! @param a Starting position elemental function f_r(myth, offset, a) $:GPU_ROUTINE(parallelism='[seq]') diff --git a/src/pre_process/m_initial_condition.fpp b/src/pre_process/m_initial_condition.fpp index 0b5a6ba40a..6692d613d7 100644 --- a/src/pre_process/m_initial_condition.fpp +++ b/src/pre_process/m_initial_condition.fpp @@ -10,6 +10,8 @@ module m_initial_condition use m_mpi_proxy use m_helper use m_variables_conversion + ! one form to another + use m_icpp_patches use m_assign_variables use m_perturbation @@ -18,11 +20,14 @@ module m_initial_condition implicit none - ! NOTE: Abstract interface enables dynamic dispatch without repeated model_eqns checks + ! NOTE: The abstract interface allows for the declaration of a pointer to a procedure such that the choice of the model + ! equations does not have to be queried every time the patch primitive variables are to be assigned in a cell in the + ! computational domain. type(scalar_field), allocatable, dimension(:) :: q_prim_vf !< primitive variables type(scalar_field), allocatable, dimension(:) :: q_cons_vf !< conservative variables type(scalar_field) :: q_T_sf !< Temperature field type(integer_field), dimension(:,:), allocatable :: bc_type !< bc_type fields + !> @cond #ifdef MFC_MIXED_PRECISION integer(kind=1), allocatable, dimension(:,:,:) :: patch_id_fp @@ -40,6 +45,8 @@ contains integer :: i, j, k, l + ! Allocating the primitive and conservative variables + allocate (q_prim_vf(1:sys_size)) allocate (q_cons_vf(1:sys_size)) @@ -52,18 +59,24 @@ contains allocate (q_T_sf%sf(0:m,0:n,0:p)) end if + ! Allocating the patch identities bookkeeping variable allocate (patch_id_fp(0:m,0:n,0:p)) if (qbmm .and. .not. polytropic) then + ! Allocate bubble pressure pb and vapor mass mv for non-polytropic qbmm at all quad nodes and R0 bins allocate (pb%sf(0:m,0:n,0:p,1:nnode,1:nb)) allocate (mv%sf(0:m,0:n,0:p,1:nnode,1:nb)) end if + ! Setting default values for conservative and primitive variables so that in the case that the initial condition is wrongly + ! laid out on the grid the simulation component will catch the problem on start- up. The conservative variables do not need + ! to be similarly treated since they are computed directly from the primitive variables. do i = 1, sys_size q_cons_vf(i)%sf = -1.e-6_stp ! real(dflt_real, kind=stp) ! TODO :: remove this magic number q_prim_vf(i)%sf = -1.e-6_stp ! real(dflt_real, kind=stp) end do + ! Allocating arrays to store the bc types allocate (bc_type(1:num_dims,1:2)) allocate (bc_type(1, 1)%sf(0:0,0:n,0:p)) @@ -119,13 +132,16 @@ contains end subroutine s_initialize_initial_condition_module - !> Iterate over patches and, depending on the geometry type, call the related subroutine to setup the said geometry on the grid - !! using the primitive variables included with the patch parameters. The subroutine is complete once the primitive variables are - !! converted to conservative ones. + !> This subroutine peruses the patches and depending on the type of geometry associated with a particular patch, it calls the + !! related subroutine to setup the said geometry on the grid using the primitive variables included with the patch parameters. + !! The subroutine is complete once the primitive variables are converted to conservative ones. impure subroutine s_generate_initial_condition integer :: i + ! Converting the conservative variables to the primitive ones given preexisting initial condition data files were read in on + ! start-up + if (old_ic) then call s_convert_conservative_to_primitive_variables(q_cons_vf, q_T_sf, q_prim_vf, idwbuff) end if @@ -140,11 +156,13 @@ contains if (simplex_perturb) call s_perturb_simplex(q_prim_vf) if (elliptic_smoothing) call s_elliptic_smoothing(q_prim_vf, bc_type) + ! Converting the primitive variables to the conservative ones call s_convert_primitive_to_conservative_variables(q_prim_vf, q_cons_vf) if (chemistry) call s_compute_T_from_primitives(q_T_sf, q_prim_vf, idwint) if (qbmm .and. .not. polytropic) then + ! Initialize pb and mv call s_initialize_mv(q_cons_vf, mv%sf) call s_initialize_pb(q_cons_vf, mv%sf, pb%sf) end if @@ -156,6 +174,8 @@ contains integer :: i + ! Dellocating the primitive and conservative variables + do i = 1, sys_size deallocate (q_prim_vf(i)%sf) deallocate (q_cons_vf(i)%sf) @@ -168,6 +188,7 @@ contains deallocate (q_T_sf%sf) end if + ! Deallocating the patch identities bookkeeping variable deallocate (patch_id_fp) deallocate (bc_type(1, 1)%sf) diff --git a/src/pre_process/m_mpi_proxy.fpp b/src/pre_process/m_mpi_proxy.fpp index e9545ce865..6bf646f858 100644 --- a/src/pre_process/m_mpi_proxy.fpp +++ b/src/pre_process/m_mpi_proxy.fpp @@ -22,9 +22,12 @@ contains impure subroutine s_mpi_bcast_user_inputs #ifdef MFC_MPI + ! Generic loop iterator integer :: i, j + ! Generic flag used to identify and report MPI errors integer :: ierr + ! Logistics call MPI_BCAST(case_dir, len(case_dir), MPI_CHARACTER, 0, MPI_COMM_WORLD, ierr) #:for VAR in ['t_step_old', 't_step_start', 'm', 'n', 'p', 'm_glb', 'n_glb', 'p_glb', & @@ -33,7 +36,7 @@ contains & 'perturb_sph_fluid', 'num_patches', 'thermal', 'nb', 'dist_type',& & 'relax_model', 'num_ibs', 'n_start', 'elliptic_smoothing_iters', & & 'num_bc_patches', 'mixlayer_perturb_nk', 'recon_type', & - & 'muscl_order', 'igr_order' ] + & 'muscl_order', 'igr_order', 'fd_order'] call MPI_BCAST(${VAR}$, 1, MPI_INTEGER, 0, MPI_COMM_WORLD, ierr) #:endfor @@ -133,6 +136,13 @@ contains #:endfor end do + ! Variables from input files for hardcoded patches + call MPI_BCAST(interface_file, len(interface_file), MPI_CHARACTER, 0, MPI_COMM_WORLD, ierr) + call MPI_BCAST(normFac, 1, mpi_p, 0, MPI_COMM_WORLD, ierr) + call MPI_BCAST(normMag, 1, mpi_p, 0, MPI_COMM_WORLD, ierr) + call MPI_BCAST(g0_ic, 1, mpi_p, 0, MPI_COMM_WORLD, ierr) + call MPI_BCAST(p0_ic, 1, mpi_p, 0, MPI_COMM_WORLD, ierr) + ! Simplex noise and fluid physical parameters do i = 1, num_fluids_max #:for VAR in [ 'gamma','pi_inf', 'G', 'cv', 'qv', 'qvp' ] diff --git a/src/pre_process/m_perturbation.fpp b/src/pre_process/m_perturbation.fpp index f3096068c1..9f98ddba4c 100644 --- a/src/pre_process/m_perturbation.fpp +++ b/src/pre_process/m_perturbation.fpp @@ -19,7 +19,7 @@ module m_perturbation contains - !> Allocate the temporary primitive variable array used by elliptic smoothing. + !> @brief Allocates the temporary primitive variable array used by elliptic smoothing. impure subroutine s_initialize_perturbation_module() if (elliptic_smoothing) then @@ -28,7 +28,7 @@ contains end subroutine s_initialize_perturbation_module - !> Randomly perturb partial density fields at the interface of a spherical volume fraction region. + !> @brief Randomly perturbs partial density fields at the interface of a spherical volume fraction region. impure subroutine s_perturb_sphere(q_prim_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_prim_vf @@ -45,9 +45,10 @@ contains perturb_alpha = q_prim_vf(E_idx + perturb_sph_fluid)%sf(i, j, k) - ! Perturb partial density fields to match perturbed volume fraction fields when the volume fraction is not near - ! 0 or 1 + ! Perturb partial density fields to match perturbed volume fraction fields IF ((perturb_alpha >= 25e-2_wp) .AND. + ! (perturb_alpha <= 75e-2_wp)) THEN if ((.not. f_approx_equal(perturb_alpha, 0._wp)) .and. (.not. f_approx_equal(perturb_alpha, 1._wp))) then + ! Derive new partial densities do l = 1, num_fluids q_prim_vf(l)%sf(i, j, k) = q_prim_vf(E_idx + l)%sf(i, j, k)*fluid_rho(l) end do @@ -58,7 +59,7 @@ contains end subroutine s_perturb_sphere - !> Add random noise to the velocity and void fraction of the surrounding flow field. + !> @brief Adds random noise to the velocity and void fraction of the surrounding flow field. impure subroutine s_perturb_surrounding_flow(q_prim_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_prim_vf @@ -68,6 +69,7 @@ contains call random_seed() + ! Perturb partial density or velocity of surrounding flow by some random small amount of noise do k = 0, p do j = 0, n do i = 0, m @@ -85,7 +87,7 @@ contains end subroutine s_perturb_surrounding_flow - !> Iteratively smooth all primitive variable fields using a discrete elliptic (Laplacian) filter. + !> @brief Iteratively smooths all primitive variable fields using a discrete elliptic (Laplacian) filter. impure subroutine s_elliptic_smoothing(q_prim_vf, bc_type) type(scalar_field), dimension(sys_size), intent(inout) :: q_prim_vf @@ -143,7 +145,7 @@ contains end subroutine s_elliptic_smoothing - !> Perturb velocity and volume fraction fields using multi-octave simplex noise. + !> @brief Perturbs velocity and volume fraction fields using multi-octave simplex noise. subroutine s_perturb_simplex(q_prim_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_prim_vf @@ -229,8 +231,9 @@ contains end subroutine s_perturb_simplex - !> Compute velocity perturbations for a temporal mixing layer with a hyperbolic tangent mean streamwise velocity profile, using - !! an inverted version of the spectrum-based synthetic turbulence generation method proposed by Guo et al. (2023, JFM). + !> This subroutine computes velocity perturbations for a temporal mixing layer with a hyperbolic tangent mean streamwise + !! velocity profile, using an inverted version of the spectrum-based synthetic turbulence generation method proposed by Guo et + !! al. (2023, JFM). subroutine s_perturb_mixlayer(q_prim_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_prim_vf @@ -240,6 +243,8 @@ contains real(wp) :: dk, alpha, Eksum, q, uu0, phi integer :: i, j, l, r, ierr + ! Initialize parameters + dk = 1._wp/mixlayer_perturb_nk ! Compute prescribed energy spectra @@ -307,7 +312,7 @@ contains end subroutine s_perturb_mixlayer - !> Generate deterministic pseudo-random wave vector, polarization, and phase for a perturbation mode. + !> @brief Generates deterministic pseudo-random wave vector, polarization, and phase for a perturbation mode. subroutine s_generate_random_perturbation(khat, xi, phi, ik, yloc) integer, intent(in) :: ik @@ -333,7 +338,7 @@ contains end subroutine s_generate_random_perturbation - !> Generate a unit vector uniformly distributed on the sphere from two random parameters. + !> @brief Generates a unit vector uniformly distributed on the sphere from two random parameters. function f_unit_vector(theta, eta) result(vec) real(wp), intent(in) :: theta, eta @@ -348,7 +353,7 @@ contains end function f_unit_vector - !> Generate a pseudo-random number between 0 and 1 using a linear congruential generator. + !> This function generates a pseudo-random number between 0 and 1 based on linear congruential generator. subroutine s_prng(var, seed) integer, intent(inout) :: seed @@ -360,7 +365,7 @@ contains end subroutine s_prng - !> Compute a modular multiplication step for the linear congruential pseudo-random number generator. + !> @brief Computes a modular multiplication step for the linear congruential pseudo-random number generator. function modmul(a) result(val) integer, intent(in) :: a @@ -373,7 +378,7 @@ contains end function modmul - !> Deallocate the temporary primitive variable array used by elliptic smoothing. + !> @brief Deallocates the temporary primitive variable array used by elliptic smoothing. impure subroutine s_finalize_perturbation_module() if (elliptic_smoothing) then diff --git a/src/pre_process/m_simplex_noise.fpp b/src/pre_process/m_simplex_noise.fpp index fb5ebcf226..487b4f5022 100644 --- a/src/pre_process/m_simplex_noise.fpp +++ b/src/pre_process/m_simplex_noise.fpp @@ -47,7 +47,7 @@ module m_simplex_noise contains - !> Evaluate 3D simplex noise at the given coordinates and return a value in [-1, 1]. + !> @brief Evaluates 3D simplex noise at the given coordinates and returns a value in [-1, 1]. function f_simplex3d(xin, yin, zin) result(n) real(wp), intent(in) :: xin, yin, zin @@ -148,7 +148,7 @@ contains end function f_simplex3d - !> Evaluate 2D simplex noise at the given coordinates and return a value in [-1, 1]. + !> @brief Evaluates 2D simplex noise at the given coordinates and returns a value in [-1, 1]. function f_simplex2d(xin, yin) result(n) real(wp), intent(in) :: xin, yin @@ -215,7 +215,7 @@ contains end function f_simplex2d - !> Compute the dot product of a 2D gradient vector with the given offset coordinates. + !> @brief Computes the dot product of a 2D gradient vector with the given offset coordinates. function dot2(g, x, y) result(dot) integer, intent(in) :: g diff --git a/src/pre_process/m_start_up.fpp b/src/pre_process/m_start_up.fpp index a3a7c51270..ae9829f2c2 100644 --- a/src/pre_process/m_start_up.fpp +++ b/src/pre_process/m_start_up.fpp @@ -43,12 +43,13 @@ module m_start_up abstract interface - !> Abstract interface for reading grid data files in serial or parallel. + !> @brief Abstract interface for reading grid data files in serial or parallel. impure subroutine s_read_abstract_grid_data_files end subroutine s_read_abstract_grid_data_files - !> Abstract interface for reading initial condition data files in serial or parallel. + !> @brief Abstract interface for reading initial condition data files in serial or parallel. + !! @param q_cons_vf Conservative variables impure subroutine s_read_abstract_ic_data_files(q_cons_vf_in) import :: scalar_field, integer_field, sys_size, pres_field @@ -59,7 +60,11 @@ module m_start_up end interface character(LEN=path_len + name_len) :: proc_rank_dir !< Location of the folder associated with the rank of the local processor + + !> Possible location of time-step folder containing preexisting grid and/or conservative variables data to be used as starting + !! point for pre-process character(LEN=path_len + 2*name_len), private :: t_step_dir !< Path to preexisting time-step folder for restart + procedure(s_read_abstract_grid_data_files), pointer :: s_read_grid_data_files => null() procedure(s_read_abstract_ic_data_files), pointer :: s_read_ic_data_files => null() @@ -70,9 +75,15 @@ contains impure subroutine s_read_input_file character(LEN=name_len) :: file_loc - logical :: file_check - integer :: iostatus - character(len=1000) :: line + + !> Generic logical used for the purpose of asserting whether a file is or is not present in the designated location + logical :: file_check + integer :: iostatus + !! Integer to check iostat of file read + + character(len=1000) :: line + + ! Namelist for all of the parameters to be inputted by the user namelist /user_inputs/ case_dir, old_grid, old_ic, t_step_old, t_step_start, m, n, p, x_domain, y_domain, z_domain, & & stretch_x, stretch_y, stretch_z, a_x, a_y, a_z, x_a, y_a, z_a, x_b, y_b, z_b, model_eqns, num_fluids, mpp_lim, & @@ -84,11 +95,14 @@ contains & ptgalpha_eps, ib, num_ibs, patch_ib, sigma, adv_n, cfl_adap_dt, cfl_const_dt, n_start, n_start_old, & & surface_tension, hyperelasticity, pre_stress, elliptic_smoothing, elliptic_smoothing_iters, viscous, & & bubbles_lagrange, num_bc_patches, patch_bc, Bx0, relativity, cont_damage, igr, igr_order, down_sample, recon_type, & - & muscl_order, hyper_cleaning, simplex_perturb, simplex_params, fft_wrt + & muscl_order, fft_wrt, fd_order, lag_params, simplex_perturb, simplex_params, interface_file, normFac, normMag, & + & g0_ic, p0_ic, hyper_cleaning + ! Inquiring the status of the pre_process.inp file file_loc = 'pre_process.inp' inquire (FILE=trim(file_loc), EXIST=file_check) + ! Checking whether the input file is there. If it is, the input file is read. If not, the program is terminated. if (file_check) then open (1, FILE=trim(file_loc), form='formatted', STATUS='old', ACTION='read') read (1, NML=user_inputs, iostat=iostatus) @@ -102,6 +116,7 @@ contains call s_update_cell_bounds(cells_bounds, m, n, p) + ! Store m,n,p into global m,n,p m_glb = m n_glb = n p_glb = p @@ -126,6 +141,8 @@ contains character(LEN=len_trim(case_dir)) :: file_loc logical :: dir_check + ! Checking the existence of the case folder + case_dir = adjustl(case_dir) file_loc = trim(case_dir) // '/.' @@ -141,6 +158,7 @@ contains call s_check_inputs_common() call s_check_inputs() + ! Check all the patch properties call s_check_patches() if (ib) call s_check_ib_patches() @@ -151,9 +169,16 @@ contains !! necessary global computational domain parameters. impure subroutine s_read_serial_grid_data_files + ! Generic string used to store the address of a particular file character(LEN=len_trim(case_dir) + 3*name_len) :: file_loc - logical :: dir_check - logical :: file_check + + ! Logical variable used to test the existence of folders + logical :: dir_check + + ! Generic logical used for the purpose of asserting whether a file is or is not present in the designated location + logical :: file_check + + ! Setting address of the local processor rank and time-step directory write (proc_rank_dir, '(A,I0)') '/p_all/p', proc_rank proc_rank_dir = trim(case_dir) // trim(proc_rank_dir) @@ -161,16 +186,22 @@ contains write (t_step_dir, '(A,I0)') '/', t_step_start t_step_dir = trim(proc_rank_dir) // trim(t_step_dir) + ! Inquiring as to the existence of the time-step directory file_loc = trim(t_step_dir) // '/.' call my_inquire(file_loc, dir_check) + ! If the time-step directory is missing, the pre-process exits if (dir_check .neqv. .true.) then call s_mpi_abort('Time-step folder ' // trim(t_step_dir) // ' is missing. Exiting.') end if + ! Reading the Grid Data File for the x-direction + + ! Checking whether x_cb.dat exists file_loc = trim(t_step_dir) // '/x_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_check) + ! If it exists, x_cb.dat is read if (file_check) then open (1, FILE=trim(file_loc), form='unformatted', STATUS='old', ACTION='read') read (1) x_cb(-1:m) @@ -179,18 +210,25 @@ contains call s_mpi_abort('File x_cb.dat is missing in ' // trim(t_step_dir) // '. Exiting.') end if + ! Computing cell-center locations x_cc(0:m) = (x_cb(0:m) + x_cb(-1:(m - 1)))/2._wp + ! Computing minimum cell-width dx = minval(x_cb(0:m) - x_cb(-1:m - 1)) if (num_procs > 1) call s_mpi_reduce_min(dx) + ! Setting locations of domain bounds x_domain%beg = x_cb(-1) x_domain%end = x_cb(m) + ! Reading the Grid Data File for the y-direction + if (n > 0) then + ! Checking whether y_cb.dat exists file_loc = trim(t_step_dir) // '/y_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_check) + ! If it exists, y_cb.dat is read if (file_check) then open (1, FILE=trim(file_loc), form='unformatted', STATUS='old', ACTION='read') read (1) y_cb(-1:n) @@ -199,18 +237,24 @@ contains call s_mpi_abort('File y_cb.dat is missing in ' // trim(t_step_dir) // '. Exiting.') end if + ! Computing cell-center locations y_cc(0:n) = (y_cb(0:n) + y_cb(-1:(n - 1)))/2._wp + ! Computing minimum cell-width dy = minval(y_cb(0:n) - y_cb(-1:n - 1)) if (num_procs > 1) call s_mpi_reduce_min(dy) + ! Setting locations of domain bounds y_domain%beg = y_cb(-1) y_domain%end = y_cb(n) + ! Reading the Grid Data File for the z-direction if (p > 0) then + ! Checking whether z_cb.dat exists file_loc = trim(t_step_dir) // '/z_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_check) + ! If it exists, z_cb.dat is read if (file_check) then open (1, FILE=trim(file_loc), form='unformatted', STATUS='old', ACTION='read') read (1) z_cb(-1:p) @@ -219,17 +263,23 @@ contains call s_mpi_abort('File z_cb.dat is missing in ' // trim(t_step_dir) // '. Exiting.') end if + ! Computing cell-center locations z_cc(0:p) = (z_cb(0:p) + z_cb(-1:(p - 1)))/2._wp + ! Computing minimum cell-width dz = minval(z_cb(0:p) - z_cb(-1:p - 1)) if (num_procs > 1) call s_mpi_reduce_min(dz) + ! Setting locations of domain bounds z_domain%beg = z_cb(-1) z_domain%end = z_cb(p) end if end if - ! Clean processor dir and create time-step dir (unless reading preexisting IC) + ! If only the preexisting grid data files are read in and there will not be any preexisting initial condition data files + ! imported, then the directory associated with the rank of the local processor may be cleaned to make room for the new + ! pre-process data. In addition, the time-step directory that will contain the new grid and initial condition data are also + ! generated. if (old_ic .neqv. .true.) then call s_delete_directory(trim(proc_rank_dir)) call s_create_directory(trim(proc_rank_dir) // '/0') @@ -241,15 +291,21 @@ contains !! coordinate directions and making sure that all of the cell-widths are positively valued impure subroutine s_check_grid_data_files + ! Cell-boundary Data Consistency Check in x-direction + if (any(x_cb(0:m) - x_cb(-1:m - 1) <= 0._wp)) then call s_mpi_abort('x_cb.dat in ' // trim(t_step_dir) // ' contains non-positive cell-spacings. Exiting.') end if + ! Cell-boundary Data Consistency Check in y-direction + if (n > 0) then if (any(y_cb(0:n) - y_cb(-1:n - 1) <= 0._wp)) then call s_mpi_abort('y_cb.dat in ' // trim(t_step_dir) // ' contains non-positive cell-spacings. ' // 'Exiting.') end if + ! Cell-boundary Data Consistency Check in z-direction + if (p > 0) then if (any(z_cb(0:p) - z_cb(-1:p - 1) <= 0._wp)) then call s_mpi_abort('z_cb.dat in ' // trim(t_step_dir) // ' contains non-positive cell-spacings' // ' .Exiting.') @@ -261,19 +317,29 @@ contains !> The goal of this subroutine is to read in any preexisting initial condition data files so that they may be used by the !! pre-process as a starting point in the creation of an all new initial condition. + !! @param q_cons_vf_in Conservative variables impure subroutine s_read_serial_ic_data_files(q_cons_vf_in) - type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf_in - character(LEN=len_trim(case_dir) + 3*name_len) :: file_loc + type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf_in + character(LEN=len_trim(case_dir) + 3*name_len) :: file_loc + ! Generic string used to store the address of a particular file + + !> Used to store the variable position, in character form, of the currently manipulated conservative variable file character(LEN=int(floor(log10(real(sys_size, wp)))) + 1) :: file_num - logical :: file_check - integer :: i, r + + !> Generic logical used for the purpose of asserting whether a file is or is not present in the designated location + logical :: file_check + integer :: i, r + + ! Reading the Conservative Variables Data Files do i = 1, sys_size + ! Checking whether data file associated with variable position of the currently manipulated conservative variable exists write (file_num, '(I0)') i file_loc = trim(t_step_dir) // '/q_cons_vf' // trim(file_num) // '.dat' inquire (FILE=trim(file_loc), EXIST=file_check) + ! If it exists, the data file is read if (file_check) then open (1, FILE=trim(file_loc), form='unformatted', STATUS='old', ACTION='read') read (1) q_cons_vf_in(i)%sf @@ -283,13 +349,17 @@ contains end if end do + ! Read bubble variables pb and mv for non-polytropic qbmm if (qbmm .and. .not. polytropic) then do i = 1, nb do r = 1, nnode + ! Checking whether data file associated with variable position of the currently manipulated bubble variable + ! exists write (file_num, '(I0)') sys_size + r + (i - 1)*nnode file_loc = trim(t_step_dir) // '/pb' // trim(file_num) // '.dat' inquire (FILE=trim(file_loc), EXIST=file_check) + ! If it exists, the data file is read if (file_check) then open (1, FILE=trim(file_loc), form='unformatted', STATUS='old', ACTION='read') read (1) pb%sf(:,:,:,r, i) @@ -302,10 +372,13 @@ contains do i = 1, nb do r = 1, nnode + ! Checking whether data file associated with variable position of the currently manipulated bubble variable + ! exists write (file_num, '(I0)') sys_size + r + (i - 1)*nnode file_loc = trim(t_step_dir) // '/mv' // trim(file_num) // '.dat' inquire (FILE=trim(file_loc), EXIST=file_check) + ! If it exists, the data file is read if (file_check) then open (1, FILE=trim(file_loc), form='unformatted', STATUS='old', ACTION='read') read (1) mv%sf(:,:,:,r, i) @@ -340,6 +413,7 @@ contains allocate (y_cb_glb(-1:n_glb)) allocate (z_cb_glb(-1:p_glb)) + ! Read in cell boundary locations in x-direction file_loc = trim(case_dir) // '/restart_data' // trim(mpiiofs) // 'x_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_exist) @@ -352,14 +426,19 @@ contains call s_mpi_abort('File ' // trim(file_loc) // ' is missing. Exiting. ') end if + ! Assigning local cell boundary locations x_cb(-1:m) = x_cb_glb((start_idx(1) - 1):(start_idx(1) + m)) + ! Computing cell center locations x_cc(0:m) = (x_cb(0:m) + x_cb(-1:(m - 1)))/2._wp + ! Computing minimum cell width dx = minval(x_cb(0:m) - x_cb(-1:(m - 1))) if (num_procs > 1) call s_mpi_reduce_min(dx) + ! Setting locations of domain bounds x_domain%beg = x_cb(-1) x_domain%end = x_cb(m) if (n > 0) then + ! Read in cell boundary locations in y-direction file_loc = trim(case_dir) // '/restart_data' // trim(mpiiofs) // 'y_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_exist) @@ -372,14 +451,19 @@ contains call s_mpi_abort('File ' // trim(file_loc) // ' is missing. Exiting. ') end if + ! Assigning local cell boundary locations y_cb(-1:n) = y_cb_glb((start_idx(2) - 1):(start_idx(2) + n)) + ! Computing cell center locations y_cc(0:n) = (y_cb(0:n) + y_cb(-1:(n - 1)))/2._wp + ! Computing minimum cell width dy = minval(y_cb(0:n) - y_cb(-1:(n - 1))) if (num_procs > 1) call s_mpi_reduce_min(dy) + ! Setting locations of domain bounds y_domain%beg = y_cb(-1) y_domain%end = y_cb(n) if (p > 0) then + ! Read in cell boundary locations in z-direction file_loc = trim(case_dir) // '/restart_data' // trim(mpiiofs) // 'z_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_exist) @@ -392,10 +476,14 @@ contains call s_mpi_abort('File ' // trim(file_loc) // ' is missing. Exiting. ') end if + ! Assigning local cell boundary locations z_cb(-1:p) = z_cb_glb((start_idx(3) - 1):(start_idx(3) + p)) + ! Computing cell center locations z_cc(0:p) = (z_cb(0:p) + z_cb(-1:(p - 1)))/2._wp + ! Computing minimum cell width dz = minval(z_cb(0:p) - z_cb(-1:(p - 1))) if (num_procs > 1) call s_mpi_reduce_min(dz) + ! Setting locations of domain bounds z_domain%beg = z_cb(-1) z_domain%end = z_cb(p) end if @@ -408,6 +496,7 @@ contains !> The goal of this subroutine is to read in any preexisting initial condition data files so that they may be used by the !! pre-process as a starting point in the creation of an all new initial condition. + !! @param q_cons_vf_in Conservative variables impure subroutine s_read_parallel_ic_data_files(q_cons_vf_in) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf_in @@ -424,6 +513,7 @@ contains logical :: file_exist integer :: i + ! Open the file to read if (cfl_adap_dt) then write (file_loc, '(I0,A)') n_start, '.dat' else @@ -437,6 +527,7 @@ contains call s_initialize_mpi_data(q_cons_vf_in) + ! Size of local arrays data_size = (m + 1)*(n + 1)*(p + 1) ! Resize some integers so MPI can read even the biggest files @@ -448,6 +539,7 @@ contains str_MOK = int(name_len, MPI_OFFSET_KIND) NVARS_MOK = int(sys_size, MPI_OFFSET_KIND) + ! Read the data for each variable do i = 1, sys_size var_MOK = int(i, MPI_OFFSET_KIND) @@ -482,9 +574,10 @@ contains end subroutine s_read_parallel_ic_data_files - !> Initialize all pre-process modules, allocate data structures, and set I/O procedure pointers. + !> @brief Initializes all pre-process modules, allocates data structures, and sets I/O procedure pointers. impure subroutine s_initialize_modules + ! Computation of parameters, allocation procedures, and/or any other tasks needed to properly setup the modules call s_initialize_global_parameters_module() if (bubbles_euler .or. bubbles_lagrange) then call s_initialize_bubbles_model() @@ -502,6 +595,7 @@ contains ! Create the D directory if it doesn't exit, to store the serial data files call s_create_directory('D') + ! Associate pointers for serial or parallel I/O if (parallel_io .neqv. .true.) then s_generate_grid => s_generate_serial_grid s_read_grid_data_files => s_read_serial_grid_data_files @@ -516,7 +610,7 @@ contains end subroutine s_initialize_modules - !> Read an existing grid from data files or generate a new grid from user inputs. + !> @brief Reads an existing grid from data files or generates a new grid from user inputs. impure subroutine s_read_grid() if (old_grid) then @@ -535,13 +629,21 @@ contains end subroutine s_read_grid - !> Generate or read the initial condition, apply relaxation if needed, and write output data files. + !> @brief Generates or reads the initial condition, applies relaxation if needed, and writes output data files. impure subroutine s_apply_initial_condition(start, finish) real(wp), intent(inout) :: start, finish integer :: j, k, l real(wp) :: r2 + ! Setting up the grid and the initial condition. If the grid is read in from preexisting grid data files, it is checked for + ! consistency. If the grid is not read in, it is generated from scratch according to the inputs provided by the user. The + ! initial condition may also be read in. It in turn is not checked for consistency since it WILL further be edited by the + ! pre-process and also because it may be incomplete at the time it is read in. Finally, when the grid and initial condition + ! are completely setup, they are written to their respective data files. + + ! Setting up grid and initial condition + call cpu_time(start) if (old_ic) call s_read_ic_data_files(q_cons_vf) @@ -578,7 +680,7 @@ contains end subroutine s_apply_initial_condition - !> Gather processor timing data and write elapsed wall-clock time to a summary file. + !> @brief Gathers processor timing data and writes elapsed wall-clock time to a summary file. impure subroutine s_save_data(proc_time, time_avg, time_final, file_exists) real(wp), dimension(:), intent(inout) :: proc_time @@ -614,11 +716,17 @@ contains end subroutine s_save_data - !> Initialize MPI, read and validate user inputs on rank 0, and decompose the computational domain. + !> @brief Initializes MPI, reads and validates user inputs on rank 0, and decomposes the computational domain. impure subroutine s_initialize_mpi_domain + ! Initialization of the MPI environment + call s_mpi_initialize() + ! Rank 0 processor assigns default values to user inputs prior to reading those in from the input file. Next, the user + ! inputs are read in and their consistency is checked. The detection of any inconsistencies automatically leads to the + ! termination of the pre-process. + if (proc_rank == 0) then call s_assign_default_values_to_user_inputs() call s_read_input_file() @@ -635,14 +743,16 @@ contains end subroutine s_initialize_mpi_domain - !> Finalize all pre-process modules, deallocate resources, and shut down MPI. + !> @brief Finalizes all pre-process modules, deallocates resources, and shuts down MPI. impure subroutine s_finalize_modules + ! Disassociate pointers for serial and parallel I/O s_generate_grid => null() s_read_grid_data_files => null() s_read_ic_data_files => null() s_write_data_files => null() + ! Deallocation procedures for the modules call s_finalize_mpi_common_module() call s_finalize_grid_module() call s_finalize_variables_conversion_module() @@ -653,6 +763,7 @@ contains call s_finalize_boundary_common_module() if (relax) call s_finalize_relaxation_solver_module() call s_finalize_initial_condition_module() + ! Finalization of the MPI environment call s_mpi_finalize() end subroutine s_finalize_modules diff --git a/src/pre_process/p_main.f90 b/src/pre_process/p_main.f90 index e16ff68571..c61b120f09 100644 --- a/src/pre_process/p_main.f90 +++ b/src/pre_process/p_main.f90 @@ -2,7 +2,7 @@ !! @file !! @brief Contains program p_main -!> @brief Set up the initial condition and grid data for the multicomponent flow code. +!> @brief This program takes care of setting up the initial condition and grid data for the multicomponent flow code. program p_main use m_global_parameters diff --git a/src/simulation/m_acoustic_src.fpp b/src/simulation/m_acoustic_src.fpp index 41c897cfd3..18bda58790 100644 --- a/src/simulation/m_acoustic_src.fpp +++ b/src/simulation/m_acoustic_src.fpp @@ -4,7 +4,7 @@ #:include 'macros.fpp' -!> @brief One-way acoustic source injection, Maeda and Colonius JCP (2017) +!> @brief Applies acoustic pressure source terms including focused, planar, and broadband transducers module m_acoustic_src use m_derived_types @@ -59,7 +59,7 @@ module m_acoustic_src contains - !> Initialize the acoustic source module + !> This subroutine initializes the acoustic source module impure subroutine s_initialize_acoustic_src integer :: i, j !< generic loop variables @@ -123,7 +123,10 @@ contains end subroutine s_initialize_acoustic_src - !> Compute mass, momentum, and energy acoustic source terms and add to the RHS + !> This subroutine updates the rhs by computing the mass, mom, energy sources + !! @param q_cons_vf Conservative variables + !! @param q_prim_vf Primitive variables + !! @param rhs_vf rhs variables impure subroutine s_acoustic_src_calculations(q_cons_vf, q_prim_vf, rhs_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf !< Conservative variables @@ -207,7 +210,7 @@ contains deallocate (phi_rn) $:GPU_PARALLEL_LOOP(private='[myalpha, myalpha_rho, myRho, B_tait, c, small_gamma, frequency_local, & - & gauss_sigma_time_local, mass_src_diff, mom_src_diff, source_temporal, j, k, l, q]', & + & gauss_sigma_time_local, mass_src_diff, mom_src_diff, source_temporal, j, k, l, q ]', & & copyin = '[sum_BB, freq_conv_flag, gauss_conv_flag, sim_time]') do i = 1, num_points j = source_spatials(ai)%coord(1, i) @@ -330,7 +333,15 @@ contains end subroutine s_acoustic_src_calculations - !> Compute the temporally varying amplitude of the pulse + !> This subroutine gives the temporally varying amplitude of the pulse + !! @param sim_time Simulation time + !! @param c Sound speed + !! @param ai Acoustic source index + !! @param term_index Index of the term to be calculated (1: mass source, 2: momentum source) + !! @param frequency_local Frequency at the spatial location for sine and square waves + !! @param gauss_sigma_time_local sigma in time for Gaussian pulse + !! @param source Source term amplitude + !! @param sum_bb Sum of basis functions elemental subroutine s_source_temporal(sim_time, c, ai, term_index, frequency_local, gauss_sigma_time_local, source, sum_BB) $:GPU_ROUTINE(parallelism='[seq]') @@ -354,7 +365,6 @@ contains source = 0._wp - ! Temporal waveform: sine, Gaussian pulse, square wave, or broadband if (pulse(ai) == 1) then ! Sine wave if ((sim_time - delay(ai))*frequency_local > npulse(ai)) return @@ -388,7 +398,7 @@ contains end subroutine s_source_temporal - !> Pre-compute non-zero spatial source weights before time-stepping + !> This subroutine identifies and precalculates the non-zero acoustic spatial sources before time-stepping impure subroutine s_precalculate_acoustic_spatial_sources integer :: j, k, l, ai @@ -476,7 +486,15 @@ contains end subroutine s_precalculate_acoustic_spatial_sources - !> Compute the spatial support of the acoustic source + !> This subroutine gives the spatial support of the acoustic source + !! @param j x-index + !! @param k y-index + !! @param l z-index + !! @param loc Nominal source term location + !! @param ai Acoustic source index + !! @param source Source term amplitude + !! @param angle Angle of the source term with respect to the x-axis (for 2D or 2D axisymmetric) + !! @param xyz_to_r_ratios Ratios of the [xyz]-component of the source term to the magnitude (for 3D) subroutine s_source_spatial(j, k, l, loc, ai, source, angle, xyz_to_r_ratios) integer, intent(in) :: j, k, l, ai @@ -510,7 +528,11 @@ contains end subroutine s_source_spatial - !> Compute the spatial support for planar acoustic sources in 1D, 2D, and 3D + !> This subroutine calculates the spatial support for planar acoustic sources in 1D, 2D, and 3D + !! @param ai Acoustic source index + !! @param sig Sigma value for the Gaussian distribution + !! @param r Displacement from source to current point + !! @param source Source term amplitude subroutine s_source_spatial_planar(ai, sig, r, source) integer, intent(in) :: ai @@ -520,7 +542,6 @@ contains source = 0._wp - ! Gaussian spatial pulse profile: exp(-0.5 * (d / sigma)^2) / (sqrt(2*pi) * sigma) if (support(ai) == 1) then ! 1D source = 1._wp/(sqrt(2._wp*pi)*sig/2._wp)*exp(-0.5_wp*(r(1)/(sig/2._wp))**2._wp) else if (support(ai) == 2 .or. support(ai) == 3) then ! 2D or 3D @@ -536,7 +557,13 @@ contains end subroutine s_source_spatial_planar - !> Compute the spatial support for a single transducer in 2D, 2D axisymmetric, and 3D + !> This subroutine calculates the spatial support for a single transducer in 2D, 2D axisymmetric, and 3D + !! @param ai Acoustic source index + !! @param sig Sigma value for the Gaussian distribution + !! @param r Displacement from source to current point + !! @param source Source term amplitude + !! @param angle Angle of the source term with respect to the x-axis (for 2D or 2D axisymmetric) + !! @param xyz_to_r_ratios Ratios of the [xyz]-component of the source term to the magnitude (for 3D) subroutine s_source_spatial_transducer(ai, sig, r, source, angle, xyz_to_r_ratios) integer, intent(in) :: ai @@ -574,7 +601,13 @@ contains end subroutine s_source_spatial_transducer - !> Compute the spatial support for multiple transducers in 2D, 2D axisymmetric, and 3D + !> This subroutine calculates the spatial support for multiple transducers in 2D, 2D axisymmetric, and 3D + !! @param ai Acoustic source index + !! @param sig Sigma value for the Gaussian distribution + !! @param r Displacement from source to current point + !! @param source Source term amplitude + !! @param angle Angle of the source term with respect to the x-axis (for 2D or 2D axisymmetric) + !! @param xyz_to_r_ratios Ratios of the [xyz]-component of the source term to the magnitude (for 3D) subroutine s_source_spatial_transducer_array(ai, sig, r, source, angle, xyz_to_r_ratios) integer, intent(in) :: ai @@ -650,7 +683,11 @@ contains end subroutine s_source_spatial_transducer_array - !> Convert wavelength to frequency + !> This function performs wavelength to frequency conversion + !! @param freq_conv_flag Determines if frequency is given or wavelength + !! @param ai Acoustic source index + !! @param c Speed of sound + !! @return frequency_local Converted frequency elemental function f_frequency_local(freq_conv_flag, ai, c) $:GPU_ROUTINE(parallelism='[seq]') @@ -667,7 +704,11 @@ contains end function f_frequency_local - !> Convert Gaussian sigma from distance to time + !> This function performs Gaussian sigma dist to time conversion + !! @param gauss_conv_flag Determines if sigma_dist is given or sigma_time + !! @param c Speed of sound + !! @param ai Acoustic source index + !! @return gauss_sigma_time_local Converted Gaussian sigma time function f_gauss_sigma_time_local(gauss_conv_flag, ai, c) $:GPU_ROUTINE(parallelism='[seq]') diff --git a/src/simulation/m_body_forces.fpp b/src/simulation/m_body_forces.fpp index 7200390c2c..cc9a62bcb2 100644 --- a/src/simulation/m_body_forces.fpp +++ b/src/simulation/m_body_forces.fpp @@ -24,22 +24,26 @@ module m_body_forces contains - !> Initialize the body forces module + !> This subroutine initializes the module global array of mixture densities in each grid cell impure subroutine s_initialize_body_forces_module + ! Simulation is at least 2D if (n > 0) then + ! Simulation is 3D if (p > 0) then @:ALLOCATE(rhoM(-buff_size:buff_size + m, -buff_size:buff_size + n, -buff_size:buff_size + p)) + ! Simulation is 2D else @:ALLOCATE(rhoM(-buff_size:buff_size + m, -buff_size:buff_size + n, 0:0)) end if + ! Simulation is 1D else @:ALLOCATE(rhoM(-buff_size:buff_size + m, 0:0, 0:0)) end if end subroutine s_initialize_body_forces_module - !> Compute the acceleration at time t + !> This subroutine computes the acceleration at time t subroutine s_compute_acceleration(t) real(wp), intent(in) :: t @@ -54,7 +58,8 @@ contains end subroutine s_compute_acceleration - !> Compute the mixture density at each cell center + !> This subroutine calculates the mixture density at each cell center + !! @param q_cons_vf Conservative variables subroutine s_compute_mixture_density(q_cons_vf) type(scalar_field), dimension(sys_size), intent(in) :: q_cons_vf @@ -75,7 +80,10 @@ contains end subroutine s_compute_mixture_density - !> Compute the body force source terms for momentum and energy equations + !> This subroutine calculates the source term due to body forces so the system can be advanced in time + !! @param q_cons_vf Conservative variables + !! @param q_prim_vf Primitive variables + !! @param rhs_vf Right-hand side accumulator subroutine s_compute_body_forces_rhs(q_prim_vf, q_cons_vf, rhs_vf) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -142,7 +150,7 @@ contains end subroutine s_compute_body_forces_rhs - !> Finalize the body forces module + !> @brief Deallocates module variables used for body force computations. impure subroutine s_finalize_body_forces_module @:DEALLOCATE(rhoM) diff --git a/src/simulation/m_bubbles.fpp b/src/simulation/m_bubbles.fpp index 2ff5952827..ef065cb6be 100644 --- a/src/simulation/m_bubbles.fpp +++ b/src/simulation/m_bubbles.fpp @@ -13,6 +13,7 @@ module m_bubbles use m_mpi_proxy use m_variables_conversion use m_helper_basic + use m_bubbles_EL_kernels implicit none @@ -23,8 +24,21 @@ module m_bubbles contains - !> Compute the bubble radial acceleration based on the selected bubble model - elemental function f_rddot(fRho, fP, fR, fV, fR0, fpb, fpbdot, alf, fntait, fBtait, f_bub_adv_src, f_divu, fCson) + !> Function that computes the bubble radial acceleration based on bubble models + !! @param fRho Current density + !! @param fP Current driving pressure + !! @param fR Current bubble radius + !! @param fV Current bubble velocity + !! @param fR0 Equilibrium bubble radius + !! @param fpb Internal bubble pressure + !! @param fpbdot Time-derivative of internal bubble pressure + !! @param alf bubble volume fraction + !! @param fntait Tait EOS parameter + !! @param fBtait Tait EOS parameter + !! @param f_bub_adv_src Source for bubble volume fraction + !! @param f_divu Divergence of velocity + !! @param fCson Speed of sound from fP (EL) + function f_rddot(fRho, fP, fR, fV, fR0, fpb, fpbdot, alf, fntait, fBtait, f_bub_adv_src, f_divu, fCson) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fRho, fP, fR, fV, fR0, fpb, fpbdot, alf @@ -63,8 +77,12 @@ contains end function f_rddot - !> Bubble wall pressure: stiffened gas with Laplace pressure and viscous stress - elemental function f_cpbw(fR0, fR, fV, fpb) + !> Function that computes that bubble wall pressure for Gilmore bubbles + !! @param fR0 Equilibrium bubble radius + !! @param fR Current bubble radius + !! @param fV Current bubble velocity + !! @param fpb Internal bubble pressure + function f_cpbw(fR0, fR, fV, fpb) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fR0, fR, fV, fpb @@ -78,8 +96,12 @@ contains end function f_cpbw - !> Compute the bubble enthalpy - elemental function f_H(fCpbw, fCpinf, fntait, fBtait) + !> Function that computes the bubble enthalpy + !! @param fCpbw Bubble wall pressure + !! @param fCpinf Driving bubble pressure + !! @param fntait Tait EOS parameter + !! @param fBtait Tait EOS parameter + function f_H(fCpbw, fCpinf, fntait, fBtait) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fCpbw, fCpinf, fntait, fBtait @@ -94,8 +116,12 @@ contains end function f_H - !> Compute the sound speed for the bubble - elemental function f_cgas(fCpinf, fntait, fBtait, fH) + !> Function that computes the sound speed for the bubble + !! @param fCpinf Driving bubble pressure + !! @param fntait Tait EOS parameter + !! @param fBtait Tait EOS parameter + !! @param fH Bubble enthalpy + function f_cgas(fCpinf, fntait, fBtait, fH) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fCpinf, fntait, fBtait, fH @@ -110,8 +136,15 @@ contains end function f_cgas - !> Compute the time derivative of the driving pressure - elemental function f_cpinfdot(fRho, fP, falf, fntait, fBtait, advsrc, divu) + !> Function that computes the time derivative of the driving pressure + !! @param fRho Local liquid density + !! @param fP Local pressure + !! @param falf Local void fraction + !! @param fntait Tait EOS parameter + !! @param fBtait Tait EOS parameter + !! @param advsrc Advection equation source term + !! @param divu Divergence of velocity + function f_cpinfdot(fRho, fP, falf, fntait, fBtait, advsrc, divu) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fRho, fP, falf, fntait, fBtait, advsrc, divu @@ -130,8 +163,17 @@ contains end function f_cpinfdot - !> Enthalpy derivative for Gilmore bubble model, Gilmore (1952) - elemental function f_Hdot(fCpbw, fCpinf, fCpinf_dot, fntait, fBtait, fR, fV, fR0, fpbdot) + !> Function that computes the time derivative of the enthalpy + !! @param fCpbw Bubble wall pressure + !! @param fCpinf Driving bubble pressure + !! @param fCpinf_dot Time derivative of the driving pressure + !! @param fntait Tait EOS parameter + !! @param fBtait Tait EOS parameter + !! @param fR Current bubble radius + !! @param fV Current bubble velocity + !! @param fR0 Equilibrium bubble radius + !! @param fpbdot Time derivative of the internal bubble pressure + function f_Hdot(fCpbw, fCpinf, fCpinf_dot, fntait, fBtait, fR, fV, fR0, fpbdot) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fCpbw, fCpinf, fCpinf_dot, fntait, fBtait @@ -150,21 +192,43 @@ contains f_Hdot = (fCpbw/(1._wp + fBtait) + 1._wp)**(-1._wp/fntait)*(tmp1 + tmp2) - (fCpinf/(1._wp + fBtait) + 1._wp) & & **(-1._wp/fntait)*fCpinf_dot + ! Hdot = (Cpbw/(1+B) + 1)^(-1/n_tait)*(-3 gam)*(R0/R)^(3gam) V/R f_Hdot = + ! ((fCpbw/(1._wp+fBtait)+1._wp)**(-1._wp/fntait))*(-3._wp)*gam * & ( (fR0/fR)**(3._wp*gam ))*(fV/fR) + + ! Hdot = Hdot - (Cpinf/(1+B) + 1)^(-1/n_tait) Cpinfdot f_Hdot = f_Hdot - + ! ((fCpinf/(1._wp+fBtait)+1._wp)**(-1._wp/fntait))*fCpinf_dot + end function f_Hdot - !> Rayleigh-Plesset bubble radial acceleration - elemental function f_rddot_RP(fCp, fRho, fR, fV, fCpbw) + !> Function that computes the bubble radial acceleration for Rayleigh-Plesset bubbles + !! @param fCp Driving pressure + !! @param fRho Current density + !! @param fR Current bubble radius + !! @param fV Current bubble velocity + !! @param fCpbw Boundary wall pressure + function f_rddot_RP(fCp, fRho, fR, fV, fCpbw) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fCp, fRho, fR, fV, fCpbw real(wp) :: f_rddot_RP + !! rddot = (1/r) ( -3/2 rdot^2 + ((r0/r)^3\gamma - Cp)/rho ) rddot = (1/r) ( -3/2 rdot^2 + (tmp1 - Cp)/rho ) rddot = (1/r) ( + !! tmp2 ) + f_rddot_RP = (-1.5_wp*(fV**2._wp) + (fCpbw - fCp)/fRho)/fR end function f_rddot_RP - !> Compute the Gilmore bubble radial acceleration - elemental function f_rddot_G(fCpbw, fR, fV, fH, fHdot, fcgas, fntait, fBtait) + !> Function that computes the bubble radial acceleration + !! @param fCpbw Bubble wall pressure + !! @param fR Current bubble radius + !! @param fV Current bubble velocity + !! @param fH Current enthalpy + !! @param fHdot Current time derivative of the enthalpy + !! @param fcgas Current gas sound speed + !! @param fntait Tait EOS parameter + !! @param fBtait Tait EOS parameter + function f_rddot_G(fCpbw, fR, fV, fH, fHdot, fcgas, fntait, fBtait) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fCpbw, fR, fV, fH, fHdot @@ -180,8 +244,12 @@ contains end function f_rddot_G - !> Keller-Miksis bubble wall pressure - elemental function f_cpbw_KM(fR0, fR, fV, fpb) + !> Function that computes the bubble wall pressure for Keller--Miksis bubbles + !! @param fR0 Equilibrium bubble radius + !! @param fR Current bubble radius + !! @param fV Current bubble velocity + !! @param fpb Internal bubble pressure + function f_cpbw_KM(fR0, fR, fV, fpb) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fR0, fR, fV, fpb @@ -199,8 +267,16 @@ contains end function f_cpbw_KM - !> Keller-Miksis bubble radial acceleration - elemental function f_rddot_KM(fpbdot, fCp, fCpbw, fRho, fR, fV, fR0, fC) + !> Function that computes the bubble radial acceleration for Keller--Miksis bubbles + !! @param fpbdot Time-derivative of internal bubble pressure + !! @param fCp Driving pressure + !! @param fCpbw Bubble wall pressure + !! @param fRho Current density + !! @param fR Current bubble radius + !! @param fV Current bubble velocity + !! @param fR0 Equilibrium bubble radius + !! @param fC Current sound speed + function f_rddot_KM(fpbdot, fCp, fCpbw, fRho, fR, fV, fR0, fC) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fpbdot, fCp, fCpbw @@ -228,8 +304,10 @@ contains end function f_rddot_KM - !> Compute bubble wall properties for vapor bubbles - elemental subroutine s_bwproperty(pb_in, iR0, chi_vw_out, k_mw_out, rho_mw_out) + !> Subroutine that computes bubble wall properties for vapor bubbles + !! @param pb_in Internal bubble pressure + !! @param iR0 Current bubble size index + subroutine s_bwproperty(pb_in, iR0, chi_vw_out, k_mw_out, rho_mw_out) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: pb_in @@ -249,8 +327,18 @@ contains end subroutine s_bwproperty - !> Compute the vapour flux - elemental subroutine s_vflux(fR, fV, fpb, fmass_v, iR0, vflux, fmass_g, fbeta_c, fR_m, fgamma_m) + !> Function that computes the vapour flux + !! @param fR Current bubble radius + !! @param fV Current bubble velocity + !! @param fpb + !! @param fmass_v Current mass of vapour + !! @param iR0 Bubble size index (EE) or bubble identifier (EL) + !! @param vflux Computed vapour flux + !! @param fmass_g Current gas mass (EL) + !! @param fbeta_c Mass transfer coefficient (EL) + !! @param fR_m Mixture gas constant (EL) + !! @param fgamma_m Mixture gamma (EL) + subroutine s_vflux(fR, fV, fpb, fmass_v, iR0, vflux, fmass_g, fbeta_c, fR_m, fgamma_m) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fR @@ -297,9 +385,19 @@ contains end subroutine s_vflux - !> Compute the time derivative of the internal bubble pressure - elemental function f_bpres_dot(fvflux, fR, fV, fpb, fmass_v, iR0, fbeta_t, fR_m, fgamma_m) - + !> Function that computes the time derivative of the internal bubble pressure + !! @param fvflux Vapour flux + !! @param fR Current bubble radius + !! @param fV Current bubble velocity + !! @param fpb Current internal bubble pressure + !! @param fmass_v Current mass of vapour + !! @param iR0 Bubble size index (EE) or bubble identifier (EL) + !! @param fbeta_t Mass transfer coefficient (EL) + !! @param fR_m Mixture gas constant (EL) + !! @param fgamma_m Mixture gamma (EL) + function f_bpres_dot(fvflux, fR, fV, fpb, fmass_v, iR0, fbeta_t, fR_m, fgamma_m) + + !$DIR INLINENEVER f_bpres_dot $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fvflux real(wp), intent(in) :: fR @@ -332,25 +430,48 @@ contains !> Adaptive time stepping routine for subgrid bubbles (See Heirer, E. Hairer S.P.Norsett G. Wanner, Solving Ordinary !! Differential Equations I, Chapter II.4) - subroutine s_advance_step(fRho, fP, fR, fV, fR0, fpb, fpbdot, alf, fntait, fBtait, f_bub_adv_src, f_divu, bub_id, fmass_v, & - - & fmass_g, fbeta_c, fbeta_t, fCson, adap_dt_stop) - $:GPU_ROUTINE(function_name='s_advance_step',parallelism='[seq]', cray_inline=True) + !! @param fRho Current density + !! @param fP Current driving pressure + !! @param fR Current bubble radius + !! @param fV Current bubble radial velocity + !! @param fR0 Equilibrium bubble radius + !! @param fpb Internal bubble pressure + !! @param fpbdot Time-derivative of internal bubble pressure + !! @param alf bubble volume fraction + !! @param fntait Tait EOS parameter + !! @param fBtait Tait EOS parameter + !! @param f_bub_adv_src Source for bubble volume fraction + !! @param f_divu Divergence of velocity + !! @param bub_id Bubble identifier (EL) + !! @param fmass_v Current mass of vapour (EL) + !! @param fmass_g Current mass of gas (EL) + !! @param fbeta_c Mass transfer coefficient (EL) + !! @param fbeta_t Heat transfer coefficient (EL) + !! @param fCson Speed of sound (EL) + !! @param adap_dt_stop Fail-safe exit if max iteration count reached + function f_advance_step(fRho, fP, fR, fV, fR0, fpb, fpbdot, alf, fntait, fBtait, f_bub_adv_src, f_divu, bub_id, fmass_v, & + & fmass_g, fbeta_c, fbeta_t, fCson, fRe, fPos, fVel, cell, q_prim_vf) result(adap_dt_stop) + $:GPU_ROUTINE(parallelism='[seq]') - real(wp), intent(inout) :: fR, fV, fpb, fmass_v - real(wp), intent(in) :: fRho, fP, fR0, fpbdot, alf - real(wp), intent(in) :: fntait, fBtait, f_bub_adv_src, f_divu - integer, intent(in) :: bub_id - real(wp), intent(in) :: fmass_g, fbeta_c, fbeta_t, fCson - integer, intent(inout) :: adap_dt_stop - real(wp), dimension(5) :: err !< Error estimates for adaptive time stepping - real(wp) :: t_new !< Updated time step size - real(wp) :: h0, h !< Time step size + real(wp), intent(inout) :: fR, fV, fpb, fmass_v + real(wp), intent(in) :: fRho, fP, fR0, fpbdot, alf + real(wp), intent(in) :: fntait, fBtait, f_bub_adv_src, f_divu + integer, intent(in) :: bub_id + real(wp), intent(in) :: fmass_g, fbeta_c, fbeta_t, fCson + real(wp), intent(inout), dimension(3), optional :: fPos, fVel + real(wp), intent(in), optional :: fRe + integer, intent(in), dimension(3), optional :: cell + type(scalar_field), intent(in), dimension(sys_size), optional :: q_prim_vf + real(wp), dimension(5) :: err !< Error estimates for adaptive time stepping + real(wp) :: t_new !< Updated time step size + real(wp) :: h0, h !< Time step size !> Bubble radius, radial velocity, and radial acceleration for the inner loop real(wp), dimension(4) :: myR_tmp1, myV_tmp1, myR_tmp2, myV_tmp2 real(wp), dimension(4) :: myPb_tmp1, myMv_tmp1, myPb_tmp2, myMv_tmp2 !< Gas pressure and vapor mass for the inner loop (EL) - real(wp) :: fR2, fV2, fpb2, fmass_v2 - integer :: iter_count + real(wp) :: fR2, fV2, fpb2, fmass_v2, f_bTemp + real(wp), dimension(3) :: vTemp, aTemp + integer :: adap_dt_stop + integer :: l, iter_count call s_initial_substep_h(fRho, fP, fR, fV, fR0, fpb, fpbdot, alf, fntait, fBtait, f_bub_adv_src, f_divu, fCson, h0) h = h0 @@ -416,6 +537,37 @@ contains ! Update pb and mass_v fpb = myPb_tmp1(4) fmass_v = myMv_tmp1(4) + + select case (lag_vel_model) + case (1) + do l = 1, num_dims + vTemp(l) = f_interpolate_velocity(fR, cell, l, q_prim_vf) + end do + do l = 1, num_dims + fVel(l) = vTemp(l) + fPos(l) = fPos(l) + h*vTemp(l) + end do + case (2) + do l = 1, num_dims + f_bTemp = f_get_bubble_force(fPos(l), fR, fV, fVel(l), fmass_g, fmass_v, fRe, fRho, cell, l, & + & q_prim_vf) + aTemp(l) = f_bTemp/(fmass_g + fmass_v) + end do + do l = 1, num_dims + fVel(l) = fVel(l) + h*aTemp(l) + fPos(l) = fPos(l) + h*fVel(l) + end do + case (3) + do l = 1, num_dims + f_bTemp = f_get_bubble_force(fPos(l), fR, fV, fVel(l), fmass_g, fmass_v, fRe, fRho, cell, l, & + & q_prim_vf) + aTemp(l) = 2._wp*f_bTemp/(fmass_g + fmass_v) - 3._wp*fV*fVel(l)/fR + end do + do l = 1, num_dims + fVel(l) = fVel(l) + h*aTemp(l) + fPos(l) = fPos(l) + h*fVel(l) + end do + end select end if ! Update step size for the next sub-step @@ -438,10 +590,24 @@ contains if (iter_count >= adap_dt_max_iters) adap_dt_stop = 1 - end subroutine s_advance_step + end function f_advance_step !> Choose the initial time step size for the adaptive time stepping routine (See Heirer, E. Hairer S.P.Norsett G. Wanner, !! Solving Ordinary Differential Equations I, Chapter II.4) + !! @param fRho Current density + !! @param fP Current driving pressure + !! @param fR Current bubble radius + !! @param fV Current bubble velocity + !! @param fR0 Equilibrium bubble radius + !! @param fpb Internal bubble pressure + !! @param fpbdot Time-derivative of internal bubble pressure + !! @param alf bubble volume fraction + !! @param fntait Tait EOS parameter + !! @param fBtait Tait EOS parameter + !! @param f_bub_adv_src Source for bubble volume fraction + !! @param f_divu Divergence of velocity + !! @param fCson Speed of sound (EL) + !! @param h Time step size subroutine s_initial_substep_h(fRho, fP, fR, fV, fR0, fpb, fpbdot, alf, fntait, fBtait, f_bub_adv_src, f_divu, fCson, h) $:GPU_ROUTINE(function_name='s_initial_substep_h',parallelism='[seq]', cray_inline=True) @@ -453,6 +619,7 @@ contains real(wp), dimension(2) :: h_size !< Time step size (h0, h1) real(wp), dimension(3) :: d_norms !< norms (d_0, d_1, d_2) real(wp), dimension(2) :: myR_tmp, myV_tmp, myA_tmp !< Bubble radius, radial velocity, and radial acceleration + ! Determine the starting time step Evaluate f(x0,y0) myR_tmp(1) = fR myV_tmp(1) = fV @@ -487,9 +654,32 @@ contains end subroutine s_initial_substep_h !> Integrate bubble variables over the given time step size, h, using a third-order accurate embedded Runge-Kutta scheme. + !! @param err Estimated error + !! @param fRho Current density + !! @param fP Current driving pressure + !! @param fR Current bubble radius + !! @param fV Current bubble velocity + !! @param fR0 Equilibrium bubble radius + !! @param fpb Internal bubble pressure + !! @param fpbdot Time-derivative of internal bubble pressure + !! @param alf bubble volume fraction + !! @param fntait Tait EOS parameter + !! @param fBtait Tait EOS parameter + !! @param f_bub_adv_src Source for bubble volume fraction + !! @param f_divu Divergence of velocity + !! @param bub_id Bubble identifier (EL) + !! @param fmass_v Current mass of vapour (EL) + !! @param fmass_g Current mass of gas (EL) + !! @param fbeta_c Mass transfer coefficient (EL) + !! @param fbeta_t Heat transfer coefficient (EL) + !! @param fCson Speed of sound (EL) + !! @param h Time step size + !! @param myR_tmp Bubble radius at each stage + !! @param myV_tmp Bubble radial velocity at each stage + !! @param myPb_tmp Internal bubble pressure at each stage (EL) + !! @param myMv_tmp Mass of vapor in the bubble at each stage (EL) subroutine s_advance_substep(err, fRho, fP, fR, fV, fR0, fpb, fpbdot, alf, fntait, fBtait, f_bub_adv_src, f_divu, bub_id, & - - & fmass_v, fmass_g, fbeta_c, fbeta_t, fCson, h, myR_tmp, myV_tmp, myPb_tmp, myMv_tmp) + & fmass_v, fmass_g, fbeta_c, fbeta_t, fCson, h, myR_tmp, myV_tmp, myPb_tmp, myMv_tmp) $:GPU_ROUTINE(function_name='s_advance_substep',parallelism='[seq]', cray_inline=True) real(wp), intent(out) :: err @@ -577,7 +767,18 @@ contains end subroutine s_advance_substep !> Changes of pressure and vapor mass in the lagrange bubbles. - elemental subroutine s_advance_EL(fR_tmp, fV_tmp, fPb_tmp, fMv_tmp, bub_id, fmass_g, fbeta_c, fbeta_t, fdPbdt_tmp, advance_EL) + !! @param fR_tmp Bubble radius + !! @param fV_tmp Bubble radial velocity + !! @param fPb_tmp Internal bubble pressure + !! @param fMv_tmp Mass of vapor in the bubble + !! @param bub_id Bubble identifier + !! @param fmass_g Current mass of gas + !! @param fbeta_c Mass transfer coefficient + !! @param fbeta_t Heat transfer coefficient + !! @param fdPbdt_tmp Rate of change of the internal bubble pressure + !! @param fdMvdt_tmp Rate of change of the mass of vapor in the bubble + !! @param advance_EL Rate of change of the mass of vapor in the bubble + subroutine s_advance_EL(fR_tmp, fV_tmp, fPb_tmp, fMv_tmp, bub_id, fmass_g, fbeta_c, fbeta_t, fdPbdt_tmp, advance_EL) $:GPU_ROUTINE(parallelism='[seq]') real(wp), intent(in) :: fR_tmp, fV_tmp, fPb_tmp, fMv_tmp diff --git a/src/simulation/m_bubbles_EE.fpp b/src/simulation/m_bubbles_EE.fpp index b2c5f1fd97..42cacbf882 100644 --- a/src/simulation/m_bubbles_EE.fpp +++ b/src/simulation/m_bubbles_EE.fpp @@ -27,7 +27,7 @@ module m_bubbles_EE contains - !> Initialize the Euler-Euler bubble module + !> @brief Allocates and initializes arrays for the Euler-Euler bubble model. impure subroutine s_initialize_bubbles_EE_module integer :: l @@ -65,7 +65,8 @@ contains end subroutine s_initialize_bubbles_EE_module - !> Compute the bubble volume fraction alpha from the bubble number density + !> @brief Computes the bubble volume fraction alpha from the bubble number density. + !! @param q_cons_vf is the conservative variable subroutine s_comp_alpha_from_n(q_cons_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf @@ -90,6 +91,8 @@ contains end subroutine s_comp_alpha_from_n !> Compute the right-hand side for Euler-Euler bubble transport + !! @param idir Direction index + !! @param q_prim_vf Primitive variables subroutine s_compute_bubbles_EE_rhs(idir, q_prim_vf, divu_in) integer, intent(in) :: idir @@ -137,7 +140,10 @@ contains end subroutine s_compute_bubbles_EE_rhs - !> Compute the Euler-Euler bubble source terms + !> The purpose of this procedure is to compute the source terms that are needed for the bubble modeling + !! @param q_prim_vf Primitive variables + !! @param q_cons_vf Conservative variables + !! @param rhs_vf Right-hand side variables impure subroutine s_compute_bubble_EE_source(q_cons_vf, q_prim_vf, rhs_vf, divu_in) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf @@ -159,7 +165,7 @@ contains real(wp) :: nbub !< Bubble number density real(wp) :: my_divu integer :: i, j, k, l, q, ii !< Loop variables - integer :: adap_dt_stop_max, adap_dt_stop !< Fail-safe exit if max iteration count reached + integer :: adap_dt_stop_sum, adap_dt_stop !< Fail-safe exit if max iteration count reached integer :: dmBub_id !< Dummy variables for unified subgrid bubble subroutines real(wp) :: dmMass_v, dmMass_n, dmBeta_c, dmBeta_t, dmCson @@ -181,10 +187,10 @@ contains end do $:END_GPU_PARALLEL_LOOP() - adap_dt_stop_max = 0 + adap_dt_stop_sum = 0 $:GPU_PARALLEL_LOOP(private='[j, k, l, Rtmp, Vtmp, myalpha_rho, myalpha, myR, myV, alf, myP, myRho, R2Vav, R3, nbub, & - & pb_local, mv_local, vflux, pbdot, rddot, n_tait, B_tait, my_divu]', collapse=3, & - & reduction = '[[adap_dt_stop_max]]', reductionOp = '[MAX]', copy = '[adap_dt_stop_max]') + & pb_local, mv_local, vflux, pbdot, rddot, n_tait, B_tait, my_divu, & + & adap_dt_stop]', collapse=3, copy='[adap_dt_stop_sum]') do l = 0, p do k = 0, n do j = 0, m @@ -272,24 +278,25 @@ contains pb_local = 0._wp; mv_local = 0._wp; vflux = 0._wp; pbdot = 0._wp end if + adap_dt_stop = 0 + ! Adaptive time stepping if (adap_dt) then - adap_dt_stop = 0 - - call s_advance_step(myRho, myP, myR, myV, R0(q), pb_local, pbdot, alf, n_tait, B_tait, & - & bub_adv_src(j, k, l), divu_in%sf(j, k, l), dmBub_id, dmMass_v, dmMass_n, & - & dmBeta_c, dmBeta_t, dmCson, adap_dt_stop) + adap_dt_stop = f_advance_step(myRho, myP, myR, myV, R0(q), pb_local, pbdot, alf, n_tait, B_tait, & + & bub_adv_src(j, k, l), divu_in%sf(j, k, l), dmBub_id, dmMass_v, & + & dmMass_n, dmBeta_c, dmBeta_t, dmCson) q_cons_vf(rs(q))%sf(j, k, l) = nbub*myR q_cons_vf(vs(q))%sf(j, k, l) = nbub*myV - - adap_dt_stop_max = max(adap_dt_stop_max, adap_dt_stop) else rddot = f_rddot(myRho, myP, myR, myV, R0(q), pb_local, pbdot, alf, n_tait, B_tait, bub_adv_src(j, & & k, l), divu_in%sf(j, k, l), dmCson) bub_v_src(j, k, l, q) = nbub*rddot bub_r_src(j, k, l, q) = q_cons_vf(vs(q))%sf(j, k, l) end if + + $:GPU_ATOMIC(atomic='update') + adap_dt_stop_sum = adap_dt_stop_sum + adap_dt_stop end if end do end do @@ -297,7 +304,7 @@ contains end do $:END_GPU_PARALLEL_LOOP() - if (adap_dt .and. adap_dt_stop_max > 0) call s_mpi_abort("Adaptive time stepping failed to converge.") + if (adap_dt .and. adap_dt_stop_sum > 0) call s_mpi_abort("Adaptive time stepping failed to converge.") if (.not. adap_dt) then $:GPU_PARALLEL_LOOP(private='[i, k, l, q]', collapse=3) diff --git a/src/simulation/m_bubbles_EL.fpp b/src/simulation/m_bubbles_EL.fpp index 437dbe0db2..3be530186b 100644 --- a/src/simulation/m_bubbles_EL.fpp +++ b/src/simulation/m_bubbles_EL.fpp @@ -17,6 +17,9 @@ module m_bubbles_EL use m_helper_basic use m_sim_helpers use m_helper + use m_mpi_common + use m_ibm + use m_finite_differences implicit none @@ -55,22 +58,34 @@ module m_bubbles_EL $:GPU_DECLARE(create='[intfc_draddt, intfc_dveldt, gas_dpdt, gas_dmvdt, mtn_dposdt, mtn_dveldt]') integer, private :: lag_num_ts !< Number of time stages in the time-stepping scheme + $:GPU_DECLARE(create='[lag_num_ts]') - integer :: nBubs !< Number of bubbles in the local domain real(wp) :: Rmax_glb, Rmin_glb !< Maximum and minimum bubbe size in the local domain !> Projection of the lagrangian particles in the Eulerian framework type(scalar_field), dimension(:), allocatable :: q_beta + type(scalar_field), dimension(:), allocatable :: kahan_comp !< Kahan compensation for q_beta accumulation integer :: q_beta_idx !< Size of the q_beta vector field - $:GPU_DECLARE(create='[nBubs, Rmax_glb, Rmin_glb, q_beta, q_beta_idx]') + + $:GPU_DECLARE(create='[Rmax_glb, Rmin_glb, q_beta, kahan_comp, q_beta_idx]') + + integer, parameter :: LAG_EVOL_ID = 11 ! File id for lag_bubbles_evol_*.dat + integer, parameter :: LAG_STATS_ID = 12 ! File id for stats_lag_bubbles_*.dat + integer, parameter :: LAG_VOID_ID = 13 ! File id for voidfraction.dat + integer, allocatable, dimension(:) :: keep_bubble + integer, allocatable, dimension(:,:) :: wrap_bubble_loc, wrap_bubble_dir + $:GPU_DECLARE(create='[keep_bubble]') + $:GPU_DECLARE(create='[wrap_bubble_loc, wrap_bubble_dir]') contains !> Initializes the lagrangian subgrid bubble solver - impure subroutine s_initialize_bubbles_EL_module(q_cons_vf) + !! @param q_cons_vf Initial conservative variables + impure subroutine s_initialize_bubbles_EL_module(q_cons_vf, bc_type) - type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf - integer :: nBubs_glb, i + type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf + type(integer_field), dimension(1:num_dims,1:2), intent(in) :: bc_type + integer :: nBubs_glb, i ! Setting number of time-stages for selected time-stepping scheme @@ -91,22 +106,36 @@ contains call s_mpi_abort('Please check the lag_params%solver_approach input') end if + pcomm_coords(1)%beg = x_cb(-1) + pcomm_coords(1)%end = x_cb(m) + $:GPU_UPDATE(device='[pcomm_coords(1)]') + if (n > 0) then + pcomm_coords(2)%beg = y_cb(-1) + pcomm_coords(2)%end = y_cb(n) + $:GPU_UPDATE(device='[pcomm_coords(2)]') + if (p > 0) then + pcomm_coords(3)%beg = z_cb(-1) + pcomm_coords(3)%end = z_cb(p) + $:GPU_UPDATE(device='[pcomm_coords(3)]') + end if + end if + $:GPU_UPDATE(device='[lag_num_ts, q_beta_idx]') @:ALLOCATE(q_beta(1:q_beta_idx)) + @:ALLOCATE(kahan_comp(1:q_beta_idx)) do i = 1, q_beta_idx @:ALLOCATE(q_beta(i)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end)) - end do - - do i = 1, q_beta_idx @:ACC_SETUP_SFs(q_beta(i)) + @:ALLOCATE(kahan_comp(i)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + & idwbuff(3)%beg:idwbuff(3)%end)) + @:ACC_SETUP_SFs(kahan_comp(i)) end do ! Allocating space for lagrangian variables nBubs_glb = lag_params%nBubs_glb - @:ALLOCATE(lag_id(1:nBubs_glb, 1:2)) @:ALLOCATE(bub_R0(1:nBubs_glb)) @:ALLOCATE(Rmax_stats(1:nBubs_glb)) @:ALLOCATE(Rmin_stats(1:nBubs_glb)) @@ -114,6 +143,7 @@ contains @:ALLOCATE(gas_betaT(1:nBubs_glb)) @:ALLOCATE(gas_betaC(1:nBubs_glb)) @:ALLOCATE(bub_dphidt(1:nBubs_glb)) + @:ALLOCATE(lag_id(1:nBubs_glb, 1:2)) @:ALLOCATE(gas_p(1:nBubs_glb, 1:2)) @:ALLOCATE(gas_mv(1:nBubs_glb, 1:2)) @:ALLOCATE(intfc_rad(1:nBubs_glb, 1:2)) @@ -129,23 +159,70 @@ contains @:ALLOCATE(mtn_dposdt(1:nBubs_glb, 1:3, 1:lag_num_ts)) @:ALLOCATE(mtn_dveldt(1:nBubs_glb, 1:3, 1:lag_num_ts)) + @:ALLOCATE(keep_bubble(1:nBubs_glb)) + @:ALLOCATE(wrap_bubble_loc(1:nBubs_glb, 1:num_dims), wrap_bubble_dir(1:nBubs_glb, 1:num_dims)) + if (adap_dt .and. f_is_default(adap_dt_tol)) adap_dt_tol = dflt_adap_dt_tol + if (num_procs > 1) call s_initialize_particles_mpi(lag_num_ts) + ! Starting bubbles - call s_read_input_bubbles(q_cons_vf) + if (lag_params%write_void_evol) call s_open_void_evol + if (lag_params%write_bubbles) call s_open_lag_bubble_evol() + if (lag_params%write_bubbles_stats) call s_open_lag_bubble_stats() + + if (lag_params%vel_model > 0) then + moving_lag_bubbles = .true. + lag_pressure_force = lag_params%pressure_force + lag_gravity_force = lag_params%gravity_force + lag_vel_model = lag_params%vel_model + lag_drag_model = lag_params%drag_model + end if + $:GPU_UPDATE(device='[moving_lag_bubbles, lag_pressure_force, lag_gravity_force, lag_vel_model, lag_drag_model]') + + ! Allocate cell-centered pressure gradient arrays and FD coefficients + if (lag_params%vel_model > 0 .and. lag_params%pressure_force) then + @:ALLOCATE(grad_p_x(0:m, 0:n, 0:p)) + @:ALLOCATE(fd_coeff_x_pgrad(-fd_number:fd_number, 0:m)) + call s_compute_finite_difference_coefficients(m, x_cc, fd_coeff_x_pgrad, buff_size, fd_number, fd_order) + $:GPU_UPDATE(device='[fd_coeff_x_pgrad]') + if (n > 0) then + @:ALLOCATE(grad_p_y(0:m, 0:n, 0:p)) + @:ALLOCATE(fd_coeff_y_pgrad(-fd_number:fd_number, 0:n)) + call s_compute_finite_difference_coefficients(n, y_cc, fd_coeff_y_pgrad, buff_size, fd_number, fd_order) + $:GPU_UPDATE(device='[fd_coeff_y_pgrad]') + end if + if (p > 0) then + @:ALLOCATE(grad_p_z(0:m, 0:n, 0:p)) + @:ALLOCATE(fd_coeff_z_pgrad(-fd_number:fd_number, 0:p)) + call s_compute_finite_difference_coefficients(p, z_cc, fd_coeff_z_pgrad, buff_size, fd_number, fd_order) + $:GPU_UPDATE(device='[fd_coeff_z_pgrad]') + end if + end if + + ! Allocate cell list arrays for atomic-free Gaussian smearing + @:ALLOCATE(cell_list_start(0:m, 0:n, 0:p)) + @:ALLOCATE(cell_list_count(0:m, 0:n, 0:p)) + @:ALLOCATE(cell_list_idx(1:lag_params%nBubs_glb)) + + call s_read_input_bubbles(q_cons_vf, bc_type) end subroutine s_initialize_bubbles_EL_module - !> Read initial bubble data from input files - impure subroutine s_read_input_bubbles(q_cons_vf) + !> The purpose of this procedure is to obtain the initial bubbles' information + !! @param q_cons_vf Conservative variables + impure subroutine s_read_input_bubbles(q_cons_vf, bc_type) + + type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf + type(integer_field), dimension(1:num_dims,1:2), intent(in) :: bc_type + real(wp), dimension(8) :: inputBubble + real(wp) :: qtime + integer :: id, bub_id, save_count + integer :: i, ios + logical :: file_exist, indomain + integer, dimension(3) :: cell + character(LEN=path_len + 2*name_len) :: path_D_dir - type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf - real(wp), dimension(8) :: inputBubble - real(wp) :: qtime - integer :: id, bub_id, save_count - integer :: i, ios - logical :: file_exist, indomain - character(LEN=path_len + 2*name_len) :: path_D_dir ! Initialize number of particles bub_id = 0 @@ -162,9 +239,9 @@ contains if (save_count == 0) then if (proc_rank == 0) print *, 'Reading lagrange bubbles input file.' - inquire (file='input/lag_bubbles.dat', exist=file_exist) + call my_inquire(trim(lag_params%input_path), file_exist) if (file_exist) then - open (94, file='input/lag_bubbles.dat', form='formatted', iostat=ios) + open (94, file=trim(lag_params%input_path), form='formatted', iostat=ios) do while (ios == 0) read (94, *, iostat=ios) (inputBubble(i), i=1, 8) if (ios /= 0) cycle @@ -178,12 +255,12 @@ contains call s_add_bubbles(inputBubble, q_cons_vf, bub_id) lag_id(bub_id, 1) = id ! global ID lag_id(bub_id, 2) = bub_id ! local ID - nBubs = bub_id ! local number of bubbles + n_el_bubs_loc = bub_id ! local number of bubbles end if end do close (94) else - call s_mpi_abort("Initialize the lagrange bubbles in input/lag_bubbles.dat") + call s_mpi_abort("Initialize the lagrange bubbles in " // trim(lag_params%input_path)) end if else if (proc_rank == 0) print *, 'Restarting lagrange bubbles at save_count: ', save_count @@ -192,11 +269,21 @@ contains print *, " Lagrange bubbles running, in proc", proc_rank, "number:", bub_id, "/", id + if (num_procs > 1) then + call s_mpi_reduce_int_sum(n_el_bubs_loc, n_el_bubs_glb) + else + n_el_bubs_glb = n_el_bubs_loc + end if + + if (proc_rank == 0) then + if (n_el_bubs_glb == 0) call s_mpi_abort('No bubbles in the domain. Check ' // trim(lag_params%input_path)) + end if + $:GPU_UPDATE(device='[bubbles_lagrange, lag_params]') $:GPU_UPDATE(device='[lag_id, bub_R0, Rmax_stats, Rmin_stats, gas_mg, gas_betaT, gas_betaC, bub_dphidt, gas_p, gas_mv, & & intfc_rad, intfc_vel, mtn_pos, mtn_posPrev, mtn_vel, mtn_s, intfc_draddt, intfc_dveldt, gas_dpdt, & - & gas_dmvdt, mtn_dposdt, mtn_dveldt, nBubs]') + & gas_dmvdt, mtn_dposdt, mtn_dveldt, n_el_bubs_loc]') Rmax_glb = min(dflt_real, -dflt_real) Rmin_glb = max(dflt_real, -dflt_real) @@ -206,22 +293,28 @@ contains ! Populate temporal variables call s_transfer_data_to_tmp() - call s_smear_voidfraction() - - if (lag_params%write_bubbles) call s_write_lag_particles(qtime) + call s_smear_voidfraction(bc_type) if (save_count == 0) then ! Create ./D directory - write (path_D_dir, '(A,I0,A,I0)') trim(case_dir) // '/D' - call my_inquire(path_D_dir, file_exist) - if (.not. file_exist) call s_create_directory(trim(path_D_dir)) + if (proc_rank == 0) then + write (path_D_dir, '(A,I0,A,I0)') trim(case_dir) // '/D' + call my_inquire(trim(path_D_dir), file_exist) + if (.not. file_exist) call s_create_directory(trim(path_D_dir)) + end if + call s_mpi_barrier() call s_write_restart_lag_bubbles(save_count) ! Needed for post_processing - call s_write_void_evol(qtime) + if (lag_params%write_void_evol) call s_write_void_evol(qtime) end if + if (lag_params%write_bubbles) call s_write_lag_bubble_evol(qtime) + end subroutine s_read_input_bubbles - !> Add a new bubble from input data for a fresh start + !> The purpose of this procedure is to obtain the information of the bubbles when starting fresh + !! @param inputBubble Bubble information + !! @param q_cons_vf Conservative variables + !! @param bub_id Local id of the bubble impure subroutine s_add_bubbles(inputBubble, q_cons_vf, bub_id) type(scalar_field), dimension(sys_size), intent(in) :: q_cons_vf @@ -256,7 +349,7 @@ contains mtn_posPrev(bub_id,1:3,1) = mtn_pos(bub_id,1:3,1) end if - cell = -buff_size + cell = fd_number - buff_size call s_locate_cell(mtn_pos(bub_id,1:3,1), cell, mtn_s(bub_id,1:3,1)) ! Check if the bubble is located in the ghost cell of a symmetric, or wall boundary @@ -329,7 +422,9 @@ contains end subroutine s_add_bubbles - !> Restore bubble data from a restart file + !> The purpose of this procedure is to obtain the information of the bubbles from a restart point. + !! @param bub_id Local ID of the particle + !! @param save_count File identifier impure subroutine s_restart_bubbles(bub_id, save_count) integer, intent(inout) :: bub_id, save_count @@ -349,7 +444,6 @@ contains integer :: i integer, dimension(:), allocatable :: proc_bubble_counts real(wp), dimension(1:1,1:lag_io_vars) :: dummy - dummy = 0._wp ! Construct file path @@ -431,7 +525,7 @@ contains call MPI_FILE_CLOSE(ifile, ierr) call MPI_TYPE_FREE(view, ierr) - nBubs = bub_id + n_el_bubs_loc = bub_id do i = 1, bub_id lag_id(i, 1) = int(MPI_IO_DATA_lag_bubbles(i, 1)) @@ -455,7 +549,7 @@ contains deallocate (MPI_IO_DATA_lag_bubbles) else - nBubs = 0 + n_el_bubs_loc = 0 call MPI_TYPE_CONTIGUOUS(0, mpi_p, view, ierr) call MPI_TYPE_COMMIT(view, ierr) @@ -484,16 +578,20 @@ contains end subroutine s_restart_bubbles !> Contains the bubble dynamics subroutines. - subroutine s_compute_bubble_EL_dynamics(q_prim_vf, stage) - - type(scalar_field), dimension(sys_size), intent(inout) :: q_prim_vf - integer, intent(in) :: stage - real(wp) :: myVapFlux - real(wp) :: preterm1, term2, paux, pint, Romega, term1_fac - real(wp) :: myR_m, mygamma_m, myPb, myMass_n, myMass_v - real(wp) :: myR, myV, myBeta_c, myBeta_t, myR0, myPbdot, myMvdot - real(wp) :: myPinf, aux1, aux2, myCson, myRho - real(wp) :: gamma, pi_inf, qv + !! @param q_prim_vf Primitive variables + !! @param stage Current stage in the time-stepper algorithm + subroutine s_compute_bubble_EL_dynamics(q_prim_vf, bc_type, stage) + + type(scalar_field), dimension(sys_size), intent(inout) :: q_prim_vf + type(integer_field), dimension(1:num_dims,1:2), intent(in) :: bc_type + integer, intent(in) :: stage + real(wp) :: myVapFlux + real(wp) :: preterm1, term2, paux, pint, Romega, term1_fac + real(wp) :: myR_m, mygamma_m, myPb, myMass_n, myMass_v + real(wp) :: myR, myV, myBeta_c, myBeta_t, myR0, myPbdot, myMvdot + real(wp) :: myPinf, aux1, aux2, myCson, myRho + real(wp), dimension(3) :: myPos, myVel + real(wp) :: gamma, pi_inf, qv, f_b, myRe #:if not MFC_CASE_OPTIMIZATION and USING_AMD real(wp), dimension(3) :: myalpha_rho, myalpha @@ -502,17 +600,16 @@ contains #:endif real(wp), dimension(2) :: Re integer, dimension(3) :: cell - integer :: adap_dt_stop_max, adap_dt_stop !< Fail-safe exit if max iteration count reached + integer :: adap_dt_stop_sum, adap_dt_stop !< Fail-safe exit if max iteration count reached real(wp) :: dmalf, dmntait, dmBtait, dm_bub_adv_src, dm_divu !< Dummy variables for unified subgrid bubble subroutines - integer :: i, k, l - - call nvtxStartRange("LAGRANGE-BUBBLE-DYNAMICS") + integer :: k, l ! Subgrid p_inf model based on Maeda and Colonius (2018). if (lag_params%pressure_corrector) then + call nvtxStartRange("LAGRANGE-BUBBLE-PINF-CORRECTION") ! Calculate velocity potentials (valid for one bubble per cell) $:GPU_PARALLEL_LOOP(private='[k, cell, paux, preterm1, term2, Romega, myR0, myR, myV, myPb, pint, term1_fac]') - do k = 1, nBubs + do k = 1, n_el_bubs_loc call s_get_pinf(k, q_prim_vf, 2, paux, cell, preterm1, term2, Romega) myR0 = bub_R0(k) myR = intfc_rad(k, 2) @@ -529,16 +626,24 @@ contains end if end do $:END_GPU_PARALLEL_LOOP() + call nvtxEndRange() end if + ! Precompute cell-centered pressure gradients for translational motion + if (moving_lag_bubbles .and. lag_pressure_force) then + call nvtxStartRange("LAGRANGE-BUBBLE-PRESSURE-GRADIENT") + call s_compute_pressure_gradients(q_prim_vf) + call nvtxEndRange() + end if + + call nvtxStartRange("LAGRANGE-BUBBLE-DYNAMICS") ! Radial motion model - adap_dt_stop_max = 0 - $:GPU_PARALLEL_LOOP(private='[k, i, myalpha_rho, myalpha, Re, cell, myVapFlux, preterm1, term2, paux, pint, Romega, & + adap_dt_stop_sum = 0 + $:GPU_PARALLEL_LOOP(private='[k, myalpha_rho, myalpha, Re, cell, myVapFlux, preterm1, term2, paux, pint, Romega, & & term1_fac, myR_m, mygamma_m, myPb, myMass_n, myMass_v, myR, myV, myBeta_c, myBeta_t, myR0, myPbdot, & & myMvdot, myPinf, aux1, aux2, myCson, myRho, gamma, pi_inf, qv, dmalf, dmntait, dmBtait, & - & dm_bub_adv_src, dm_divu, adap_dt_stop]', reduction='[[adap_dt_stop_max]]',reductionOp='[MAX]', & - & copy = '[adap_dt_stop_max]', copyin = '[stage]') - do k = 1, nBubs + & dm_bub_adv_src, dm_divu, adap_dt_stop, myPos, myVel]', copy='[adap_dt_stop_sum]',copyin='[stage]') + do k = 1, n_el_bubs_loc ! Keller-Miksis model ! Current bubble state @@ -550,6 +655,8 @@ contains myBeta_c = gas_betaC(k) myBeta_t = gas_betaT(k) myR0 = bub_R0(k) + myPos = mtn_pos(k,:,2) + myVel = mtn_vel(k,:,2) ! Vapor and heat fluxes call s_vflux(myR, myV, myPb, myMass_v, k, myVapFlux, myMass_n, myBeta_c, myR_m, mygamma_m) @@ -568,44 +675,74 @@ contains adap_dt_stop = 0 if (adap_dt) then - call s_advance_step(myRho, myPinf, myR, myV, myR0, myPb, myPbdot, dmalf, dmntait, dmBtait, dm_bub_adv_src, & - & dm_divu, k, myMass_v, myMass_n, myBeta_c, myBeta_t, myCson, adap_dt_stop) + mtn_posPrev(k,:,1) = myPos + + myRe = Re(1) + adap_dt_stop = f_advance_step(myRho, myPinf, myR, myV, myR0, myPb, myPbdot, dmalf, dmntait, dmBtait, & + & dm_bub_adv_src, dm_divu, k, myMass_v, myMass_n, myBeta_c, myBeta_t, myCson, myRe, & + & myPos, myVel, cell, q_prim_vf) ! Update bubble state intfc_rad(k, 1) = myR intfc_vel(k, 1) = myV gas_p(k, 1) = myPb gas_mv(k, 1) = myMass_v + mtn_pos(k,:,1) = myPos + mtn_vel(k,:,1) = myVel else ! Radial acceleration from bubble models intfc_dveldt(k, stage) = f_rddot(myRho, myPinf, myR, myV, myR0, myPb, myPbdot, dmalf, dmntait, dmBtait, & & dm_bub_adv_src, dm_divu, myCson) + intfc_draddt(k, stage) = myV gas_dmvdt(k, stage) = myMvdot gas_dpdt(k, stage) = myPbdot + + if (moving_lag_bubbles) then + do l = 1, num_dims + select case (lag_vel_model) + case (1) + mtn_dposdt(k, l, stage) = f_interpolate_velocity(myPos(l), cell, l, q_prim_vf) + mtn_dveldt(k, l, stage) = 0._wp + case (2) + mtn_dposdt(k, l, stage) = myVel(l) + f_b = f_get_bubble_force(myPos(l), myR, myV, myVel(l), myMass_n, myMass_v, Re(1), myRho, cell, l, & + & q_prim_vf) + mtn_dveldt(k, l, stage) = f_b/(myMass_n + myMass_v) + case (3) + mtn_dposdt(k, l, stage) = myVel(l) + f_b = f_get_bubble_force(myPos(l), myR, myV, myVel(l), myMass_n, myMass_v, Re(1), myRho, cell, l, & + & q_prim_vf) + mtn_dveldt(k, l, stage) = 2._wp*f_b/(myMass_n + myMass_v) - 3._wp*myV*myVel(l)/myR + case default + mtn_dposdt(k, l, stage) = 0._wp + mtn_dveldt(k, l, stage) = 0._wp + end select + end do + end if end if - adap_dt_stop_max = max(adap_dt_stop_max, adap_dt_stop) + $:GPU_ATOMIC(atomic='update') + adap_dt_stop_sum = adap_dt_stop_sum + adap_dt_stop end do $:END_GPU_PARALLEL_LOOP() + call nvtxEndRange - if (adap_dt .and. adap_dt_stop_max > 0) call s_mpi_abort("Adaptive time stepping failed to converge.") - - ! Bubbles remain in a fixed position - $:GPU_PARALLEL_LOOP(collapse=2, private='[k, l]', copyin='[stage]') - do k = 1, nBubs - do l = 1, 3 - mtn_dposdt(k, l, stage) = 0._wp - mtn_dveldt(k, l, stage) = 0._wp - end do - end do - $:END_GPU_PARALLEL_LOOP() + if (adap_dt .and. adap_dt_stop_sum > 0) call s_mpi_abort("Adaptive time stepping failed to converge.") - call nvtxEndRange + if (adap_dt) then + call s_transfer_data_to_tmp() + if (moving_lag_bubbles) call s_enforce_EL_bubbles_boundary_conditions(q_prim_vf) + call s_smear_voidfraction(bc_type) + end if end subroutine s_compute_bubble_EL_dynamics - !> Compute the Lagrangian bubble source terms and add them to the RHS + !> The purpose of this subroutine is to obtain the bubble source terms based on Maeda and Colonius (2018) and add them to the + !! RHS scalar field. + !! @param q_cons_vf Conservative variables + !! @param q_prim_vf Conservative variables + !! @param rhs_vf Time derivative of the conservative variables subroutine s_compute_bubbles_EL_source(q_cons_vf, q_prim_vf, rhs_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf @@ -613,91 +750,96 @@ contains type(scalar_field), dimension(sys_size), intent(inout) :: rhs_vf integer :: i, j, k, l - if (.not. adap_dt) call s_smear_voidfraction() - - if (lag_params%solver_approach == 2) then - ! (q / (1 - beta)) * d(beta)/dt source - if (p == 0) then - $:GPU_PARALLEL_LOOP(private='[i, j, k, l]', collapse=4) - do k = 0, p - do j = 0, n - do i = 0, m - do l = 1, E_idx - if (q_beta(1)%sf(i, j, k) > (1._wp - lag_params%valmaxvoid)) then - rhs_vf(l)%sf(i, j, k) = rhs_vf(l)%sf(i, j, k) + q_cons_vf(l)%sf(i, j, k)*(q_beta(2)%sf(i, j, & - & k) + q_beta(5)%sf(i, j, k)) - end if - end do + call nvtxStartRange("LAGRANGE-BUBBLE-EL-SOURCE") + ! (q / (1 - beta)) * d(beta)/dt source + if (lag_params%cluster_type >= 4) then + $:GPU_PARALLEL_LOOP(private='[i, j, k, l]', collapse=4) + do k = idwint(3)%beg, idwint(3)%end + do j = idwint(2)%beg, idwint(2)%end + do i = idwint(1)%beg, idwint(1)%end + do l = 1, E_idx + if (q_beta(1)%sf(i, j, k) > (1._wp - lag_params%valmaxvoid)) then + rhs_vf(l)%sf(i, j, k) = rhs_vf(l)%sf(i, j, k) + q_cons_vf(l)%sf(i, j, k)*(q_beta(2)%sf(i, j, & + & k) + q_beta(5)%sf(i, j, k)) + end if end do end do end do - $:END_GPU_PARALLEL_LOOP() - else - $:GPU_PARALLEL_LOOP(private='[i, j, k, l]', collapse=4) - do k = 0, p - do j = 0, n - do i = 0, m - do l = 1, E_idx - if (q_beta(1)%sf(i, j, k) > (1._wp - lag_params%valmaxvoid)) then - rhs_vf(l)%sf(i, j, k) = rhs_vf(l)%sf(i, j, k) + q_cons_vf(l)%sf(i, j, k)/q_beta(1)%sf(i, j, & - & k)*q_beta(2)%sf(i, j, k) - end if - end do + end do + $:END_GPU_PARALLEL_LOOP() + else + $:GPU_PARALLEL_LOOP(private='[i, j, k, l]', collapse=4) + do k = idwint(3)%beg, idwint(3)%end + do j = idwint(2)%beg, idwint(2)%end + do i = idwint(1)%beg, idwint(1)%end + do l = 1, E_idx + if (q_beta(1)%sf(i, j, k) > (1._wp - lag_params%valmaxvoid)) then + rhs_vf(l)%sf(i, j, k) = rhs_vf(l)%sf(i, j, k) + (q_cons_vf(l)%sf(i, j, k)/q_beta(1)%sf(i, j, & + & k))*q_beta(2)%sf(i, j, k) + end if end do end do end do - $:END_GPU_PARALLEL_LOOP() - end if + end do + $:END_GPU_PARALLEL_LOOP() + end if - do l = 1, num_dims - call s_gradient_dir(q_prim_vf(E_idx)%sf, q_beta(3)%sf, l) + do l = 1, num_dims + call s_gradient_dir(q_prim_vf(E_idx)%sf, q_beta(3)%sf, l) - ! (q / (1 - beta)) * d(beta)/dt source - $:GPU_PARALLEL_LOOP(private='[i, j, k]', collapse=3) - do k = 0, p - do j = 0, n - do i = 0, m - if (q_beta(1)%sf(i, j, k) > (1._wp - lag_params%valmaxvoid)) then - rhs_vf(contxe + l)%sf(i, j, k) = rhs_vf(contxe + l)%sf(i, j, k) - (1._wp - q_beta(1)%sf(i, j, & - & k))/q_beta(1)%sf(i, j, k)*q_beta(3)%sf(i, j, k) - end if - end do + ! (q / (1 - beta)) * d(beta)/dt source + $:GPU_PARALLEL_LOOP(private='[i, j, k]', collapse=3) + do k = idwint(3)%beg, idwint(3)%end + do j = idwint(2)%beg, idwint(2)%end + do i = idwint(1)%beg, idwint(1)%end + if (q_beta(1)%sf(i, j, k) > (1._wp - lag_params%valmaxvoid)) then + rhs_vf(contxe + l)%sf(i, j, k) = rhs_vf(contxe + l)%sf(i, j, k) - (1._wp - q_beta(1)%sf(i, j, & + & k))/q_beta(1)%sf(i, j, k)*q_beta(3)%sf(i, j, k) + end if end do end do - $:END_GPU_PARALLEL_LOOP() + end do + $:END_GPU_PARALLEL_LOOP() - ! source in energy - $:GPU_PARALLEL_LOOP(private='[i, j, k]', collapse=3) - do k = idwbuff(3)%beg, idwbuff(3)%end - do j = idwbuff(2)%beg, idwbuff(2)%end - do i = idwbuff(1)%beg, idwbuff(1)%end - q_beta(3)%sf(i, j, k) = q_prim_vf(E_idx)%sf(i, j, k)*q_prim_vf(contxe + l)%sf(i, j, k) - end do + ! source in energy + $:GPU_PARALLEL_LOOP(private='[i, j, k]', collapse=3) + do k = idwbuff(3)%beg, idwbuff(3)%end + do j = idwbuff(2)%beg, idwbuff(2)%end + do i = idwbuff(1)%beg, idwbuff(1)%end + q_beta(3)%sf(i, j, k) = q_prim_vf(E_idx)%sf(i, j, k)*q_prim_vf(contxe + l)%sf(i, j, k) end do end do - $:END_GPU_PARALLEL_LOOP() + end do + $:END_GPU_PARALLEL_LOOP() - call s_gradient_dir(q_beta(3)%sf, q_beta(4)%sf, l) + call s_gradient_dir(q_beta(3)%sf, q_beta(4)%sf, l) - ! (beta / (1 - beta)) * d(Pu)/dl source - $:GPU_PARALLEL_LOOP(private='[i, j, k]', collapse=3) - do k = 0, p - do j = 0, n - do i = 0, m - if (q_beta(1)%sf(i, j, k) > (1._wp - lag_params%valmaxvoid)) then - rhs_vf(E_idx)%sf(i, j, k) = rhs_vf(E_idx)%sf(i, j, k) - q_beta(4)%sf(i, j, & - & k)*(1._wp - q_beta(1)%sf(i, j, k))/q_beta(1)%sf(i, j, k) - end if - end do + ! (beta / (1 - beta)) * d(Pu)/dl source + $:GPU_PARALLEL_LOOP(private='[i, j, k]', collapse=3) + do k = idwint(3)%beg, idwint(3)%end + do j = idwint(2)%beg, idwint(2)%end + do i = idwint(1)%beg, idwint(1)%end + if (q_beta(1)%sf(i, j, k) > (1._wp - lag_params%valmaxvoid)) then + rhs_vf(E_idx)%sf(i, j, k) = rhs_vf(E_idx)%sf(i, j, k) - q_beta(4)%sf(i, j, & + & k)*(1._wp - q_beta(1)%sf(i, j, k))/q_beta(1)%sf(i, j, k) + end if end do end do - $:END_GPU_PARALLEL_LOOP() end do - end if + $:END_GPU_PARALLEL_LOOP() + end do + call nvtxEndRange end subroutine s_compute_bubbles_EL_source - !> Compute the speed of sound from a given driving pressure + !> This procedure computes the speed of sound from a given driving pressure + !! @param q_prim_vf Primitive variables + !! @param pinf Driving pressure + !! @param cell Bubble cell + !! @param rhol Liquid density + !! @param gamma Liquid specific heat ratio + !! @param pi_inf Liquid stiffness + !! @param cson Calculated speed of sound subroutine s_compute_cson_from_pinf(q_prim_vf, pinf, cell, rhol, gamma, pi_inf, cson) $:GPU_ROUTINE(function_name='s_compute_cson_from_pinf', parallelism='[seq]', cray_inline=True) @@ -725,26 +867,38 @@ contains end subroutine s_compute_cson_from_pinf - !> Smear the bubble effects onto the Eulerian grid - subroutine s_smear_voidfraction() + !> The purpose of this subroutine is to smear the effect of the bubbles in the Eulerian framework + subroutine s_smear_voidfraction(bc_type) - integer :: i, j, k, l - - call nvtxStartRange("BUBBLES-LAGRANGE-KERNELS") + type(integer_field), dimension(1:num_dims,1:2), intent(in) :: bc_type + integer :: i, j, k, l + call nvtxStartRange("BUBBLES-LAGRANGE-SMEARING") $:GPU_PARALLEL_LOOP(private='[i, j, k, l]', collapse=4) do i = 1, q_beta_idx do l = idwbuff(3)%beg, idwbuff(3)%end do k = idwbuff(2)%beg, idwbuff(2)%end do j = idwbuff(1)%beg, idwbuff(1)%end q_beta(i)%sf(j, k, l) = 0._wp + kahan_comp(i)%sf(j, k, l) = 0._wp end do end do end do end do $:END_GPU_PARALLEL_LOOP() - call s_smoothfunction(nBubs, intfc_rad, intfc_vel, mtn_s, mtn_pos, q_beta) + ! Build cell list before smearing (CPU-side counting sort) + call s_build_cell_list(n_el_bubs_loc, mtn_s) + + call s_smoothfunction(n_el_bubs_loc, intfc_rad, intfc_vel, mtn_s, mtn_pos, q_beta, kahan_comp) + + call nvtxStartRange("BUBBLES-LAGRANGE-BETA-COMM") + if (lag_params%cluster_type >= 4) then + call s_populate_beta_buffers(q_beta, kahan_comp, bc_type, 3) + else + call s_populate_beta_buffers(q_beta, kahan_comp, bc_type, 2) + end if + call nvtxEndRange ! Store 1-beta $:GPU_PARALLEL_LOOP(private='[j, k, l]', collapse=3) @@ -758,12 +912,19 @@ contains end do end do $:END_GPU_PARALLEL_LOOP() - - call nvtxEndRange + call nvtxEndRange ! BUBBLES-LAGRANGE-SMEARING end subroutine s_smear_voidfraction - !> Compute the bubble driving pressure p_inf + !> The purpose of this procedure is obtain the bubble driving pressure p_inf + !! @param bub_id Particle identifier + !! @param q_prim_vf Primitive variables + !! @param ptype 1: p at infinity, 2: averaged P at the bubble location + !! @param f_pinfl Driving pressure + !! @param cell Bubble cell + !! @param preterm1 Pre-computed term 1 + !! @param term2 Computed term 2 + !! @param Romega Control volume radius subroutine s_get_pinf(bub_id, q_prim_vf, ptype, f_pinfl, cell, preterm1, term2, Romega) $:GPU_ROUTINE(function_name='s_get_pinf',parallelism='[seq]', cray_inline=True) @@ -773,91 +934,170 @@ contains real(wp), intent(out) :: f_pinfl integer, dimension(3), intent(out) :: cell real(wp), intent(out), optional :: preterm1, term2, Romega - real(wp), dimension(3) :: scoord, psi + real(wp), dimension(3) :: scoord, psi_pos, psi_x, psi_y, psi_z + real(wp) :: xi, eta, zeta real(wp) :: dc, vol, aux real(wp) :: volgas, term1, Rbeq, denom real(wp) :: charvol, charpres, charvol2, charpres2 integer, dimension(3) :: cellaux integer :: i, j, k integer :: smearGrid, smearGridz - logical :: celloutside - scoord = mtn_s(bub_id,1:3,2) f_pinfl = 0._wp - !> Find current bubble cell - cell(:) = int(scoord(:)) - $:GPU_LOOP(parallelism='[seq]') - do i = 1, num_dims - if (scoord(i) < 0._wp) cell(i) = cell(i) - 1 - end do + if (moving_lag_bubbles) then + cell = fd_number - buff_size + call s_locate_cell(mtn_pos(bub_id,1:3,2), cell, mtn_s(bub_id,1:3,2)) + scoord = mtn_s(bub_id,1:3,2) + else + scoord = mtn_s(bub_id,1:3,2) + cell(:) = int(scoord(:)) + $:GPU_LOOP(parallelism='[seq]') + do i = 1, num_dims + if (scoord(i) < 0._wp) cell(i) = cell(i) - 1 + end do + end if if ((lag_params%cluster_type == 1)) then !> Getting p_cell in terms of only the current cell by interpolation - !> Getting the cell volulme as Omega - if (p > 0) then - vol = dx(cell(1))*dy(cell(2))*dz(cell(3)) - else - if (cyl_coord) then - vol = dx(cell(1))*dy(cell(2))*y_cc(cell(2))*2._wp*pi + + if (fd_order == 2) then ! Bilinear interpolation + + if (p > 0) then + vol = dx(cell(1))*dy(cell(2))*dz(cell(3)) else - vol = dx(cell(1))*dy(cell(2))*lag_params%charwidth + if (cyl_coord) then + vol = dx(cell(1))*dy(cell(2))*y_cc(cell(2))*2._wp*pi + else + vol = dx(cell(1))*dy(cell(2))*lag_params%charwidth + end if end if - end if - !> Obtain bilinear interpolation coefficients, based on the current location of the bubble. - psi(1) = (scoord(1) - real(cell(1)))*dx(cell(1)) + x_cb(cell(1) - 1) - if (cell(1) == (m + buff_size)) then - cell(1) = cell(1) - 1 - psi(1) = 1._wp - else if (cell(1) == (-buff_size)) then - psi(1) = 0._wp - else - if (psi(1) < x_cc(cell(1))) cell(1) = cell(1) - 1 - psi(1) = abs((psi(1) - x_cc(cell(1)))/(x_cc(cell(1) + 1) - x_cc(cell(1)))) - end if + !> Obtain bilinear interpolation coefficients, based on the current location of the bubble. + psi_pos(1) = (scoord(1) - real(cell(1)))*dx(cell(1)) + x_cb(cell(1) - 1) + psi_pos(1) = abs((psi_pos(1) - x_cc(cell(1)))/(x_cc(cell(1) + 1) - x_cc(cell(1)))) - psi(2) = (scoord(2) - real(cell(2)))*dy(cell(2)) + y_cb(cell(2) - 1) - if (cell(2) == (n + buff_size)) then - cell(2) = cell(2) - 1 - psi(2) = 1._wp - else if (cell(2) == (-buff_size)) then - psi(2) = 0._wp - else - if (psi(2) < y_cc(cell(2))) cell(2) = cell(2) - 1 - psi(2) = abs((psi(2) - y_cc(cell(2)))/(y_cc(cell(2) + 1) - y_cc(cell(2)))) - end if + psi_pos(2) = (scoord(2) - real(cell(2)))*dy(cell(2)) + y_cb(cell(2) - 1) + psi_pos(2) = abs((psi_pos(2) - y_cc(cell(2)))/(y_cc(cell(2) + 1) - y_cc(cell(2)))) - if (p > 0) then - psi(3) = (scoord(3) - real(cell(3)))*dz(cell(3)) + z_cb(cell(3) - 1) - if (cell(3) == (p + buff_size)) then - cell(3) = cell(3) - 1 - psi(3) = 1._wp - else if (cell(3) == (-buff_size)) then - psi(3) = 0._wp + if (p > 0) then + psi_pos(3) = (scoord(3) - real(cell(3)))*dz(cell(3)) + z_cb(cell(3) - 1) + psi_pos(3) = abs((psi_pos(3) - z_cc(cell(3)))/(z_cc(cell(3) + 1) - z_cc(cell(3)))) else - if (psi(3) < z_cc(cell(3))) cell(3) = cell(3) - 1 - psi(3) = abs((psi(3) - z_cc(cell(3)))/(z_cc(cell(3) + 1) - z_cc(cell(3)))) + psi_pos(3) = 0._wp end if - else - psi(3) = 0._wp - end if - !> Perform bilinear interpolation - if (p == 0) then ! 2D - f_pinfl = q_prim_vf(E_idx)%sf(cell(1), cell(2), cell(3))*(1._wp - psi(1))*(1._wp - psi(2)) - f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1) + 1, cell(2), cell(3))*psi(1)*(1._wp - psi(2)) - f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1) + 1, cell(2) + 1, cell(3))*psi(1)*psi(2) - f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1), cell(2) + 1, cell(3))*(1._wp - psi(1))*psi(2) - else ! 3D - f_pinfl = q_prim_vf(E_idx)%sf(cell(1), cell(2), cell(3))*(1._wp - psi(1))*(1._wp - psi(2))*(1._wp - psi(3)) - f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1) + 1, cell(2), cell(3))*psi(1)*(1._wp - psi(2))*(1._wp - psi(3)) - f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1) + 1, cell(2) + 1, cell(3))*psi(1)*psi(2)*(1._wp - psi(3)) - f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1), cell(2) + 1, cell(3))*(1._wp - psi(1))*psi(2)*(1._wp - psi(3)) - f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1), cell(2), cell(3) + 1)*(1._wp - psi(1))*(1._wp - psi(2))*psi(3) - f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1) + 1, cell(2), cell(3) + 1)*psi(1)*(1._wp - psi(2))*psi(3) - f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1) + 1, cell(2) + 1, cell(3) + 1)*psi(1)*psi(2)*psi(3) - f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1), cell(2) + 1, cell(3) + 1)*(1._wp - psi(1))*psi(2)*psi(3) + ! Calculate bilinear basis functions for each direction For normalized coordinate xi in [0, 1], the two basis + ! functions are: phi_0(xi) = 1 - xi, phi_1(xi) = xi + + ! X-direction basis functions + psi_x(1) = 1._wp - psi_pos(1) ! Left basis function + psi_x(2) = psi_pos(1) ! Right basis function + + ! Y-direction basis functions + psi_y(1) = 1._wp - psi_pos(2) ! Left basis function + psi_y(2) = psi_pos(2) ! Right basis function + + if (p > 0) then + ! Z-direction basis functions + psi_z(1) = 1._wp - psi_pos(3) ! Left basis function + psi_z(2) = psi_pos(3) ! Right basis function + else ! 3D + psi_z(1) = 1._wp + psi_z(2) = 0._wp + end if + + !> Perform bilinear interpolation + f_pinfl = 0._wp + + if (p == 0) then + do j = 1, 2 + do i = 1, 2 + f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1) + i - 1, cell(2) + j - 1, cell(3))*psi_x(i)*psi_y(j) + end do + end do + else + do k = 1, 2 + do j = 1, 2 + do i = 1, 2 + f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1) + i - 1, cell(2) + j - 1, & + & cell(3) + k - 1)*psi_x(i)*psi_y(j)*psi_z(k) + end do + end do + end do + end if + else if (fd_order == 4) then ! Biquadratic interpolation + if (p > 0) then + vol = dx(cell(1))*dy(cell(2))*dz(cell(3)) + else + if (cyl_coord) then + vol = dx(cell(1))*dy(cell(2))*y_cc(cell(2))*2._wp*pi + else + vol = dx(cell(1))*dy(cell(2))*lag_params%charwidth + end if + end if + + !> Obtain biquadratic interpolation coefficients, based on the current location of the bubble. + ! For biquadratic interpolation, we need coefficients for 3 points in each direction + psi_pos(1) = (scoord(1) - real(cell(1)))*dx(cell(1)) + x_cb(cell(1) - 1) + psi_pos(1) = (psi_pos(1) - x_cc(cell(1)))/(x_cc(cell(1) + 1) - x_cc(cell(1))) + + psi_pos(2) = (scoord(2) - real(cell(2)))*dy(cell(2)) + y_cb(cell(2) - 1) + psi_pos(2) = (psi_pos(2) - y_cc(cell(2)))/(y_cc(cell(2) + 1) - y_cc(cell(2))) + + if (p > 0) then + psi_pos(3) = (scoord(3) - real(cell(3)))*dz(cell(3)) + z_cb(cell(3) - 1) + psi_pos(3) = (psi_pos(3) - z_cc(cell(3)))/(z_cc(cell(3) + 1) - z_cc(cell(3))) + else + psi_pos(3) = 0._wp + end if + + ! Calculate biquadratic basis functions for each direction For normalized coordinate xi in [-1, 1], the three basis + ! functions are: phi_0(xi) = xi*(xi-1)/2, phi_1(xi) = (1-xi)*(1+xi), phi_2(xi) = xi*(xi+1)/2 + + ! X-direction basis functions + xi = 2._wp*psi_pos(1) - 1._wp ! Convert to [-1, 1] range + psi_x(1) = xi*(xi - 1._wp)/2._wp ! Left basis function + psi_x(2) = (1._wp - xi)*(1._wp + xi) ! Center basis function + psi_x(3) = xi*(xi + 1._wp)/2._wp ! Right basis function + + ! Y-direction basis functions + eta = 2._wp*psi_pos(2) - 1._wp ! Convert to [-1, 1] range + psi_y(1) = eta*(eta - 1._wp)/2._wp ! Left basis function + psi_y(2) = (1._wp - eta)*(1._wp + eta) ! Center basis function + psi_y(3) = eta*(eta + 1._wp)/2._wp ! Right basis function + + if (p > 0) then + ! Z-direction basis functions + zeta = 2._wp*psi_pos(3) - 1._wp ! Convert to [-1, 1] range + psi_z(1) = zeta*(zeta - 1._wp)/2._wp ! Left basis function + psi_z(2) = (1._wp - zeta)*(1._wp + zeta) ! Center basis function + psi_z(3) = zeta*(zeta + 1._wp)/2._wp ! Right basis function + else + psi_z(1) = 0._wp + psi_z(2) = 1._wp + psi_z(3) = 0._wp + end if + + !> Perform biquadratic interpolation + f_pinfl = 0._wp + + if (p == 0) then ! 2D + do j = 1, 3 + do i = 1, 3 + f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1) + i - 2, cell(2) + j - 2, cell(3))*psi_x(i)*psi_y(j) + end do + end do + else + do k = 1, 3 + do j = 1, 3 + do i = 1, 3 + f_pinfl = f_pinfl + q_prim_vf(E_idx)%sf(cell(1) + i - 2, cell(2) + j - 2, & + & cell(3) + k - 2)*psi_x(i)*psi_y(j)*psi_z(k) + end do + end do + end do + end if end if ! R_Omega @@ -887,56 +1127,25 @@ contains cellaux(3) = cell(3) + k - (mapCells + 1) if (p == 0) cellaux(3) = 0 - !> check if the current cell is outside the computational domain or not (including ghost cells) - celloutside = .false. - if (num_dims == 2) then - if ((cellaux(1) < -buff_size) .or. (cellaux(2) < -buff_size)) then - celloutside = .true. - end if - if (cyl_coord .and. y_cc(cellaux(2)) < 0._wp) then - celloutside = .true. - end if - if ((cellaux(2) > n + buff_size) .or. (cellaux(1) > m + buff_size)) then - celloutside = .true. - end if + !> Obtaining the cell volume + if (p > 0) then + vol = dx(cellaux(1))*dy(cellaux(2))*dz(cellaux(3)) else - if ((cellaux(3) < -buff_size) .or. (cellaux(1) < -buff_size) .or. (cellaux(2) < -buff_size)) then - celloutside = .true. - end if - - if ((cellaux(3) > p + buff_size) .or. (cellaux(2) > n + buff_size) .or. (cellaux(1) > m + buff_size)) & - & then - celloutside = .true. - end if - end if - if (.not. celloutside) then - if (cyl_coord .and. (p == 0) .and. (y_cc(cellaux(2)) < 0._wp)) then - celloutside = .true. - end if - end if - - if (.not. celloutside) then - !> Obtaining the cell volulme - if (p > 0) then - vol = dx(cellaux(1))*dy(cellaux(2))*dz(cellaux(3)) + if (cyl_coord) then + vol = dx(cellaux(1))*dy(cellaux(2))*y_cc(cellaux(2))*2._wp*pi else - if (cyl_coord) then - vol = dx(cellaux(1))*dy(cellaux(2))*y_cc(cellaux(2))*2._wp*pi - else - vol = dx(cellaux(1))*dy(cellaux(2))*lag_params%charwidth - end if + vol = dx(cellaux(1))*dy(cellaux(2))*lag_params%charwidth end if - !> Update values - charvol = charvol + vol - charpres = charpres + q_prim_vf(E_idx)%sf(cellaux(1), cellaux(2), cellaux(3))*vol - charvol2 = charvol2 + vol*q_beta(1)%sf(cellaux(1), cellaux(2), cellaux(3)) - charpres2 = charpres2 + q_prim_vf(E_idx)%sf(cellaux(1), cellaux(2), & - & cellaux(3))*vol*q_beta(1)%sf(cellaux(1), cellaux(2), cellaux(3)) end if + !> Update values + charvol = charvol + vol + charpres = charpres + q_prim_vf(E_idx)%sf(cellaux(1), cellaux(2), cellaux(3))*vol + charvol2 = charvol2 + vol*q_beta(1)%sf(cellaux(1), cellaux(2), cellaux(3)) + charpres2 = charpres2 + q_prim_vf(E_idx)%sf(cellaux(1), cellaux(2), & + & cellaux(3))*vol*q_beta(1)%sf(cellaux(1), cellaux(2), cellaux(3)) end do end do end do - f_pinfl = charpres2/charvol2 vol = charvol dc = (3._wp*abs(vol)/(4._wp*pi))**(1._wp/3._wp) @@ -966,126 +1175,343 @@ contains end subroutine s_get_pinf - !> Update Lagrangian bubble variables using TVD Runge-Kutta time stepping - impure subroutine s_update_lagrange_tdv_rk(stage) + !> This subroutine updates the Lagrange variables using the tvd RK time steppers. The time derivative of the bubble variables + !! must be stored at every stage to avoid precision errors. + !! @param stage Current tvd RK stage + impure subroutine s_update_lagrange_tdv_rk(q_prim_vf, bc_type, stage) - integer, intent(in) :: stage - integer :: k + type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf + type(integer_field), dimension(1:num_dims,1:2), intent(in) :: bc_type + integer, intent(in) :: stage + integer :: k if (time_stepper == 1) then ! 1st order TVD RK + $:GPU_PARALLEL_LOOP(private='[k]') - do k = 1, nBubs + do k = 1, n_el_bubs_loc ! u{1} = u{n} + dt * RHS{n} intfc_rad(k, 1) = intfc_rad(k, 1) + dt*intfc_draddt(k, 1) intfc_vel(k, 1) = intfc_vel(k, 1) + dt*intfc_dveldt(k, 1) - mtn_pos(k,1:3,1) = mtn_pos(k,1:3,1) + dt*mtn_dposdt(k,1:3,1) - mtn_vel(k,1:3,1) = mtn_vel(k,1:3,1) + dt*mtn_dveldt(k,1:3,1) gas_p(k, 1) = gas_p(k, 1) + dt*gas_dpdt(k, 1) gas_mv(k, 1) = gas_mv(k, 1) + dt*gas_dmvdt(k, 1) + if (moving_lag_bubbles) then + mtn_posPrev(k,1:3,1) = mtn_pos(k,1:3,1) + mtn_pos(k,1:3,1) = mtn_pos(k,1:3,1) + dt*mtn_dposdt(k,1:3,1) + mtn_vel(k,1:3,1) = mtn_vel(k,1:3,1) + dt*mtn_dveldt(k,1:3,1) + end if end do $:END_GPU_PARALLEL_LOOP() call s_transfer_data_to_tmp() - call s_write_void_evol(mytime) + if (moving_lag_bubbles) call s_enforce_EL_bubbles_boundary_conditions(q_prim_vf) + call s_smear_voidfraction(bc_type) + if (lag_params%write_void_evol) call s_write_void_evol(mytime) if (lag_params%write_bubbles_stats) call s_calculate_lag_bubble_stats() - if (lag_params%write_bubbles) then $:GPU_UPDATE(host='[gas_p, gas_mv, intfc_rad, intfc_vel]') - call s_write_lag_particles(mytime) + call s_write_lag_bubble_evol(mytime) end if else if (time_stepper == 2) then ! 2nd order TVD RK if (stage == 1) then $:GPU_PARALLEL_LOOP(private='[k]') - do k = 1, nBubs + do k = 1, n_el_bubs_loc ! u{1} = u{n} + dt * RHS{n} intfc_rad(k, 2) = intfc_rad(k, 1) + dt*intfc_draddt(k, 1) intfc_vel(k, 2) = intfc_vel(k, 1) + dt*intfc_dveldt(k, 1) - mtn_pos(k,1:3,2) = mtn_pos(k,1:3,1) + dt*mtn_dposdt(k,1:3,1) - mtn_vel(k,1:3,2) = mtn_vel(k,1:3,1) + dt*mtn_dveldt(k,1:3,1) gas_p(k, 2) = gas_p(k, 1) + dt*gas_dpdt(k, 1) gas_mv(k, 2) = gas_mv(k, 1) + dt*gas_dmvdt(k, 1) + if (moving_lag_bubbles) then + mtn_posPrev(k,1:3,2) = mtn_pos(k,1:3,1) + mtn_pos(k,1:3,2) = mtn_pos(k,1:3,1) + dt*mtn_dposdt(k,1:3,1) + mtn_vel(k,1:3,2) = mtn_vel(k,1:3,1) + dt*mtn_dveldt(k,1:3,1) + end if end do $:END_GPU_PARALLEL_LOOP() + + if (moving_lag_bubbles) call s_enforce_EL_bubbles_boundary_conditions(q_prim_vf) + call s_smear_voidfraction(bc_type) else if (stage == 2) then $:GPU_PARALLEL_LOOP(private='[k]') - do k = 1, nBubs + do k = 1, n_el_bubs_loc ! u{1} = u{n} + (1/2) * dt * (RHS{n} + RHS{1}) intfc_rad(k, 1) = intfc_rad(k, 1) + dt*(intfc_draddt(k, 1) + intfc_draddt(k, 2))/2._wp intfc_vel(k, 1) = intfc_vel(k, 1) + dt*(intfc_dveldt(k, 1) + intfc_dveldt(k, 2))/2._wp - mtn_pos(k,1:3,1) = mtn_pos(k,1:3,1) + dt*(mtn_dposdt(k,1:3,1) + mtn_dposdt(k,1:3,2))/2._wp - mtn_vel(k,1:3,1) = mtn_vel(k,1:3,1) + dt*(mtn_dveldt(k,1:3,1) + mtn_dveldt(k,1:3,2))/2._wp gas_p(k, 1) = gas_p(k, 1) + dt*(gas_dpdt(k, 1) + gas_dpdt(k, 2))/2._wp gas_mv(k, 1) = gas_mv(k, 1) + dt*(gas_dmvdt(k, 1) + gas_dmvdt(k, 2))/2._wp + if (moving_lag_bubbles) then + mtn_posPrev(k,1:3,1) = mtn_pos(k,1:3,2) + mtn_pos(k,1:3,1) = mtn_pos(k,1:3,1) + dt*(mtn_dposdt(k,1:3,1) + mtn_dposdt(k,1:3,2))/2._wp + mtn_vel(k,1:3,1) = mtn_vel(k,1:3,1) + dt*(mtn_dveldt(k,1:3,1) + mtn_dveldt(k,1:3,2))/2._wp + end if end do $:END_GPU_PARALLEL_LOOP() call s_transfer_data_to_tmp() - call s_write_void_evol(mytime) + if (moving_lag_bubbles) call s_enforce_EL_bubbles_boundary_conditions(q_prim_vf) + call s_smear_voidfraction(bc_type) + if (lag_params%write_void_evol) call s_write_void_evol(mytime) if (lag_params%write_bubbles_stats) call s_calculate_lag_bubble_stats() - if (lag_params%write_bubbles) then $:GPU_UPDATE(host='[gas_p, gas_mv, intfc_rad, intfc_vel]') - call s_write_lag_particles(mytime) + call s_write_lag_bubble_evol(mytime) end if end if else if (time_stepper == 3) then ! 3rd order TVD RK if (stage == 1) then $:GPU_PARALLEL_LOOP(private='[k]') - do k = 1, nBubs + do k = 1, n_el_bubs_loc ! u{1} = u{n} + dt * RHS{n} intfc_rad(k, 2) = intfc_rad(k, 1) + dt*intfc_draddt(k, 1) intfc_vel(k, 2) = intfc_vel(k, 1) + dt*intfc_dveldt(k, 1) - mtn_pos(k,1:3,2) = mtn_pos(k,1:3,1) + dt*mtn_dposdt(k,1:3,1) - mtn_vel(k,1:3,2) = mtn_vel(k,1:3,1) + dt*mtn_dveldt(k,1:3,1) gas_p(k, 2) = gas_p(k, 1) + dt*gas_dpdt(k, 1) gas_mv(k, 2) = gas_mv(k, 1) + dt*gas_dmvdt(k, 1) + if (moving_lag_bubbles) then + mtn_posPrev(k,1:3,2) = mtn_pos(k,1:3,1) + mtn_pos(k,1:3,2) = mtn_pos(k,1:3,1) + dt*mtn_dposdt(k,1:3,1) + mtn_vel(k,1:3,2) = mtn_vel(k,1:3,1) + dt*mtn_dveldt(k,1:3,1) + end if end do $:END_GPU_PARALLEL_LOOP() + + if (moving_lag_bubbles) call s_enforce_EL_bubbles_boundary_conditions(q_prim_vf) + call s_smear_voidfraction(bc_type) else if (stage == 2) then $:GPU_PARALLEL_LOOP(private='[k]') - do k = 1, nBubs + do k = 1, n_el_bubs_loc ! u{2} = u{n} + (1/4) * dt * [RHS{n} + RHS{1}] intfc_rad(k, 2) = intfc_rad(k, 1) + dt*(intfc_draddt(k, 1) + intfc_draddt(k, 2))/4._wp intfc_vel(k, 2) = intfc_vel(k, 1) + dt*(intfc_dveldt(k, 1) + intfc_dveldt(k, 2))/4._wp - mtn_pos(k,1:3,2) = mtn_pos(k,1:3,1) + dt*(mtn_dposdt(k,1:3,1) + mtn_dposdt(k,1:3,2))/4._wp - mtn_vel(k,1:3,2) = mtn_vel(k,1:3,1) + dt*(mtn_dveldt(k,1:3,1) + mtn_dveldt(k,1:3,2))/4._wp gas_p(k, 2) = gas_p(k, 1) + dt*(gas_dpdt(k, 1) + gas_dpdt(k, 2))/4._wp gas_mv(k, 2) = gas_mv(k, 1) + dt*(gas_dmvdt(k, 1) + gas_dmvdt(k, 2))/4._wp + if (moving_lag_bubbles) then + mtn_posPrev(k,1:3,2) = mtn_pos(k,1:3,2) + mtn_pos(k,1:3,2) = mtn_pos(k,1:3,1) + dt*(mtn_dposdt(k,1:3,1) + mtn_dposdt(k,1:3,2))/4._wp + mtn_vel(k,1:3,2) = mtn_vel(k,1:3,1) + dt*(mtn_dveldt(k,1:3,1) + mtn_dveldt(k,1:3,2))/4._wp + end if end do $:END_GPU_PARALLEL_LOOP() + + if (moving_lag_bubbles) call s_enforce_EL_bubbles_boundary_conditions(q_prim_vf) + call s_smear_voidfraction(bc_type) else if (stage == 3) then $:GPU_PARALLEL_LOOP(private='[k]') - do k = 1, nBubs + do k = 1, n_el_bubs_loc ! u{n+1} = u{n} + (2/3) * dt * [(1/4)* RHS{n} + (1/4)* RHS{1} + RHS{2}] intfc_rad(k, 1) = intfc_rad(k, 1) + (2._wp/3._wp)*dt*(intfc_draddt(k, 1)/4._wp + intfc_draddt(k, & & 2)/4._wp + intfc_draddt(k, 3)) intfc_vel(k, 1) = intfc_vel(k, 1) + (2._wp/3._wp)*dt*(intfc_dveldt(k, 1)/4._wp + intfc_dveldt(k, & & 2)/4._wp + intfc_dveldt(k, 3)) - mtn_pos(k,1:3,1) = mtn_pos(k,1:3,1) + (2._wp/3._wp)*dt*(mtn_dposdt(k,1:3,1)/4._wp + mtn_dposdt(k,1:3, & - & 2)/4._wp + mtn_dposdt(k,1:3,3)) - mtn_vel(k,1:3,1) = mtn_vel(k,1:3,1) + (2._wp/3._wp)*dt*(mtn_dveldt(k,1:3,1)/4._wp + mtn_dveldt(k,1:3, & - & 2)/4._wp + mtn_dveldt(k,1:3,3)) gas_p(k, 1) = gas_p(k, 1) + (2._wp/3._wp)*dt*(gas_dpdt(k, 1)/4._wp + gas_dpdt(k, 2)/4._wp + gas_dpdt(k, 3)) gas_mv(k, 1) = gas_mv(k, 1) + (2._wp/3._wp)*dt*(gas_dmvdt(k, 1)/4._wp + gas_dmvdt(k, 2)/4._wp + gas_dmvdt(k, 3)) + if (moving_lag_bubbles) then + mtn_posPrev(k,1:3,1) = mtn_pos(k,1:3,2) + mtn_pos(k,1:3,1) = mtn_pos(k,1:3,1) + (2._wp/3._wp)*dt*(mtn_dposdt(k,1:3,1)/4._wp + mtn_dposdt(k,1:3, & + & 2)/4._wp + mtn_dposdt(k,1:3,3)) + mtn_vel(k,1:3,1) = mtn_vel(k,1:3,1) + (2._wp/3._wp)*dt*(mtn_dveldt(k,1:3,1)/4._wp + mtn_dveldt(k,1:3, & + & 2)/4._wp + mtn_dveldt(k,1:3,3)) + end if end do $:END_GPU_PARALLEL_LOOP() call s_transfer_data_to_tmp() - call s_write_void_evol(mytime) + if (moving_lag_bubbles) call s_enforce_EL_bubbles_boundary_conditions(q_prim_vf) + call s_smear_voidfraction(bc_type) + if (lag_params%write_void_evol) call s_write_void_evol(mytime) if (lag_params%write_bubbles_stats) call s_calculate_lag_bubble_stats() - if (lag_params%write_bubbles) then $:GPU_UPDATE(host='[gas_p, gas_mv, gas_mg, intfc_rad, intfc_vel]') - call s_write_lag_particles(mytime) + call s_write_lag_bubble_evol(mytime) end if end if end if end subroutine s_update_lagrange_tdv_rk - !> Locate the cell index for a given physical position + !> This subroutine enforces reflective and wall boundary conditions for EL bubbles + !! @param dest Destination for the bubble position update + impure subroutine s_enforce_EL_bubbles_boundary_conditions(q_prim_vf) + + type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf + integer :: k, i, q + integer :: patch_id, newBubs, new_idx + real(wp) :: offset + integer, dimension(3) :: cell + + call nvtxStartRange("LAG-BC") + call nvtxStartRange("LAG-BC-DEV2HOST") + $:GPU_UPDATE(host='[bub_R0, Rmax_stats, Rmin_stats, gas_mg, gas_betaT, gas_betaC, bub_dphidt, lag_id, gas_p, gas_mv, & + & intfc_rad, intfc_vel, mtn_pos, mtn_posPrev, mtn_vel, mtn_s, intfc_draddt, intfc_dveldt, gas_dpdt, & + & gas_dmvdt, mtn_dposdt, mtn_dveldt, keep_bubble, n_el_bubs_loc, wrap_bubble_dir, wrap_bubble_loc]') + call nvtxEndRange + + ! Handle MPI transfer of bubbles going to another processor's local domain + if (num_procs > 1) then + call nvtxStartRange("LAG-BC-TRANSFER-LIST") + call s_add_particles_to_transfer_list(n_el_bubs_loc, mtn_pos(:,:,2), mtn_posPrev(:,:,2)) + call nvtxEndRange + + call nvtxStartRange("LAG-BC-SENDRECV") + call s_mpi_sendrecv_particles(bub_R0, Rmax_stats, Rmin_stats, gas_mg, gas_betaT, gas_betaC, bub_dphidt, lag_id, & + & gas_p, gas_mv, intfc_rad, intfc_vel, mtn_pos, mtn_posPrev, mtn_vel, mtn_s, & + & intfc_draddt, intfc_dveldt, gas_dpdt, gas_dmvdt, mtn_dposdt, mtn_dveldt, lag_num_ts, & + & n_el_bubs_loc, 2) + call nvtxEndRange + end if + + call nvtxStartRange("LAG-BC-HOST2DEV") + $:GPU_UPDATE(device='[bub_R0, Rmax_stats, Rmin_stats, gas_mg, gas_betaT, gas_betaC, bub_dphidt, lag_id, gas_p, gas_mv, & + & intfc_rad, intfc_vel, mtn_pos, mtn_posPrev, mtn_vel, mtn_s, intfc_draddt, intfc_dveldt, gas_dpdt, & + & gas_dmvdt, mtn_dposdt, mtn_dveldt, n_el_bubs_loc]') + call nvtxEndRange + + $:GPU_PARALLEL_LOOP(private='[k, cell]') + do k = 1, n_el_bubs_loc + keep_bubble(k) = 1 + wrap_bubble_loc(k,:) = 0 + wrap_bubble_dir(k,:) = 0 + + ! Relocate bubbles at solid boundaries and delete bubbles that leave buffer regions + if (any(bc_x%beg == (/BC_REFLECTIVE, BC_CHAR_SLIP_WALL, BC_SLIP_WALL, BC_NO_SLIP_WALL/)) .and. mtn_pos(k, 1, & + & 2) < x_cb(-1) + intfc_rad(k, 2)) then + mtn_pos(k, 1, 2) = x_cb(-1) + intfc_rad(k, 2) + else if (any(bc_x%end == (/BC_REFLECTIVE, BC_CHAR_SLIP_WALL, BC_SLIP_WALL, BC_NO_SLIP_WALL/)) .and. mtn_pos(k, 1, & + & 2) > x_cb(m) - intfc_rad(k, 2)) then + mtn_pos(k, 1, 2) = x_cb(m) - intfc_rad(k, 2) + else if (bc_x%beg == BC_PERIODIC .and. mtn_pos(k, 1, 2) < pcomm_coords(1)%beg .and. mtn_posPrev(k, 1, & + & 2) >= pcomm_coords(1)%beg) then + wrap_bubble_dir(k, 1) = 1 + wrap_bubble_loc(k, 1) = -1 + else if (bc_x%end == BC_PERIODIC .and. mtn_pos(k, 1, 2) > pcomm_coords(1)%end .and. mtn_posPrev(k, 1, & + & 2) <= pcomm_coords(1)%end) then + wrap_bubble_dir(k, 1) = 1 + wrap_bubble_loc(k, 1) = 1 + else if (mtn_pos(k, 1, 2) >= x_cb(m)) then + keep_bubble(k) = 0 + else if (mtn_pos(k, 1, 2) < x_cb(-1)) then + keep_bubble(k) = 0 + end if + + if (any(bc_y%beg == (/BC_REFLECTIVE, BC_CHAR_SLIP_WALL, BC_SLIP_WALL, BC_NO_SLIP_WALL/)) .and. mtn_pos(k, 2, & + & 2) < y_cb(-1) + intfc_rad(k, 2)) then + mtn_pos(k, 2, 2) = y_cb(-1) + intfc_rad(k, 2) + else if (any(bc_y%end == (/BC_REFLECTIVE, BC_CHAR_SLIP_WALL, BC_SLIP_WALL, BC_NO_SLIP_WALL/)) .and. mtn_pos(k, 2, & + & 2) > y_cb(n) - intfc_rad(k, 2)) then + mtn_pos(k, 2, 2) = y_cb(n) - intfc_rad(k, 2) + else if (bc_y%beg == BC_PERIODIC .and. mtn_pos(k, 2, 2) < pcomm_coords(2)%beg .and. mtn_posPrev(k, 2, & + & 2) >= pcomm_coords(2)%beg) then + wrap_bubble_dir(k, 2) = 1 + wrap_bubble_loc(k, 2) = -1 + else if (bc_y%end == BC_PERIODIC .and. mtn_pos(k, 2, 2) > pcomm_coords(2)%end .and. mtn_posPrev(k, 2, & + & 2) <= pcomm_coords(2)%end) then + wrap_bubble_dir(k, 2) = 1 + wrap_bubble_loc(k, 2) = 1 + else if (mtn_pos(k, 2, 2) >= y_cb(n)) then + keep_bubble(k) = 0 + else if (mtn_pos(k, 2, 2) < y_cb(-1)) then + keep_bubble(k) = 0 + end if + + if (p > 0) then + if (any(bc_z%beg == (/BC_REFLECTIVE, BC_CHAR_SLIP_WALL, BC_SLIP_WALL, BC_NO_SLIP_WALL/)) .and. mtn_pos(k, 3, & + & 2) < z_cb(-1) + intfc_rad(k, 2)) then + mtn_pos(k, 3, 2) = z_cb(-1) + intfc_rad(k, 2) + else if (any(bc_z%end == (/BC_REFLECTIVE, BC_CHAR_SLIP_WALL, BC_SLIP_WALL, BC_NO_SLIP_WALL/)) .and. mtn_pos(k, 3, & + & 2) > z_cb(p) - intfc_rad(k, 2)) then + mtn_pos(k, 3, 2) = z_cb(p) - intfc_rad(k, 2) + else if (bc_z%beg == BC_PERIODIC .and. mtn_pos(k, 3, 2) < pcomm_coords(3)%beg .and. mtn_posPrev(k, 3, & + & 2) >= pcomm_coords(3)%beg) then + wrap_bubble_dir(k, 3) = 1 + wrap_bubble_loc(k, 3) = -1 + else if (bc_z%end == BC_PERIODIC .and. mtn_pos(k, 3, 2) > pcomm_coords(3)%end .and. mtn_posPrev(k, 3, & + & 2) <= pcomm_coords(3)%end) then + wrap_bubble_dir(k, 3) = 1 + wrap_bubble_loc(k, 3) = 1 + else if (mtn_pos(k, 3, 2) >= z_cb(p)) then + keep_bubble(k) = 0 + else if (mtn_pos(k, 3, 2) < z_cb(-1)) then + keep_bubble(k) = 0 + end if + end if + + if (keep_bubble(k) == 1) then + ! Remove bubbles that are no longer in a liquid + cell = fd_number - buff_size + call s_locate_cell(mtn_pos(k,1:3,2), cell, mtn_s(k,1:3,2)) + + if (q_prim_vf(advxb)%sf(cell(1), cell(2), cell(3)) < (1._wp - lag_params%valmaxvoid)) then + keep_bubble(k) = 0 + end if + end if + end do + $:END_GPU_PARALLEL_LOOP() + + if (n_el_bubs_loc > 0) then + call nvtxStartRange("LAG-BC-DEV2HOST") + $:GPU_UPDATE(host='[bub_R0, Rmax_stats, Rmin_stats, gas_mg, gas_betaT, gas_betaC, bub_dphidt, lag_id, gas_p, gas_mv, & + & intfc_rad, intfc_vel, mtn_pos, mtn_posPrev, mtn_vel, mtn_s, intfc_draddt, intfc_dveldt, gas_dpdt, & + & gas_dmvdt, mtn_dposdt, mtn_dveldt, keep_bubble, n_el_bubs_loc, wrap_bubble_dir, wrap_bubble_loc]') + call nvtxEndRange + + newBubs = 0 + do k = 1, n_el_bubs_loc + if (keep_bubble(k) == 1) then + newBubs = newBubs + 1 + if (newBubs /= k) then + call s_copy_lag_bubble(newBubs, k) + wrap_bubble_dir(newBubs,:) = wrap_bubble_dir(k,:) + wrap_bubble_loc(newBubs,:) = wrap_bubble_loc(k,:) + end if + end if + end do + n_el_bubs_loc = newBubs + + ! Handle periodic wrapping of bubbles on same processor + do k = 1, n_el_bubs_loc + if (any(wrap_bubble_dir(k,:) == 1)) then + do i = 1, num_dims + if (wrap_bubble_dir(k, i) == 1) then + offset = glb_bounds(i)%end - glb_bounds(i)%beg + if (wrap_bubble_loc(k, i) == 1) then + do q = 1, 2 + mtn_pos(k, i, q) = mtn_pos(k, i, q) - offset + mtn_posPrev(k, i, q) = mtn_posPrev(k, i, q) - offset + end do + else if (wrap_bubble_loc(k, i) == -1) then + do q = 1, 2 + mtn_pos(k, i, q) = mtn_pos(k, i, q) + offset + mtn_posPrev(k, i, q) = mtn_posPrev(k, i, q) + offset + end do + end if + end if + end do + end if + end do + call nvtxStartRange("LAG-BC-HOST2DEV") + $:GPU_UPDATE(device='[bub_R0, Rmax_stats, Rmin_stats, gas_mg, gas_betaT, gas_betaC, bub_dphidt, lag_id, gas_p, & + & gas_mv, intfc_rad, intfc_vel, mtn_pos, mtn_posPrev, mtn_vel, mtn_s, intfc_draddt, intfc_dveldt, & + & gas_dpdt, gas_dmvdt, mtn_dposdt, mtn_dveldt, n_el_bubs_loc]') + call nvtxEndRange + end if + + $:GPU_PARALLEL_LOOP(private='[cell]') + do k = 1, n_el_bubs_loc + cell = fd_number - buff_size + call s_locate_cell(mtn_pos(k,1:3,2), cell, mtn_s(k,1:3,2)) + end do + $:END_GPU_PARALLEL_LOOP() + + call nvtxEndRange ! LAG-BC + + end subroutine s_enforce_EL_bubbles_boundary_conditions + + !> This subroutine returns the computational coordinate of the cell for the given position. + !! @param pos Input coordinates + !! @param cell Computational coordinate of the cell + !! @param scoord Calculated particle coordinates subroutine s_locate_cell(pos, cell, scoord) + $:GPU_ROUTINE(function_name='s_locate_cell',parallelism='[seq]', cray_inline=True) + real(wp), dimension(3), intent(in) :: pos real(wp), dimension(3), intent(out) :: scoord integer, dimension(3), intent(inout) :: cell @@ -1095,7 +1521,7 @@ contains cell(1) = cell(1) - 1 end do - do while (pos(1) > x_cb(cell(1))) + do while (pos(1) >= x_cb(cell(1))) cell(1) = cell(1) + 1 end do @@ -1103,7 +1529,7 @@ contains cell(2) = cell(2) - 1 end do - do while (pos(2) > y_cb(cell(2))) + do while (pos(2) >= y_cb(cell(2))) cell(2) = cell(2) + 1 end do @@ -1111,7 +1537,7 @@ contains do while (pos(3) < z_cb(cell(3) - 1)) cell(3) = cell(3) - 1 end do - do while (pos(3) > z_cb(cell(3))) + do while (pos(3) >= z_cb(cell(3))) cell(3) = cell(3) + 1 end do end if @@ -1132,13 +1558,13 @@ contains end subroutine s_locate_cell - !> Transfer data into the temporal variables + !> This subroutine transfer data into the temporal variables. impure subroutine s_transfer_data_to_tmp() integer :: k $:GPU_PARALLEL_LOOP(private='[k]') - do k = 1, nBubs + do k = 1, n_el_bubs_loc gas_p(k, 2) = gas_p(k, 1) gas_mv(k, 2) = gas_mv(k, 1) intfc_rad(k, 2) = intfc_rad(k, 1) @@ -1152,7 +1578,9 @@ contains end subroutine s_transfer_data_to_tmp - !> Determine if a bubble position lies within the current MPI subdomain including ghost cells + !> The purpose of this procedure is to determine if the global coordinates of the bubbles are present in the current MPI + !! processor (including ghost cells). + !! @param pos_part Spatial coordinates of the bubble function particle_in_domain(pos_part) logical :: particle_in_domain @@ -1162,22 +1590,23 @@ contains if (p == 0 .and. cyl_coord .neqv. .true.) then ! Defining a virtual z-axis that has the same dimensions as y-axis defined in the input file - particle_in_domain = ((pos_part(1) < x_cb(m + buff_size)) .and. (pos_part(1) >= x_cb(-buff_size - 1)) & - & .and. (pos_part(2) < y_cb(n + buff_size)) .and. (pos_part(2) >= y_cb(-buff_size - 1)) & - & .and. (pos_part(3) < lag_params%charwidth/2._wp) .and. (pos_part(3) >= & - & -lag_params%charwidth/2._wp)) + particle_in_domain = ((pos_part(1) < x_cb(m + buff_size - fd_number)) .and. (pos_part(1) >= x_cb(fd_number & + & - buff_size - 1)) .and. (pos_part(2) < y_cb(n + buff_size - fd_number)) .and. (pos_part(2) & + & >= y_cb(fd_number - buff_size - 1)) .and. (pos_part(3) < lag_params%charwidth/2._wp) & + & .and. (pos_part(3) > -lag_params%charwidth/2._wp)) else ! cyl_coord - particle_in_domain = ((pos_part(1) < x_cb(m + buff_size)) .and. (pos_part(1) >= x_cb(-buff_size - 1)) & - & .and. (abs(pos_part(2)) < y_cb(n + buff_size)) .and. (abs(pos_part(2)) >= max(y_cb(-buff_size & - & - 1), 0._wp))) + particle_in_domain = ((pos_part(1) < x_cb(m + buff_size - fd_number)) .and. (pos_part(1) >= x_cb(fd_number & + & - buff_size - 1)) .and. (abs(pos_part(2)) < y_cb(n + buff_size - fd_number)) & + & .and. (abs(pos_part(2)) >= max(y_cb(fd_number - buff_size - 1), 0._wp))) end if ! 3D if (p > 0) then - particle_in_domain = ((pos_part(1) < x_cb(m + buff_size)) .and. (pos_part(1) >= x_cb(-buff_size - 1)) & - & .and. (pos_part(2) < y_cb(n + buff_size)) .and. (pos_part(2) >= y_cb(-buff_size - 1)) & - & .and. (pos_part(3) < z_cb(p + buff_size)) .and. (pos_part(3) >= z_cb(-buff_size - 1))) + particle_in_domain = ((pos_part(1) < x_cb(m + buff_size - fd_number)) .and. (pos_part(1) >= x_cb(fd_number & + & - buff_size - 1)) .and. (pos_part(2) < y_cb(n + buff_size - fd_number)) .and. (pos_part(2) & + & >= y_cb(fd_number - buff_size - 1)) .and. (pos_part(3) < z_cb(p + buff_size - fd_number)) & + & .and. (pos_part(3) >= z_cb(fd_number - buff_size - 1))) end if ! For symmetric and wall boundary condition @@ -1204,7 +1633,9 @@ contains end function particle_in_domain - !> Determine if a Lagrangian bubble is within the physical domain excluding ghost cells + !> The purpose of this procedure is to determine if the lagrangian bubble is located in the physical domain. The ghost cells are + !! not part of the physical domain. + !! @param pos_part Spatial coordinates of the bubble function particle_in_domain_physical(pos_part) logical :: particle_in_domain_physical @@ -1220,7 +1651,11 @@ contains end function particle_in_domain_physical - !> Compute the gradient of a scalar field using second-order central differences on a non-uniform grid + !> The purpose of this procedure is to calculate the gradient of a scalar field along the x, y and z directions following a + !! second-order central difference considering uneven widths + !! @param q Input scalar field + !! @param dq Output gradient of q + !! @param dir Gradient spatial direction subroutine s_gradient_dir(q, dq, dir) real(stp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:), intent(inout) :: q, dq @@ -1270,7 +1705,8 @@ contains end subroutine s_gradient_dir - !> Write Lagrangian bubble state data at each time step + !> Subroutine that writes on each time step the changes of the lagrangian bubbles. + !! @param qtime Current time impure subroutine s_write_lag_particles(qtime) real(wp), intent(in) :: qtime @@ -1281,7 +1717,34 @@ contains write (file_loc, '(A,I0,A)') 'lag_bubble_evol_', proc_rank, '.dat' file_loc = trim(case_dir) // '/D/' // trim(file_loc) - inquire (FILE=trim(file_loc), EXIST=file_exist) + call my_inquire(trim(file_loc), file_exist) + + if (precision == 1) then + FMT = "(A16,A14,8A16)" + else + FMT = "(A24,A14,8A24)" + end if + + if (.not. file_exist) then + open (LAG_EVOL_ID, FILE=trim(file_loc), form='formatted', position='rewind') + write (LAG_EVOL_ID, FMT) 'currentTime', 'particleID', 'x', 'y', 'z', 'coreVaporMass', 'coreVaporConcentration', & + & 'radius', 'interfaceVelocity', 'corePressure' + else + open (LAG_EVOL_ID, FILE=trim(file_loc), form='formatted', position='append') + end if + + end subroutine s_write_lag_particles + + !> @Brief Subroutine that opens the file to write the evolution of the lagrangian bubbles on each time step. + impure subroutine s_open_lag_bubble_evol() + + character(LEN=path_len + 2*name_len) :: file_loc + logical :: file_exist + character(LEN=25) :: FMT + + write (file_loc, '(A,I0,A)') 'lag_bubble_evol_', proc_rank, '.dat' + file_loc = trim(case_dir) // '/D/' // trim(file_loc) + call my_inquire(trim(file_loc), file_exist) if (precision == 1) then FMT = "(A16,A14,8A16)" @@ -1290,13 +1753,25 @@ contains end if if (.not. file_exist) then - open (11, FILE=trim(file_loc), form='formatted', position='rewind') - write (11, FMT) 'currentTime', 'particleID', 'x', 'y', 'z', 'coreVaporMass', 'coreVaporConcentration', 'radius', & - & 'interfaceVelocity', 'corePressure' + open (LAG_EVOL_ID, FILE=trim(file_loc), form='formatted', position='rewind') + write (LAG_EVOL_ID, FMT) 'currentTime', 'particleID', 'x', 'y', 'z', 'coreVaporMass', 'coreVaporConcentration', & + & 'radius', 'interfaceVelocity', 'corePressure' else - open (11, FILE=trim(file_loc), form='formatted', position='append') + open (LAG_EVOL_ID, FILE=trim(file_loc), form='formatted', position='append') end if + end subroutine s_open_lag_bubble_evol + + !> Subroutine that writes on each time step the changes of the lagrangian bubbles. + !! @param q_time Current time + impure subroutine s_write_lag_bubble_evol(qtime) + + real(wp), intent(in) :: qtime + integer :: k, ios + character(LEN=25) :: FMT + character(LEN=path_len + 2*name_len) :: file_loc, path + logical :: file_exist + if (precision == 1) then FMT = "(F16.8,I14,8F16.8)" else @@ -1304,37 +1779,53 @@ contains end if ! Cycle through list - do k = 1, nBubs - write (11, FMT) qtime, lag_id(k, 1), mtn_pos(k, 1, 1), mtn_pos(k, 2, 1), mtn_pos(k, 3, 1), gas_mv(k, 1), gas_mv(k, & - & 1)/(gas_mv(k, 1) + gas_mg(k)), intfc_rad(k, 1), intfc_vel(k, 1), gas_p(k, 1) + do k = 1, n_el_bubs_loc + write (LAG_EVOL_ID, FMT) qtime, lag_id(k, 1), mtn_pos(k, 1, 1), mtn_pos(k, 2, 1), mtn_pos(k, 3, 1), gas_mv(k, 1), & + & gas_mv(k, 1)/(gas_mv(k, 1) + gas_mg(k)), intfc_rad(k, 1), intfc_vel(k, 1), gas_p(k, 1) end do - close (11) + end subroutine s_write_lag_bubble_evol - end subroutine s_write_lag_particles + impure subroutine s_close_lag_bubble_evol - !> Write void fraction statistics at each time step - impure subroutine s_write_void_evol(qtime) + close (LAG_EVOL_ID) + + end subroutine s_close_lag_bubble_evol + + subroutine s_open_void_evol - real(wp), intent(in) :: qtime - real(wp) :: volcell, voltot - real(wp) :: lag_void_max, lag_void_avg, lag_vol - real(wp) :: void_max_glb, void_avg_glb, vol_glb - integer :: i, j, k character(LEN=path_len + 2*name_len) :: file_loc logical :: file_exist if (proc_rank == 0) then write (file_loc, '(A)') 'voidfraction.dat' file_loc = trim(case_dir) // '/D/' // trim(file_loc) - inquire (FILE=trim(file_loc), EXIST=file_exist) + call my_inquire(trim(file_loc), file_exist) if (.not. file_exist) then - open (12, FILE=trim(file_loc), form='formatted', position='rewind') + open (LAG_VOID_ID, FILE=trim(file_loc), form='formatted', position='rewind') + ! write (12, *) 'currentTime, averageVoidFraction, ', & 'maximumVoidFraction, totalParticlesVolume' write (12, *) + ! 'The averageVoidFraction value does ', & 'not reflect the real void fraction in the cloud since the ', & 'cells + ! which do not have bubbles are not accounted' else - open (12, FILE=trim(file_loc), form='formatted', position='append') + open (LAG_VOID_ID, FILE=trim(file_loc), form='formatted', position='append') end if end if + end subroutine s_open_void_evol + + !> Subroutine that writes some useful statistics related to the volume fraction of the particles (void fraction) in the + !! computational domain on each time step. + !! @param qtime Current time + impure subroutine s_write_void_evol(qtime) + + real(wp), intent(in) :: qtime + real(wp) :: volcell, voltot + real(wp) :: lag_void_max, lag_void_avg, lag_vol + real(wp) :: void_max_glb, void_avg_glb, vol_glb + integer :: i, j, k + character(LEN=path_len + 2*name_len) :: file_loc + logical :: file_exist + lag_void_max = 0._wp lag_void_avg = 0._wp lag_vol = 0._wp @@ -1370,13 +1861,19 @@ contains if (lag_vol > 0._wp) lag_void_avg = lag_void_avg/lag_vol if (proc_rank == 0) then - write (12, '(6X,4e24.8)') qtime, lag_void_avg, lag_void_max, voltot - close (12) + write (LAG_VOID_ID, '(6X,4e24.8)') qtime, lag_void_avg, lag_void_max, voltot end if end subroutine s_write_void_evol - !> Write restart files for the Lagrangian bubble solver + subroutine s_close_void_evol + + if (proc_rank == 0) close (LAG_VOID_ID) + + end subroutine s_close_void_evol + + !> Subroutine that writes the restarting files for the particles in the lagrangian solver. + !! @param t_step Current time step impure subroutine s_write_restart_lag_bubbles(t_step) ! Generic string used to store the address of a particular file @@ -1395,12 +1892,11 @@ contains integer, dimension(2) :: gsizes, lsizes, start_idx_part integer, allocatable :: proc_bubble_counts(:) real(wp), dimension(1:1,1:lag_io_vars) :: dummy - dummy = 0._wp bub_id = 0._wp - if (nBubs /= 0) then - do k = 1, nBubs + if (n_el_bubs_loc /= 0) then + do k = 1, n_el_bubs_loc if (particle_in_domain_physical(mtn_pos(k,1:3,1))) then bub_id = bub_id + 1 end if @@ -1458,26 +1954,25 @@ contains if (bub_id > 0) then allocate (MPI_IO_DATA_lag_bubbles(max(1, bub_id),1:lag_io_vars)) - i = 1 - do k = 1, nBubs - if (particle_in_domain_physical(mtn_pos(k,1:3,1))) then - MPI_IO_DATA_lag_bubbles(i, 1) = real(lag_id(k, 1)) - MPI_IO_DATA_lag_bubbles(i,2:4) = mtn_pos(k,1:3,1) - MPI_IO_DATA_lag_bubbles(i,5:7) = mtn_posPrev(k,1:3,1) - MPI_IO_DATA_lag_bubbles(i,8:10) = mtn_vel(k,1:3,1) - MPI_IO_DATA_lag_bubbles(i, 11) = intfc_rad(k, 1) - MPI_IO_DATA_lag_bubbles(i, 12) = intfc_vel(k, 1) - MPI_IO_DATA_lag_bubbles(i, 13) = bub_R0(k) - MPI_IO_DATA_lag_bubbles(i, 14) = Rmax_stats(k) - MPI_IO_DATA_lag_bubbles(i, 15) = Rmin_stats(k) - MPI_IO_DATA_lag_bubbles(i, 16) = bub_dphidt(k) - MPI_IO_DATA_lag_bubbles(i, 17) = gas_p(k, 1) - MPI_IO_DATA_lag_bubbles(i, 18) = gas_mv(k, 1) - MPI_IO_DATA_lag_bubbles(i, 19) = gas_mg(k) - MPI_IO_DATA_lag_bubbles(i, 20) = gas_betaT(k) - MPI_IO_DATA_lag_bubbles(i, 21) = gas_betaC(k) - i = i + 1 - end if + i = 0 + do k = 1, n_el_bubs_loc + if (.not. particle_in_domain_physical(mtn_pos(k,1:3,1))) cycle + i = i + 1 + MPI_IO_DATA_lag_bubbles(i, 1) = real(lag_id(k, 1)) + MPI_IO_DATA_lag_bubbles(i,2:4) = mtn_pos(k,1:3,1) + MPI_IO_DATA_lag_bubbles(i,5:7) = mtn_posPrev(k,1:3,1) + MPI_IO_DATA_lag_bubbles(i,8:10) = mtn_vel(k,1:3,1) + MPI_IO_DATA_lag_bubbles(i, 11) = intfc_rad(k, 1) + MPI_IO_DATA_lag_bubbles(i, 12) = intfc_vel(k, 1) + MPI_IO_DATA_lag_bubbles(i, 13) = bub_R0(k) + MPI_IO_DATA_lag_bubbles(i, 14) = Rmax_stats(k) + MPI_IO_DATA_lag_bubbles(i, 15) = Rmin_stats(k) + MPI_IO_DATA_lag_bubbles(i, 16) = bub_dphidt(k) + MPI_IO_DATA_lag_bubbles(i, 17) = gas_p(k, 1) + MPI_IO_DATA_lag_bubbles(i, 18) = gas_mv(k, 1) + MPI_IO_DATA_lag_bubbles(i, 19) = gas_mg(k) + MPI_IO_DATA_lag_bubbles(i, 20) = gas_betaT(k) + MPI_IO_DATA_lag_bubbles(i, 21) = gas_betaC(k) end do call MPI_TYPE_CREATE_SUBARRAY(2, gsizes, lsizes, start_idx_part, MPI_ORDER_FORTRAN, mpi_p, view, ierr) @@ -1516,14 +2011,14 @@ contains end subroutine s_write_restart_lag_bubbles - !> Compute the maximum and minimum radius of each bubble + !> This procedure calculates the maximum and minimum radius of each bubble. subroutine s_calculate_lag_bubble_stats() integer :: k $:GPU_PARALLEL_LOOP(private='[k]', reduction='[[Rmax_glb], [Rmin_glb]]', reductionOp='[MAX, MIN]', & & copy='[Rmax_glb, Rmin_glb]') - do k = 1, nBubs + do k = 1, n_el_bubs_loc Rmax_glb = max(Rmax_glb, intfc_rad(k, 1)/bub_R0(k)) Rmin_glb = min(Rmin_glb, intfc_rad(k, 1)/bub_R0(k)) Rmax_stats(k) = max(Rmax_stats(k), intfc_rad(k, 1)/bub_R0(k)) @@ -1533,17 +2028,15 @@ contains end subroutine s_calculate_lag_bubble_stats - !> Write the maximum and minimum radius statistics for each bubble - impure subroutine s_write_lag_bubble_stats() + impure subroutine s_open_lag_bubble_stats() - integer :: k character(LEN=path_len + 2*name_len) :: file_loc - character(len=20) :: FMT + character(LEN=20) :: FMT + logical :: file_exist write (file_loc, '(A,I0,A)') 'stats_lag_bubbles_', proc_rank, '.dat' file_loc = trim(case_dir) // '/D/' // trim(file_loc) - - $:GPU_UPDATE(host='[Rmax_glb, Rmin_glb]') + call my_inquire(trim(file_loc), file_exist) if (precision == 1) then FMT = "(A10,A14,5A16)" @@ -1551,68 +2044,89 @@ contains FMT = "(A10,A14,5A24)" end if - open (13, FILE=trim(file_loc), form='formatted', position='rewind') - write (13, FMT) 'proc_rank', 'particleID', 'x', 'y', 'z', 'Rmax_glb', 'Rmin_glb' - - if (precision == 1) then - FMT = "(I10,I14,5F16.8)" + if (.not. file_exist) then + open (LAG_STATS_ID, FILE=trim(file_loc), form='formatted', position='rewind') + write (LAG_STATS_ID, *) 'proc_rank, particleID, x, y, z, Rmax_glb, Rmin_glb' else - FMT = "(I10,I14,5F24.16)" + open (LAG_STATS_ID, FILE=trim(file_loc), form='formatted', position='append') end if - do k = 1, nBubs - write (13, FMT) proc_rank, lag_id(k, 1), mtn_pos(k, 1, 1), mtn_pos(k, 2, 1), mtn_pos(k, 3, 1), Rmax_stats(k), & - & Rmin_stats(k) - end do + end subroutine s_open_lag_bubble_stats - close (13) + !> Subroutine that writes the maximum and minimum radius of each bubble. + impure subroutine s_write_lag_bubble_stats() - end subroutine s_write_lag_bubble_stats + integer :: k + character(LEN=path_len + 2*name_len) :: file_loc + character(LEN=20) :: FMT - !> Remove a specific Lagrangian bubble when dt becomes too small - impure subroutine s_remove_lag_bubble(bub_id) + $:GPU_UPDATE(host='[Rmax_glb, Rmin_glb]') - integer, intent(in) :: bub_id - integer :: i + if (precision == 1) then + FMT = "(I10,I14,5F16.8)" + else + FMT = "(I10,I14,5F24.16)" + end if - $:GPU_LOOP(parallelism='[seq]') - do i = bub_id, nBubs - 1 - lag_id(i, 1) = lag_id(i + 1, 1) - bub_R0(i) = bub_R0(i + 1) - Rmax_stats(i) = Rmax_stats(i + 1) - Rmin_stats(i) = Rmin_stats(i + 1) - gas_mg(i) = gas_mg(i + 1) - gas_betaT(i) = gas_betaT(i + 1) - gas_betaC(i) = gas_betaC(i + 1) - bub_dphidt(i) = bub_dphidt(i + 1) - gas_p(i,1:2) = gas_p(i + 1,1:2) - gas_mv(i,1:2) = gas_mv(i + 1,1:2) - intfc_rad(i,1:2) = intfc_rad(i + 1,1:2) - intfc_vel(i,1:2) = intfc_vel(i + 1,1:2) - mtn_pos(i,1:3,1:2) = mtn_pos(i + 1,1:3,1:2) - mtn_posPrev(i,1:3,1:2) = mtn_posPrev(i + 1,1:3,1:2) - mtn_vel(i,1:3,1:2) = mtn_vel(i + 1,1:3,1:2) - mtn_s(i,1:3,1:2) = mtn_s(i + 1,1:3,1:2) - intfc_draddt(i,1:lag_num_ts) = intfc_draddt(i + 1,1:lag_num_ts) - intfc_dveldt(i,1:lag_num_ts) = intfc_dveldt(i + 1,1:lag_num_ts) - gas_dpdt(i,1:lag_num_ts) = gas_dpdt(i + 1,1:lag_num_ts) - gas_dmvdt(i,1:lag_num_ts) = gas_dmvdt(i + 1,1:lag_num_ts) + do k = 1, n_el_bubs_loc + write (LAG_STATS_ID, FMT) proc_rank, lag_id(k, 1), mtn_pos(k, 1, 1), mtn_pos(k, 2, 1), mtn_pos(k, 3, 1), & + & Rmax_stats(k), Rmin_stats(k) end do - nBubs = nBubs - 1 - $:GPU_UPDATE(device='[nBubs]') - - end subroutine s_remove_lag_bubble + end subroutine s_write_lag_bubble_stats - !> Finalize the Lagrangian bubble solver + subroutine s_close_lag_bubble_stats + + close (LAG_STATS_ID) + + end subroutine s_close_lag_bubble_stats + + !> The purpose of this subroutine is to remove one specific particle if dt is too small. + !! @param bub_id Particle id + impure subroutine s_copy_lag_bubble(dest, src) + + integer, intent(in) :: src, dest + + bub_R0(dest) = bub_R0(src) + Rmax_stats(dest) = Rmax_stats(src) + Rmin_stats(dest) = Rmin_stats(src) + gas_mg(dest) = gas_mg(src) + gas_betaT(dest) = gas_betaT(src) + gas_betaC(dest) = gas_betaC(src) + bub_dphidt(dest) = bub_dphidt(src) + lag_id(dest, 1) = lag_id(src, 1) + gas_p(dest,1:2) = gas_p(src,1:2) + gas_mv(dest,1:2) = gas_mv(src,1:2) + intfc_rad(dest,1:2) = intfc_rad(src,1:2) + intfc_vel(dest,1:2) = intfc_vel(src,1:2) + mtn_vel(dest,1:3,1:2) = mtn_vel(src,1:3,1:2) + mtn_s(dest,1:3,1:2) = mtn_s(src,1:3,1:2) + mtn_pos(dest,1:3,1:2) = mtn_pos(src,1:3,1:2) + mtn_posPrev(dest,1:3,1:2) = mtn_posPrev(src,1:3,1:2) + intfc_draddt(dest,1:lag_num_ts) = intfc_draddt(src,1:lag_num_ts) + intfc_dveldt(dest,1:lag_num_ts) = intfc_dveldt(src,1:lag_num_ts) + gas_dpdt(dest,1:lag_num_ts) = gas_dpdt(src,1:lag_num_ts) + gas_dmvdt(dest,1:lag_num_ts) = gas_dmvdt(src,1:lag_num_ts) + mtn_dposdt(dest,1:3,1:lag_num_ts) = mtn_dposdt(src,1:3,1:lag_num_ts) + mtn_dveldt(dest,1:3,1:lag_num_ts) = mtn_dveldt(src,1:3,1:lag_num_ts) + + end subroutine s_copy_lag_bubble + + !> The purpose of this subroutine is to deallocate variables impure subroutine s_finalize_lagrangian_solver() integer :: i + if (lag_params%write_void_evol) call s_close_void_evol + if (lag_params%write_bubbles) call s_close_lag_bubble_evol() + if (lag_params%write_bubbles_stats) call s_close_lag_bubble_stats() + do i = 1, q_beta_idx @:DEALLOCATE(q_beta(i)%sf) + @:DEALLOCATE(kahan_comp(i)%sf) end do @:DEALLOCATE(q_beta) + @:DEALLOCATE(kahan_comp) ! Deallocating space @:DEALLOCATE(lag_id) @@ -1638,6 +2152,28 @@ contains @:DEALLOCATE(mtn_dposdt) @:DEALLOCATE(mtn_dveldt) + @:DEALLOCATE(keep_bubble) + @:DEALLOCATE(wrap_bubble_loc, wrap_bubble_dir) + + ! Deallocate pressure gradient arrays and FD coefficients + if (lag_params%vel_model > 0 .and. lag_params%pressure_force) then + @:DEALLOCATE(grad_p_x) + @:DEALLOCATE(fd_coeff_x_pgrad) + if (n > 0) then + @:DEALLOCATE(grad_p_y) + @:DEALLOCATE(fd_coeff_y_pgrad) + if (p > 0) then + @:DEALLOCATE(grad_p_z) + @:DEALLOCATE(fd_coeff_z_pgrad) + end if + end if + end if + + ! Deallocate cell list arrays + @:DEALLOCATE(cell_list_start) + @:DEALLOCATE(cell_list_count) + @:DEALLOCATE(cell_list_idx) + end subroutine s_finalize_lagrangian_solver end module m_bubbles_EL diff --git a/src/simulation/m_bubbles_EL_kernels.fpp b/src/simulation/m_bubbles_EL_kernels.fpp index f1f80980b0..908faf5d23 100644 --- a/src/simulation/m_bubbles_EL_kernels.fpp +++ b/src/simulation/m_bubbles_EL_kernels.fpp @@ -11,166 +11,272 @@ module m_bubbles_EL_kernels implicit none + ! Cell-centered pressure gradients (precomputed for translational motion) + real(wp), allocatable, dimension(:,:,:) :: grad_p_x, grad_p_y, grad_p_z + $:GPU_DECLARE(create='[grad_p_x, grad_p_y, grad_p_z]') + + ! Finite-difference coefficients for pressure gradient computation + real(wp), allocatable, dimension(:,:) :: fd_coeff_x_pgrad + real(wp), allocatable, dimension(:,:) :: fd_coeff_y_pgrad + real(wp), allocatable, dimension(:,:) :: fd_coeff_z_pgrad + $:GPU_DECLARE(create='[fd_coeff_x_pgrad, fd_coeff_y_pgrad, fd_coeff_z_pgrad]') + + ! Cell list for bubble-to-cell mapping (rebuilt each RK stage before smearing) + integer, allocatable, dimension(:,:,:) :: cell_list_start ! (0:m, 0:n, 0:p) + integer, allocatable, dimension(:,:,:) :: cell_list_count ! (0:m, 0:n, 0:p) + integer, allocatable, dimension(:) :: cell_list_idx ! (1:nBubs_glb) sorted bubble indices + $:GPU_DECLARE(create='[cell_list_start, cell_list_count, cell_list_idx]') + contains - !> Smear the Lagrangian bubble effects onto the Eulerian grid using the selected kernel - subroutine s_smoothfunction(nBubs, lbk_rad, lbk_vel, lbk_s, lbk_pos, updatedvar) + !> The purpose of this subroutine is to smear the strength of the lagrangian bubbles into the Eulerian framework using different + !! approaches. + !! @param nBubs Number of lagrangian bubbles in the current domain + !! @param lbk_rad Radius of the bubbles + !! @param lbk_vel Interface velocity of the bubbles + !! @param lbk_s Computational coordinates of the bubbles + !! @param lbk_pos Spatial coordinates of the bubbles + !! @param updatedvar Eulerian variable to be updated + subroutine s_smoothfunction(nBubs, lbk_rad, lbk_vel, lbk_s, lbk_pos, updatedvar, kcomp) integer, intent(in) :: nBubs real(wp), dimension(1:lag_params%nBubs_glb,1:3,1:2), intent(in) :: lbk_s, lbk_pos real(wp), dimension(1:lag_params%nBubs_glb,1:2), intent(in) :: lbk_rad, lbk_vel type(scalar_field), dimension(:), intent(inout) :: updatedvar + type(scalar_field), dimension(:), intent(inout) :: kcomp smoothfunc:select case(lag_params%smooth_type) case (1) - call s_gaussian(nBubs, lbk_rad, lbk_vel, lbk_s, lbk_pos, updatedvar) + call s_gaussian(nBubs, lbk_rad, lbk_vel, lbk_s, lbk_pos, updatedvar, kcomp) case (2) - call s_deltafunc(nBubs, lbk_rad, lbk_vel, lbk_s, updatedvar) + call s_deltafunc(nBubs, lbk_rad, lbk_vel, lbk_s, updatedvar, kcomp) end select smoothfunc end subroutine s_smoothfunction - !> Apply the delta kernel function to map bubble effects onto the containing cell - subroutine s_deltafunc(nBubs, lbk_rad, lbk_vel, lbk_s, updatedvar) + !> Builds a sorted cell list mapping each interior cell (0:m,0:n,0:p) to its resident bubbles. Uses a counting-sort on the host + !! (O(nBubs + N_cells)). Must be called before s_gaussian each RK stage. + !! @param nBubs Number of lagrangian bubbles in the current domain + !! @param lbk_s Computational coordinates of the bubbles + subroutine s_build_cell_list(nBubs, lbk_s) integer, intent(in) :: nBubs real(wp), dimension(1:lag_params%nBubs_glb,1:3,1:2), intent(in) :: lbk_s - real(wp), dimension(1:lag_params%nBubs_glb,1:2), intent(in) :: lbk_rad, lbk_vel - type(scalar_field), dimension(:), intent(inout) :: updatedvar - integer, dimension(3) :: cell - real(wp) :: strength_vel, strength_vol - real(wp) :: addFun1, addFun2, addFun3 - real(wp) :: volpart, Vol + integer :: l, ci, cj, ck, idx real(wp), dimension(3) :: s_coord - integer :: l - $:GPU_PARALLEL_LOOP(private='[l, s_coord, cell]') + ! Bring current bubble positions to host + + $:GPU_UPDATE(host='[lbk_s]') + + ! Pass 1: zero counts and count bubbles per cell + cell_list_count = 0 do l = 1, nBubs - volpart = 4._wp/3._wp*pi*lbk_rad(l, 2)**3._wp s_coord(1:3) = lbk_s(l,1:3,2) - call s_get_cell(s_coord, cell) - - strength_vol = volpart - strength_vel = 4._wp*pi*lbk_rad(l, 2)**2._wp*lbk_vel(l, 2) + ci = int(s_coord(1)) + cj = int(s_coord(2)) + ck = int(s_coord(3)) + ! Clamp to interior (bubbles should already be in [0:m,0:n,0:p]) + ci = max(0, min(ci, m)) + cj = max(0, min(cj, n)) + ck = max(0, min(ck, p)) + cell_list_count(ci, cj, ck) = cell_list_count(ci, cj, ck) + 1 + end do - if (num_dims == 2) then - Vol = dx(cell(1))*dy(cell(2))*lag_params%charwidth - if (cyl_coord) Vol = dx(cell(1))*dy(cell(2))*y_cc(cell(2))*2._wp*pi - else - Vol = dx(cell(1))*dy(cell(2))*dz(cell(3)) - end if + ! Prefix sum to compute start indices (1-based into cell_list_idx) + idx = 1 + do ck = 0, p + do cj = 0, n + do ci = 0, m + cell_list_start(ci, cj, ck) = idx + idx = idx + cell_list_count(ci, cj, ck) + end do + end do + end do - ! Update void fraction field - addFun1 = strength_vol/Vol - $:GPU_ATOMIC(atomic='update') - updatedvar(1)%sf(cell(1), cell(2), cell(3)) = updatedvar(1)%sf(cell(1), cell(2), cell(3)) + real(addFun1, kind=stp) - - ! Update time derivative of void fraction - addFun2 = strength_vel/Vol - $:GPU_ATOMIC(atomic='update') - updatedvar(2)%sf(cell(1), cell(2), cell(3)) = updatedvar(2)%sf(cell(1), cell(2), cell(3)) + real(addFun2, kind=stp) - - ! Product of two smeared functions Update void fraction * time derivative of void fraction - if (lag_params%cluster_type >= 4) then - addFun3 = (strength_vol*strength_vel)/Vol - $:GPU_ATOMIC(atomic='update') - updatedvar(5)%sf(cell(1), cell(2), cell(3)) = updatedvar(5)%sf(cell(1), cell(2), cell(3)) + real(addFun3, kind=stp) - end if + ! Pass 2: place bubble indices into cell_list_idx Temporarily reuse cell_list_count as a running offset + cell_list_count = 0 + do l = 1, nBubs + s_coord(1:3) = lbk_s(l,1:3,2) + ci = int(s_coord(1)) + cj = int(s_coord(2)) + ck = int(s_coord(3)) + ci = max(0, min(ci, m)) + cj = max(0, min(cj, n)) + ck = max(0, min(ck, p)) + cell_list_idx(cell_list_start(ci, cj, ck) + cell_list_count(ci, cj, ck)) = l + cell_list_count(ci, cj, ck) = cell_list_count(ci, cj, ck) + 1 end do - $:END_GPU_PARALLEL_LOOP() - end subroutine s_deltafunc + ! Send cell list arrays to GPU + $:GPU_UPDATE(device='[cell_list_start, cell_list_count, cell_list_idx]') - !> Apply the Gaussian kernel function to smear bubble effects onto surrounding cells - subroutine s_gaussian(nBubs, lbk_rad, lbk_vel, lbk_s, lbk_pos, updatedvar) + end subroutine s_build_cell_list + + !> Cell-centric delta-function smearing using the cell list (no GPU atomics). Each bubble only affects the cell it resides in. + !! The outer GPU loop iterates over interior cells and sums contributions from resident bubbles. + subroutine s_deltafunc(nBubs, lbk_rad, lbk_vel, lbk_s, updatedvar, kcomp) integer, intent(in) :: nBubs - real(wp), dimension(1:lag_params%nBubs_glb,1:3,1:2), intent(in) :: lbk_s, lbk_pos + real(wp), dimension(1:lag_params%nBubs_glb,1:3,1:2), intent(in) :: lbk_s real(wp), dimension(1:lag_params%nBubs_glb,1:2), intent(in) :: lbk_rad, lbk_vel type(scalar_field), dimension(:), intent(inout) :: updatedvar - real(wp), dimension(3) :: center - integer, dimension(3) :: cell - real(wp) :: stddsv + type(scalar_field), dimension(:), intent(inout) :: kcomp real(wp) :: strength_vel, strength_vol - real(wp), dimension(3) :: nodecoord - real(wp) :: addFun1, addFun2, addFun3 - real(wp) :: func, func2, volpart - integer, dimension(3) :: cellaux - real(wp), dimension(3) :: s_coord - integer :: l, i, j, k - logical :: celloutside - integer :: smearGrid, smearGridz - - smearGrid = mapCells - (-mapCells) + 1 ! Include the cell that contains the bubble (3+1+3) - smearGridz = smearGrid - if (p == 0) smearGridz = 1 - - $:GPU_PARALLEL_LOOP(private='[nodecoord, l, s_coord, cell, center]', copyin='[smearGrid, smearGridz]') - do l = 1, nBubs - nodecoord(1:3) = 0 - center(1:3) = 0._wp - volpart = 4._wp/3._wp*pi*lbk_rad(l, 2)**3._wp - s_coord(1:3) = lbk_s(l,1:3,2) - center(1:2) = lbk_pos(l,1:2,2) - if (p > 0) center(3) = lbk_pos(l, 3, 2) - call s_get_cell(s_coord, cell) - call s_compute_stddsv(cell, volpart, stddsv) - - strength_vol = volpart - strength_vel = 4._wp*pi*lbk_rad(l, 2)**2._wp*lbk_vel(l, 2) - - $:GPU_LOOP(collapse=3,private='[cellaux, nodecoord]') - do i = 1, smearGrid - do j = 1, smearGrid - do k = 1, smearGridz - cellaux(1) = cell(1) + i - (mapCells + 1) - cellaux(2) = cell(2) + j - (mapCells + 1) - cellaux(3) = cell(3) + k - (mapCells + 1) - if (p == 0) cellaux(3) = 0 - - ! Check if the cells intended to smear the bubbles in are in the computational domain and redefine the cells - ! for symmetric boundary - call s_check_celloutside(cellaux, celloutside) - - if (.not. celloutside) then - nodecoord(1) = x_cc(cellaux(1)) - nodecoord(2) = y_cc(cellaux(2)) - if (p > 0) nodecoord(3) = z_cc(cellaux(3)) - call s_applygaussian(center, cellaux, nodecoord, stddsv, 0._wp, func) - if (lag_params%cluster_type >= 4) call s_applygaussian(center, cellaux, nodecoord, stddsv, 1._wp, func2) - - ! Relocate cells for bubbles intersecting symmetric boundaries - if (any((/bc_x%beg, bc_x%end, bc_y%beg, bc_y%end, bc_z%beg, bc_z%end/) == BC_REFLECTIVE)) then - call s_shift_cell_symmetric_bc(cellaux, cell) - end if - else - func = 0._wp - func2 = 0._wp - cellaux(1) = cell(1) - cellaux(2) = cell(2) - cellaux(3) = cell(3) - if (p == 0) cellaux(3) = 0 + real(wp) :: volpart, Vol + real(wp) :: y_kahan, t_kahan + integer :: i, j, k, lb, bub_idx + + $:GPU_PARALLEL_LOOP(collapse=3, & + & private='[i, j, k, lb, bub_idx, volpart, Vol, strength_vel, strength_vol, y_kahan, t_kahan]') + do k = 0, p + do j = 0, n + do i = 0, m + ! Cell volume + if (num_dims == 2) then + Vol = dx(i)*dy(j)*lag_params%charwidth + if (cyl_coord) Vol = dx(i)*dy(j)*y_cc(j)*2._wp*pi + else + Vol = dx(i)*dy(j)*dz(k) + end if + + ! Loop over bubbles in this cell + $:GPU_LOOP(parallelism='[seq]') + do lb = cell_list_start(i, j, k), cell_list_start(i, j, k) + cell_list_count(i, j, k) - 1 + bub_idx = cell_list_idx(lb) + + volpart = 4._wp/3._wp*pi*lbk_rad(bub_idx, 2)**3._wp + strength_vol = volpart + strength_vel = 4._wp*pi*lbk_rad(bub_idx, 2)**2._wp*lbk_vel(bub_idx, 2) + + ! Kahan summation for void fraction + y_kahan = real(strength_vol/Vol, kind=wp) - kcomp(1)%sf(i, j, k) + t_kahan = updatedvar(1)%sf(i, j, k) + y_kahan + kcomp(1)%sf(i, j, k) = (t_kahan - updatedvar(1)%sf(i, j, k)) - y_kahan + updatedvar(1)%sf(i, j, k) = t_kahan + + ! Kahan summation for time derivative of void fraction + y_kahan = real(strength_vel/Vol, kind=wp) - kcomp(2)%sf(i, j, k) + t_kahan = updatedvar(2)%sf(i, j, k) + y_kahan + kcomp(2)%sf(i, j, k) = (t_kahan - updatedvar(2)%sf(i, j, k)) - y_kahan + updatedvar(2)%sf(i, j, k) = t_kahan + + ! Product of two smeared functions + if (lag_params%cluster_type >= 4) then + y_kahan = real((strength_vol*strength_vel)/Vol, kind=wp) - kcomp(5)%sf(i, j, k) + t_kahan = updatedvar(5)%sf(i, j, k) + y_kahan + kcomp(5)%sf(i, j, k) = (t_kahan - updatedvar(5)%sf(i, j, k)) - y_kahan + updatedvar(5)%sf(i, j, k) = t_kahan end if + end do + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() - ! Update void fraction field - addFun1 = func*strength_vol - $:GPU_ATOMIC(atomic='update') - updatedvar(1)%sf(cellaux(1), cellaux(2), cellaux(3)) = updatedvar(1)%sf(cellaux(1), cellaux(2), & - & cellaux(3)) + real(addFun1, kind=stp) + end subroutine s_deltafunc - ! Update time derivative of void fraction - addFun2 = func*strength_vel - $:GPU_ATOMIC(atomic='update') - updatedvar(2)%sf(cellaux(1), cellaux(2), cellaux(3)) = updatedvar(2)%sf(cellaux(1), cellaux(2), & - & cellaux(3)) + real(addFun2, kind=stp) + !> Cell-centric gaussian smearing using the cell list (no GPU atomics). Each grid cell accumulates contributions from nearby + !! bubbles looked up via cell_list_start/count/idx. + subroutine s_gaussian(nBubs, lbk_rad, lbk_vel, lbk_s, lbk_pos, updatedvar, kcomp) - ! Product of two smeared functions Update void fraction * time derivative of void fraction - if (lag_params%cluster_type >= 4) then - addFun3 = func2*strength_vol*strength_vel - $:GPU_ATOMIC(atomic='update') - updatedvar(5)%sf(cellaux(1), cellaux(2), cellaux(3)) = updatedvar(5)%sf(cellaux(1), cellaux(2), & - & cellaux(3)) + real(addFun3, kind=stp) - end if + integer, intent(in) :: nBubs + real(wp), dimension(1:lag_params%nBubs_glb,1:3,1:2), intent(in) :: lbk_s, lbk_pos + real(wp), dimension(1:lag_params%nBubs_glb,1:2), intent(in) :: lbk_rad, lbk_vel + type(scalar_field), dimension(:), intent(inout) :: updatedvar + type(scalar_field), dimension(:), intent(inout) :: kcomp + real(wp), dimension(3) :: center, nodecoord, s_coord + integer, dimension(3) :: cell, cellijk + real(wp) :: stddsv, volpart + real(wp) :: strength_vel, strength_vol + real(wp) :: func, func2 + real(wp) :: y_kahan, t_kahan + integer :: i, j, k, di, dj, dk, lb, bub_idx + integer :: di_beg, di_end, dj_beg, dj_end, dk_beg, dk_end + integer :: smear_x_beg, smear_x_end + integer :: smear_y_beg, smear_y_end + integer :: smear_z_beg, smear_z_end + + ! Extended grid range for smearing (includes buffer cells for MPI communication) + + smear_x_beg = -mapCells - 1 + smear_x_end = m + mapCells + 1 + smear_y_beg = merge(-mapCells - 1, 0, n > 0) + smear_y_end = merge(n + mapCells + 1, n, n > 0) + smear_z_beg = merge(-mapCells - 1, 0, p > 0) + smear_z_end = merge(p + mapCells + 1, p, p > 0) + + $:GPU_PARALLEL_LOOP(collapse=3, private='[i, j, k, di, dj, dk, lb, bub_idx, center, nodecoord, s_coord, cell, cellijk, & + & stddsv, volpart, strength_vel, strength_vol, func, func2, y_kahan, t_kahan, di_beg, di_end, dj_beg, & + & dj_end, dk_beg, dk_end]', copyin='[smear_x_beg, smear_x_end, smear_y_beg, smear_y_end, smear_z_beg, & + & smear_z_end]') + do k = smear_z_beg, smear_z_end + do j = smear_y_beg, smear_y_end + do i = smear_x_beg, smear_x_end + cellijk(1) = i + cellijk(2) = j + cellijk(3) = k + + nodecoord(1) = x_cc(i) + nodecoord(2) = y_cc(j) + nodecoord(3) = 0._wp + if (p > 0) nodecoord(3) = z_cc(k) + + ! Neighbor cell range clamped to interior [0:m, 0:n, 0:p] + di_beg = max(i - mapCells, 0) + di_end = min(i + mapCells, m) + dj_beg = max(j - mapCells, 0) + dj_end = min(j + mapCells, n) + dk_beg = max(k - mapCells, 0) + dk_end = min(k + mapCells, p) + + $:GPU_LOOP(parallelism='[seq]') + do dk = dk_beg, dk_end + $:GPU_LOOP(parallelism='[seq]') + do dj = dj_beg, dj_end + $:GPU_LOOP(parallelism='[seq]') + do di = di_beg, di_end + $:GPU_LOOP(parallelism='[seq]') + do lb = cell_list_start(di, dj, dk), cell_list_start(di, dj, dk) + cell_list_count(di, dj, dk) - 1 + bub_idx = cell_list_idx(lb) + + ! Bubble properties + volpart = 4._wp/3._wp*pi*lbk_rad(bub_idx, 2)**3._wp + s_coord(1:3) = lbk_s(bub_idx,1:3,2) + call s_get_cell(s_coord, cell) + call s_compute_stddsv(cell, volpart, stddsv) + + strength_vol = volpart + strength_vel = 4._wp*pi*lbk_rad(bub_idx, 2)**2._wp*lbk_vel(bub_idx, 2) + + center(1:2) = lbk_pos(bub_idx,1:2,2) + center(3) = 0._wp + if (p > 0) center(3) = lbk_pos(bub_idx, 3, 2) + + call s_applygaussian(center, cellijk, nodecoord, stddsv, 0._wp, func) + + ! Kahan summation for void fraction + y_kahan = real(func*strength_vol, kind=wp) - kcomp(1)%sf(i, j, k) + t_kahan = updatedvar(1)%sf(i, j, k) + y_kahan + kcomp(1)%sf(i, j, k) = (t_kahan - updatedvar(1)%sf(i, j, k)) - y_kahan + updatedvar(1)%sf(i, j, k) = t_kahan + + ! Kahan summation for time derivative of void fraction + y_kahan = real(func*strength_vel, kind=wp) - kcomp(2)%sf(i, j, k) + t_kahan = updatedvar(2)%sf(i, j, k) + y_kahan + kcomp(2)%sf(i, j, k) = (t_kahan - updatedvar(2)%sf(i, j, k)) - y_kahan + updatedvar(2)%sf(i, j, k) = t_kahan + + if (lag_params%cluster_type >= 4) then + call s_applygaussian(center, cellijk, nodecoord, stddsv, 1._wp, func2) + y_kahan = real(func2*strength_vol*strength_vel, kind=wp) - kcomp(5)%sf(i, j, k) + t_kahan = updatedvar(5)%sf(i, j, k) + y_kahan + kcomp(5)%sf(i, j, k) = (t_kahan - updatedvar(5)%sf(i, j, k)) - y_kahan + updatedvar(5)%sf(i, j, k) = t_kahan + end if + end do + end do + end do end do end do end do @@ -179,7 +285,7 @@ contains end subroutine s_gaussian - !> Evaluate the Gaussian kernel at a grid node for a given bubble center + !> The purpose of this subroutine is to apply the gaussian kernel function for each bubble (Maeda and Colonius, 2018)). subroutine s_applygaussian(center, cellaux, nodecoord, stddsv, strength_idx, func) $:GPU_ROUTINE(function_name='s_applygaussian',parallelism='[seq]', cray_inline=True) @@ -190,8 +296,9 @@ contains real(wp), intent(in) :: stddsv real(wp), intent(in) :: strength_idx real(wp), intent(out) :: func + integer :: i real(wp) :: distance - real(wp) :: theta, dtheta, L2, dzp, Lz2 + real(wp) :: theta, dtheta, L2, dzp, Lz2, zc real(wp) :: Nr, Nr_count distance = sqrt((center(1) - nodecoord(1))**2._wp + (center(2) - nodecoord(2))**2._wp + (center(3) - nodecoord(3))**2._wp) @@ -222,28 +329,26 @@ contains & **(3._wp*(strength_idx + 1._wp)) end do else - !> 2D cartesian function: - ! We smear particles considering a virtual depth (lag_params%charwidth) - theta = 0._wp - Nr = ceiling(lag_params%charwidth/(y_cb(cellaux(2)) - y_cb(cellaux(2) - 1))) - Nr_count = 1._wp - mapCells*1._wp - dzp = y_cb(cellaux(2) + 1) - y_cb(cellaux(2)) - Lz2 = (center(3) - (dzp*(0.5_wp + Nr_count) - lag_params%charwidth/2._wp))**2._wp - distance = sqrt((center(1) - nodecoord(1))**2._wp + (center(2) - nodecoord(2))**2._wp + Lz2) - func = dzp/lag_params%charwidth*exp(-0.5_wp*(distance/stddsv)**2._wp)/(sqrt(2._wp*pi)*stddsv)**3._wp - do while (Nr_count < Nr - 1._wp + ((mapCells - 1)*1._wp)) - Nr_count = Nr_count + 1._wp - Lz2 = (center(3) - (dzp*(0.5_wp + Nr_count) - lag_params%charwidth/2._wp))**2._wp + !> 2D cartesian function: Equation (48) from Madea and Colonius 2018 + ! We smear particles considering a virtual depth (lag_params%charwidth) with lag_params%charNz cells + dzp = (lag_params%charwidth/(lag_params%charNz + 1._wp)) + + func = 0._wp + do i = 0, lag_params%charNz + zc = (-lag_params%charwidth/2._wp + dzp*(0.5_wp + i)) ! Center of virtual cell i in z-direction + Lz2 = (center(3) - zc)**2._wp distance = sqrt((center(1) - nodecoord(1))**2._wp + (center(2) - nodecoord(2))**2._wp + Lz2) - func = func + dzp/lag_params%charwidth*exp(-0.5_wp*(distance/stddsv)**2._wp)/(sqrt(2._wp*pi)*stddsv) & - & **(3._wp*(strength_idx + 1._wp)) + func = func + dzp/lag_params%charwidth*exp(-0.5_wp*(distance/stddsv)**2._wp)/(sqrt(2._wp*pi)*stddsv)**3._wp end do end if end if end subroutine s_applygaussian - !> Check if the current cell is outside the computational domain including ghost cells + !> The purpose of this subroutine is to check if the current cell is outside the computational domain or not (including ghost + !! cells). + !! @param cellaux Tested cell to smear the bubble effect in. + !! @param celloutside If true, then cellaux is outside the computational domain. subroutine s_check_celloutside(cellaux, celloutside) $:GPU_ROUTINE(function_name='s_check_celloutside',parallelism='[seq]', cray_inline=True) @@ -275,7 +380,9 @@ contains end subroutine s_check_celloutside - !> Relocate cells that intersect a symmetric boundary + !> This subroutine relocates the current cell, if it intersects a symmetric boundary. + !! @param cell Cell of the current bubble + !! @param cellaux Cell to map the bubble effect in. subroutine s_shift_cell_symmetric_bc(cellaux, cell) $:GPU_ROUTINE(function_name='s_shift_cell_symmetric_bc', parallelism='[seq]', cray_inline=True) @@ -312,6 +419,9 @@ contains end subroutine s_shift_cell_symmetric_bc !> Calculates the standard deviation of the bubble being smeared in the Eulerian framework. + !! @param cell Cell where the bubble is located + !! @param volpart Volume of the bubble + !! @param stddsv Standard deviaton subroutine s_compute_stddsv(cell, volpart, stddsv) $:GPU_ROUTINE(function_name='s_compute_stddsv',parallelism='[seq]', cray_inline=True) @@ -338,7 +448,7 @@ contains end if !> Compute Standard deviaton - if (((volpart/charvol) > 0.5_wp*lag_params%valmaxvoid) .or. (lag_params%smooth_type == 1)) then + if ((volpart/charvol) > 0.5_wp*lag_params%valmaxvoid .or. (lag_params%smooth_type == 1)) then rad = (3._wp*volpart/(4._wp*pi))**(1._wp/3._wp) stddsv = 1._wp*lag_params%epsilonb*max(chardist, rad) else @@ -347,7 +457,11 @@ contains end subroutine s_compute_stddsv - !> Compute the characteristic cell volume + !> The purpose of this procedure is to calculate the characteristic cell volume + !! @param cellx x-direction cell index + !! @param celly y-direction cell index + !! @param cellz z-direction cell index + !! @param Charvol Characteristic volume subroutine s_get_char_vol(cellx, celly, cellz, Charvol) $:GPU_ROUTINE(function_name='s_get_char_vol',parallelism='[seq]', cray_inline=True) @@ -367,7 +481,9 @@ contains end subroutine s_get_char_vol - !> Convert bubble computational coordinates from real to integer cell indices + !> This subroutine transforms the computational coordinates of the bubble from real type into integer. + !! @param s_cell Computational coordinates of the bubble, real type + !! @param get_cell Computational coordinates of the bubble, integer type subroutine s_get_cell(s_cell, get_cell) $:GPU_ROUTINE(function_name='s_get_cell',parallelism='[seq]', cray_inline=True) @@ -383,4 +499,221 @@ contains end subroutine s_get_cell + !> Precomputes cell-centered pressure gradients (dp/dx, dp/dy, dp/dz) at all cell centers using finite-difference coefficients + !! of the specified order. This avoids scattered memory accesses to the pressure field when computing translational bubble + !! forces. + !! @param q_prim_vf Primitive variables (pressure is at index E_idx) + subroutine s_compute_pressure_gradients(q_prim_vf) + + type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf + integer :: i, j, k, r + + ! dp/dx at all cell centers + + $:GPU_PARALLEL_LOOP(private='[i, j, k, r]', collapse=3) + do k = 0, p + do j = 0, n + do i = 0, m + grad_p_x(i, j, k) = 0._wp + $:GPU_LOOP(parallelism='[seq]') + do r = -fd_number, fd_number + grad_p_x(i, j, k) = grad_p_x(i, j, k) + q_prim_vf(E_idx)%sf(i + r, j, k)*fd_coeff_x_pgrad(r, i) + end do + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + + ! dp/dy at all cell centers + if (n > 0) then + $:GPU_PARALLEL_LOOP(private='[i, j, k, r]', collapse=3) + do k = 0, p + do j = 0, n + do i = 0, m + grad_p_y(i, j, k) = 0._wp + $:GPU_LOOP(parallelism='[seq]') + do r = -fd_number, fd_number + grad_p_y(i, j, k) = grad_p_y(i, j, k) + q_prim_vf(E_idx)%sf(i, j + r, k)*fd_coeff_y_pgrad(r, j) + end do + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + end if + + ! dp/dz at all cell centers + if (p > 0) then + $:GPU_PARALLEL_LOOP(private='[i, j, k, r]', collapse=3) + do k = 0, p + do j = 0, n + do i = 0, m + grad_p_z(i, j, k) = 0._wp + $:GPU_LOOP(parallelism='[seq]') + do r = -fd_number, fd_number + grad_p_z(i, j, k) = grad_p_z(i, j, k) + q_prim_vf(E_idx)%sf(i, j, k + r)*fd_coeff_z_pgrad(r, k) + end do + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + end if + + end subroutine s_compute_pressure_gradients + + !! This function interpolates the velocity of Eulerian field at the position of the bubble. + !! @param pos Position of the bubble in directiion i + !! @param cell Computational coordinates of the bubble + !! @param i Direction of the velocity (1: x, 2: y, 3: z) + !! @param q_prim_vf Eulerian field with primitive variables + !! @return v Interpolated velocity at the position of the bubble + function f_interpolate_velocity(pos, cell, i, q_prim_vf) result(v) + + $:GPU_ROUTINE(parallelism='[seq]') + real(wp), intent(in) :: pos + integer, dimension(3), intent(in) :: cell + integer, intent(in) :: i + type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf + real(wp) :: v + real(wp), dimension(fd_order + 1) :: xi, eta, L + + if (fd_order == 2) then + if (i == 1) then + xi(1) = x_cc(cell(1) - 1) + eta(1) = q_prim_vf(momxb)%sf(cell(1) - 1, cell(2), cell(3)) + xi(2) = x_cc(cell(1)) + eta(2) = q_prim_vf(momxb)%sf(cell(1), cell(2), cell(3)) + xi(3) = x_cc(cell(1) + 1) + eta(3) = q_prim_vf(momxb)%sf(cell(1) + 1, cell(2), cell(3)) + else if (i == 2) then + xi(1) = y_cc(cell(2) - 1) + eta(1) = q_prim_vf(momxb + 1)%sf(cell(1), cell(2) - 1, cell(3)) + xi(2) = y_cc(cell(2)) + eta(2) = q_prim_vf(momxb + 1)%sf(cell(1), cell(2), cell(3)) + xi(3) = y_cc(cell(2) + 1) + eta(3) = q_prim_vf(momxb + 1)%sf(cell(1), cell(2) + 1, cell(3)) + else if (i == 3) then + xi(1) = z_cc(cell(3) - 1) + eta(1) = q_prim_vf(momxe)%sf(cell(1), cell(2), cell(3) - 1) + xi(2) = z_cc(cell(3)) + eta(2) = q_prim_vf(momxe)%sf(cell(1), cell(2), cell(3)) + xi(3) = z_cc(cell(3) + 1) + eta(3) = q_prim_vf(momxe)%sf(cell(1), cell(2), cell(3) + 1) + end if + + L(1) = ((pos - xi(2))*(pos - xi(3)))/((xi(1) - xi(2))*(xi(1) - xi(3))) + L(2) = ((pos - xi(1))*(pos - xi(3)))/((xi(2) - xi(1))*(xi(2) - xi(3))) + L(3) = ((pos - xi(1))*(pos - xi(2)))/((xi(3) - xi(1))*(xi(3) - xi(2))) + + v = L(1)*eta(1) + L(2)*eta(2) + L(3)*eta(3) + else if (fd_order == 4) then + if (i == 1) then + xi(1) = x_cc(cell(1) - 2) + eta(1) = q_prim_vf(momxb)%sf(cell(1) - 2, cell(2), cell(3)) + xi(2) = x_cc(cell(1) - 1) + eta(2) = q_prim_vf(momxb)%sf(cell(1) - 1, cell(2), cell(3)) + xi(3) = x_cc(cell(1)) + eta(3) = q_prim_vf(momxb)%sf(cell(1), cell(2), cell(3)) + xi(4) = x_cc(cell(1) + 1) + eta(4) = q_prim_vf(momxb)%sf(cell(1) + 1, cell(2), cell(3)) + xi(5) = x_cc(cell(1) + 2) + eta(5) = q_prim_vf(momxb)%sf(cell(1) + 2, cell(2), cell(3)) + else if (i == 2) then + xi(1) = y_cc(cell(2) - 2) + eta(1) = q_prim_vf(momxb + 1)%sf(cell(1), cell(2) - 2, cell(3)) + xi(2) = y_cc(cell(2) - 1) + eta(2) = q_prim_vf(momxb + 1)%sf(cell(1), cell(2) - 1, cell(3)) + xi(3) = y_cc(cell(2)) + eta(3) = q_prim_vf(momxb + 1)%sf(cell(1), cell(2), cell(3)) + xi(4) = y_cc(cell(2) + 1) + eta(4) = q_prim_vf(momxb + 1)%sf(cell(1), cell(2) + 1, cell(3)) + xi(5) = y_cc(cell(2) + 2) + eta(5) = q_prim_vf(momxb + 1)%sf(cell(1), cell(2) + 2, cell(3)) + else if (i == 3) then + xi(1) = z_cc(cell(3) - 2) + eta(1) = q_prim_vf(momxe)%sf(cell(1), cell(2), cell(3) - 2) + xi(2) = z_cc(cell(3) - 1) + eta(2) = q_prim_vf(momxe)%sf(cell(1), cell(2), cell(3) - 1) + xi(3) = z_cc(cell(3)) + eta(3) = q_prim_vf(momxe)%sf(cell(1), cell(2), cell(3)) + xi(4) = z_cc(cell(3) + 1) + eta(4) = q_prim_vf(momxe)%sf(cell(1), cell(2), cell(3) + 1) + xi(5) = z_cc(cell(3) + 2) + eta(5) = q_prim_vf(momxe)%sf(cell(1), cell(2), cell(3) + 2) + end if + + L(1) = ((pos - xi(2))*(pos - xi(3))*(pos - xi(4))*(pos - xi(5)))/((xi(1) - xi(2))*(xi(1) - xi(3))*(xi(1) - xi(4)) & + & *(xi(1) - xi(5))) + L(2) = ((pos - xi(1))*(pos - xi(3))*(pos - xi(4))*(pos - xi(5)))/((xi(2) - xi(1))*(xi(2) - xi(3))*(xi(2) - xi(4)) & + & *(xi(2) - xi(5))) + L(3) = ((pos - xi(1))*(pos - xi(2))*(pos - xi(4))*(pos - xi(5)))/((xi(3) - xi(1))*(xi(3) - xi(2))*(xi(3) - xi(4)) & + & *(xi(3) - xi(5))) + L(4) = ((pos - xi(1))*(pos - xi(2))*(pos - xi(3))*(pos - xi(5)))/((xi(4) - xi(1))*(xi(4) - xi(2))*(xi(4) - xi(3)) & + & *(xi(4) - xi(5))) + L(5) = ((pos - xi(1))*(pos - xi(2))*(pos - xi(3))*(pos - xi(4)))/((xi(5) - xi(1))*(xi(5) - xi(2))*(xi(5) - xi(3)) & + & *(xi(5) - xi(4))) + + v = L(1)*eta(1) + L(2)*eta(2) + L(3)*eta(3) + L(4)*eta(4) + L(5)*eta(5) + end if + + end function f_interpolate_velocity + + !! This function calculates the force on a bubble based on the pressure gradient, velocity, and drag model. + !! @param pos Position of the bubble in direction i + !! @param rad Radius of the bubble + !! @param rdot Radial velocity of the bubble + !! @param vel Velocity of the bubble + !! @param mg Mass of the gas in the bubble + !! @param mv Mass of the liquid in the bubble + !! @param Re Reynolds number + !! @param rho Density of the fluid + !! @param cell Computational coordinates of the bubble + !! @param i Direction of the velocity (1: x, 2: y, 3: z) + !! @param q_prim_vf Eulerian field with primitive variables + !! @return a Acceleration of the bubble in direction i + function f_get_bubble_force(pos, rad, rdot, vel, mg, mv, Re, rho, cell, i, q_prim_vf) result(force) + + $:GPU_ROUTINE(parallelism='[seq]') + real(wp), intent(in) :: pos, rad, rdot, mg, mv, Re, rho, vel + integer, dimension(3), intent(in) :: cell + integer, intent(in) :: i + type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf + real(wp) :: dp, vol, force + real(wp) :: v_rel + + if (fd_order > 1) then + v_rel = vel - f_interpolate_velocity(pos, cell, i, q_prim_vf) + else + v_rel = vel - q_prim_vf(momxb + i - 1)%sf(cell(1), cell(2), cell(3)) + end if + + force = 0._wp + + if (lag_params%drag_model == 1) then ! Free slip Stokes drag + force = force - (4._wp*pi*rad*v_rel)/Re + else if (lag_params%drag_model == 2) then ! No slip Stokes drag + force = force - (6._wp*pi*rad*v_rel)/Re + else if (lag_params%drag_model == 3) then ! Levich drag + force = force - (12._wp*pi*rad*v_rel)/Re + end if + + if (lag_pressure_force) then + ! Use precomputed cell-centered pressure gradients + if (i == 1) then + dp = grad_p_x(cell(1), cell(2), cell(3)) + else if (i == 2) then + dp = grad_p_y(cell(1), cell(2), cell(3)) + else if (i == 3) then + dp = grad_p_z(cell(1), cell(2), cell(3)) + end if + + vol = (4._wp/3._wp)*pi*(rad**3._wp) + force = force - vol*dp + end if + + if (lag_params%gravity_force) then + force = force + (mg + mv)*accel_bf(i) + end if + + end function f_get_bubble_force + end module m_bubbles_EL_kernels diff --git a/src/simulation/m_cbc.fpp b/src/simulation/m_cbc.fpp index 0e36c48fbf..2da0141f33 100644 --- a/src/simulation/m_cbc.fpp +++ b/src/simulation/m_cbc.fpp @@ -24,25 +24,25 @@ module m_cbc private; public :: s_initialize_cbc_module, s_cbc, s_finalize_cbc_module - ! The cell-average primitive variables. They are obtained by reshaping (RS) q_prim_vf in the coordinate direction normal to the - ! domain boundary along which the CBC is applied. + !! The cell-average primitive variables. They are obtained by reshaping (RS) q_prim_vf in the coordinate direction normal to the + !! domain boundary along which the CBC is applied. real(wp), allocatable, dimension(:,:,:,:) :: q_prim_rsx_vf real(wp), allocatable, dimension(:,:,:,:) :: q_prim_rsy_vf real(wp), allocatable, dimension(:,:,:,:) :: q_prim_rsz_vf $:GPU_DECLARE(create='[q_prim_rsx_vf, q_prim_rsy_vf, q_prim_rsz_vf]') - ! Cell-average fluxes (src - source). These are directly determined from the cell-average primitive variables, q_prims_rs_vf, - ! and not a Riemann solver. + !! Cell-average fluxes (src - source). These are directly determined from the cell-average primitive variables, q_prims_rs_vf, + !! and not a Riemann solver. real(wp), allocatable, dimension(:,:,:,:) :: F_rsx_vf, F_src_rsx_vf real(wp), allocatable, dimension(:,:,:,:) :: F_rsy_vf, F_src_rsy_vf real(wp), allocatable, dimension(:,:,:,:) :: F_rsz_vf, F_src_rsz_vf $:GPU_DECLARE(create='[F_rsx_vf, F_src_rsx_vf, F_rsy_vf, F_src_rsy_vf, F_rsz_vf, F_src_rsz_vf]') - ! There is a CCE bug that is causing some subset of these variables to interfere with variables of the same name in - ! m_riemann_solvers.fpp, and giving this versions unique "_l" names works around the bug. Other private module allocatable - ! arrays in `acc declare create` clauses don't have this problem, so we still need to isolate this bug. + !! There is a CCE bug that is causing some subset of these variables to interfere with variables of the same name in + !! m_riemann_solvers.fpp, and giving this versions unique "_l" names works around the bug. Other private module allocatable + !! arrays in `acc declare create` clauses don't have this problem, so we still need to isolate this bug. real(wp), allocatable, dimension(:,:,:,:) :: flux_rsx_vf_l, flux_src_rsx_vf_l real(wp), allocatable, dimension(:,:,:,:) :: flux_rsy_vf_l, flux_src_rsy_vf_l @@ -50,20 +50,25 @@ module m_cbc $:GPU_DECLARE(create='[flux_rsx_vf_l, flux_src_rsx_vf_l, flux_rsy_vf_l, flux_src_rsy_vf_l, flux_rsz_vf_l, flux_src_rsz_vf_l]') real(wp), allocatable, dimension(:) :: ds !< Cell-width distribution in the s-direction + ! CBC Coefficients real(wp), allocatable, dimension(:,:) :: fd_coef_x !< Finite diff. coefficients x-dir real(wp), allocatable, dimension(:,:) :: fd_coef_y !< Finite diff. coefficients y-dir + !> Finite diff. coefficients z-dir The first dimension identifies the location of a coefficient in the FD formula, while the + !! last dimension denotes the location of the CBC. real(wp), allocatable, dimension(:,:) :: fd_coef_z !< Finite diff. coefficients, z-direction + ! Bug with NVHPC when using nullified pointers in a declare create real(wp), pointer, dimension(:, :) :: fd_coef => null() real(wp), allocatable, dimension(:,:,:) :: pi_coef_x !< Polynomial interpolant coefficients in x-dir real(wp), allocatable, dimension(:,:,:) :: pi_coef_y !< Polynomial interpolant coefficients in y-dir real(wp), allocatable, dimension(:,:,:) :: pi_coef_z !< Polynomial interpolant coefficients in z-dir + $:GPU_DECLARE(create='[ds, fd_coef_x, fd_coef_y, fd_coef_z, pi_coef_x, pi_coef_y, pi_coef_z]') - ! The first dimension of the array identifies the polynomial, the second dimension identifies the position of its coefficients - ! and the last dimension denotes the location of the CBC. + !! The first dimension of the array identifies the polynomial, the second dimension identifies the position of its coefficients + !! and the last dimension denotes the location of the CBC. type(int_bounds_info) :: is1, is2, is3 !< Indical bounds in the s1-, s2- and s3-directions $:GPU_DECLARE(create='[is1, is2, is3]') @@ -75,8 +80,8 @@ module m_cbc $:GPU_DECLARE(create='[dj, bcxb, bcxe, bcyb, bcye, bczb, bcze]') $:GPU_DECLARE(create='[cbc_dir, cbc_loc, flux_cbc_index]') - ! GRCBC inputs for subsonic inflow and outflow conditions consisting of inflow velocities, pressure, density and void fraction - ! as well as outflow velocities and pressure + !! GRCBC inputs for subsonic inflow and outflow conditions consisting of inflow velocities, pressure, density and void fraction + !! as well as outflow velocities and pressure real(wp), allocatable, dimension(:) :: pres_in, pres_out, Del_in, Del_out real(wp), allocatable, dimension(:,:) :: vel_in, vel_out @@ -87,7 +92,8 @@ module m_cbc contains - !> Initialize the CBC module + !> The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other + !! procedures that are necessary to setup the module. impure subroutine s_initialize_cbc_module integer :: i @@ -350,9 +356,12 @@ contains end subroutine s_initialize_cbc_module !> Compute CBC coefficients + !! @param cbc_dir_in CBC coordinate direction + !! @param cbc_loc_in CBC coordinate location subroutine s_compute_cbc_coefficients(cbc_dir_in, cbc_loc_in) - ! Compute grid-dependent CBC coefficients for given direction and location + ! Description: The purpose of this subroutine is to compute the grid dependent FD and PI coefficients, or CBC coefficients, + ! provided the CBC coordinate direction and location. ! CBC coordinate direction and location integer, intent(in) :: cbc_dir_in, cbc_loc_in @@ -433,11 +442,16 @@ contains end subroutine s_compute_cbc_coefficients - !> Associate CBC finite-difference and polynomial-interpolation coefficients based on direction and boundary location + !> @brief Associates finite-difference and polynomial-interpolation CBC coefficients with targets based on coordinate direction + !! and boundary location. The goal of the procedure is to associate the FD and PI coefficients, or CBC coefficients, with the + !! appropriate targets, based on the coordinate direction and location of the CBC. + !! @param cbc_dir_in CBC coordinate direction + !! @param cbc_loc_in CBC coordinate location subroutine s_associate_cbc_coefficients_pointers(cbc_dir_in, cbc_loc_in) integer, intent(in) :: cbc_dir_in, cbc_loc_in integer :: i !< Generic loop iterator + ! Associating CBC Coefficients in x-direction if (cbc_dir_in == 1) then @@ -486,7 +500,17 @@ contains end subroutine s_associate_cbc_coefficients_pointers - !> Apply characteristic boundary conditions by modifying fluxes near domain boundaries + !> The following is the implementation of the CBC based on the work of Thompson (1987, 1990) on hyperbolic systems. The CBC is + !! indirectly applied in the computation of the right-hand-side (RHS) near the relevant domain boundary through the modification + !! of the fluxes. + !! @param q_prim_vf Cell-average primitive variables + !! @param flux_vf Cell-boundary-average fluxes + !! @param flux_src_vf Cell-boundary-average flux sources + !! @param cbc_dir_norm CBC coordinate direction + !! @param cbc_loc_norm CBC coordinate location + !! @param ix Index bound in the first coordinate direction + !! @param iy Index bound in the second coordinate direction + !! @param iz Index bound in the third coordinate direction subroutine s_cbc(q_prim_vf, flux_vf, flux_src_vf, cbc_dir_norm, cbc_loc_norm, ix, iy, iz) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -537,6 +561,7 @@ contains real(wp) :: Cv, Cp, e_mix, Mw, R_gas real(wp) :: vel_K_sum, vel_dv_dt_sum integer :: i, j, k, r !< Generic loop iterators + ! Reshaping of inputted data and association of the FD and PI coefficients, or CBC coefficients, respectively, hinging on ! selected CBC coordinate direction @@ -952,13 +977,21 @@ contains end subroutine s_cbc - !> Set up the selected CBC for the current boundary + !> The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other + !! procedures that are required for the setup of the selected CBC. + !! @param q_prim_vf Cell-average primitive variables + !! @param flux_vf Cell-boundary-average fluxes + !! @param flux_src_vf Cell-boundary-average flux sources + !! @param ix Index bound in the first coordinate direction + !! @param iy Index bound in the second coordinate direction + !! @param iz Index bound in the third coordinate direction subroutine s_initialize_cbc(q_prim_vf, flux_vf, flux_src_vf, ix, iy, iz) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf type(scalar_field), dimension(sys_size), intent(in) :: flux_vf, flux_src_vf type(int_bounds_info), intent(in) :: ix, iy, iz integer :: i, j, k, r !< Generic loop iterators + ! Configuring the coordinate direction indexes and flags ! Determining the indicial shift based on CBC location @@ -1206,10 +1239,13 @@ contains end subroutine s_initialize_cbc !> Deallocation and/or the disassociation procedures that are necessary in order to finalize the CBC application + !! @param flux_vf Cell-boundary-average fluxes + !! @param flux_src_vf Cell-boundary-average flux sources subroutine s_finalize_cbc(flux_vf, flux_src_vf) type(scalar_field), dimension(sys_size), intent(inout) :: flux_vf, flux_src_vf integer :: i, j, k, r !< Generic loop iterators + ! Determining the indicial shift based on CBC location dj = max(0, cbc_loc) @@ -1368,7 +1404,7 @@ contains end subroutine s_finalize_cbc - !> Detect whether any domain boundary uses characteristic boundary conditions + !> @brief Detects whether any domain boundary uses characteristic boundary conditions. elemental subroutine s_any_cbc_boundaries(toggle) logical, intent(inout) :: toggle diff --git a/src/simulation/m_checker.fpp b/src/simulation/m_checker.fpp index 478f778c84..c2ebdb076f 100644 --- a/src/simulation/m_checker.fpp +++ b/src/simulation/m_checker.fpp @@ -56,30 +56,26 @@ contains call s_int_to_str(num_stcls_min*weno_order, numStr) @:PROHIBIT(m + 1 < num_stcls_min*weno_order, & - & "m must be greater than or equal to (num_stcls_min*weno_order - 1), whose value is " // trim(numStr)) + & "m must be greater than or equal to (num_stcls_min*weno_order - 1), whose value is "//trim(numStr)) @:PROHIBIT(n + 1 < min(1, n)*num_stcls_min*weno_order, & - & "For 2D simulation, n must be greater than or equal to (num_stcls_min*weno_order - 1), whose value is " & - & // trim(numStr)) + & "For 2D simulation, n must be greater than or equal to (num_stcls_min*weno_order - 1), whose value is "//trim(numStr)) @:PROHIBIT(p + 1 < min(1, p)*num_stcls_min*weno_order, & - & "For 3D simulation, p must be greater than or equal to (num_stcls_min*weno_order - 1), whose value is " & - & // trim(numStr)) + & "For 3D simulation, p must be greater than or equal to (num_stcls_min*weno_order - 1), whose value is "//trim(numStr)) end subroutine s_check_inputs_weno - !> Validate that the grid resolution is sufficient for the MUSCL reconstruction order + !> @brief Validates that the grid resolution is sufficient for the MUSCL reconstruction order. impure subroutine s_check_inputs_muscl character(len=5) :: numStr !< for int to string conversion call s_int_to_str(num_stcls_min*muscl_order, numStr) @:PROHIBIT(m + 1 < num_stcls_min*muscl_order, & - & "m must be greater than or equal to (num_stcls_min*muscl_order - 1), whose value is " // trim(numStr)) + & "m must be greater than or equal to (num_stcls_min*muscl_order - 1), whose value is "//trim(numStr)) @:PROHIBIT(n + 1 < min(1, n)*num_stcls_min*muscl_order, & - & "For 2D simulation, n must be greater than or equal to (num_stcls_min*muscl_order - 1), whose value is " & - & // trim(numStr)) + & "For 2D simulation, n must be greater than or equal to (num_stcls_min*muscl_order - 1), whose value is "//trim(numStr)) @:PROHIBIT(p + 1 < min(1, p)*num_stcls_min*muscl_order, & - & "For 3D simulation, p must be greater than or equal to (num_stcls_min*muscl_order - 1), whose value is " & - & // trim(numStr)) + & "For 3D simulation, p must be greater than or equal to (num_stcls_min*muscl_order - 1), whose value is "//trim(numStr)) end subroutine s_check_inputs_muscl @@ -92,7 +88,6 @@ contains end subroutine s_check_inputs_time_stepping - !> Validate NVIDIA unified virtual memory configuration parameters impure subroutine s_check_inputs_nvidia_uvm #ifdef __NVCOMPILER_GPU_UNIFIED_MEM diff --git a/src/simulation/m_compute_levelset.fpp b/src/simulation/m_compute_levelset.fpp index da1dcd9109..d97b3fea1c 100644 --- a/src/simulation/m_compute_levelset.fpp +++ b/src/simulation/m_compute_levelset.fpp @@ -20,7 +20,7 @@ module m_compute_levelset contains - !> Dispatch level-set distance and normal computations for all ghost points based on patch geometry type + !> @brief Dispatches level-set distance and normal computations for all ghost points based on their patch geometry type. impure subroutine s_apply_levelset(gps, num_gps) type(ghost_point), dimension(:), intent(inout) :: gps @@ -73,7 +73,7 @@ contains end subroutine s_apply_levelset - !> Compute the signed distance and outward normal from a ghost point to a circular immersed boundary + !> @brief Computes the signed distance and outward normal from a ghost point to a circular immersed boundary. subroutine s_circle_levelset(gp) $:GPU_ROUTINE(parallelism='[seq]') @@ -83,14 +83,17 @@ contains real(wp), dimension(2) :: center real(wp), dimension(3) :: dist_vec integer :: i, j, ib_patch_id !< Loop index variables + ib_patch_id = gp%ib_patch_id i = gp%loc(1) j = gp%loc(2) radius = patch_ib(ib_patch_id)%radius - dist_vec(1) = x_cc(i) - patch_ib(ib_patch_id)%x_centroid - real(gp%x_periodicity, wp)*(x_domain%end - x_domain%beg) - dist_vec(2) = y_cc(j) - patch_ib(ib_patch_id)%y_centroid - real(gp%y_periodicity, wp)*(y_domain%end - y_domain%beg) + dist_vec(1) = x_cc(i) - patch_ib(ib_patch_id)%x_centroid - real(gp%x_periodicity, & + & wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + dist_vec(2) = y_cc(j) - patch_ib(ib_patch_id)%y_centroid - real(gp%y_periodicity, & + & wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) dist_vec(3) = 0._wp dist = sqrt(sum(dist_vec**2)) @@ -103,7 +106,7 @@ contains end subroutine s_circle_levelset - !> Compute the signed distance and outward normal from a ghost point to a 2D NACA airfoil surface + !> @brief Computes the signed distance and outward normal from a ghost point to a 2D NACA airfoil surface. subroutine s_airfoil_levelset(gp) $:GPU_ROUTINE(parallelism='[seq]') @@ -116,12 +119,13 @@ contains real(wp), dimension(1:2) :: center real(wp), dimension(1:3,1:3) :: rotation, inverse_rotation integer :: i, j, k, ib_patch_id !< Loop index variables + ib_patch_id = gp%ib_patch_id i = gp%loc(1) j = gp%loc(2) - center(1) = patch_ib(ib_patch_id)%x_centroid + real(gp%x_periodicity, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(ib_patch_id)%y_centroid + real(gp%y_periodicity, wp)*(y_domain%end - y_domain%beg) + center(1) = patch_ib(ib_patch_id)%x_centroid + real(gp%x_periodicity, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(ib_patch_id)%y_centroid + real(gp%y_periodicity, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) inverse_rotation(:,:) = patch_ib(ib_patch_id)%rotation_matrix_inverse(:,:) rotation(:,:) = patch_ib(ib_patch_id)%rotation_matrix(:,:) offset(:) = patch_ib(ib_patch_id)%centroid_offset(:) @@ -182,7 +186,8 @@ contains end subroutine s_airfoil_levelset - !> Compute the signed distance and outward normal from a ghost point to a 3D extruded airfoil surface + !> @brief Computes the signed distance and outward normal from a ghost point to a 3D extruded airfoil surface including spanwise + !! end caps. subroutine s_3d_airfoil_levelset(gp) $:GPU_ROUTINE(parallelism='[seq]') @@ -196,14 +201,15 @@ contains real(wp), dimension(1:3,1:3) :: rotation, inverse_rotation real(wp) :: length_z integer :: i, j, k, l, ib_patch_id !< Loop index variables + ib_patch_id = gp%ib_patch_id i = gp%loc(1) j = gp%loc(2) l = gp%loc(3) - center(1) = patch_ib(ib_patch_id)%x_centroid + real(gp%x_periodicity, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(ib_patch_id)%y_centroid + real(gp%y_periodicity, wp)*(y_domain%end - y_domain%beg) - center(3) = patch_ib(ib_patch_id)%z_centroid + real(gp%z_periodicity, wp)*(z_domain%end - z_domain%beg) + center(1) = patch_ib(ib_patch_id)%x_centroid + real(gp%x_periodicity, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(ib_patch_id)%y_centroid + real(gp%y_periodicity, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) + center(3) = patch_ib(ib_patch_id)%z_centroid + real(gp%z_periodicity, wp)*(glb_bounds(3)%end - glb_bounds(3)%beg) lz = patch_ib(ib_patch_id)%length_z inverse_rotation(:,:) = patch_ib(ib_patch_id)%rotation_matrix_inverse(:,:) rotation(:,:) = patch_ib(ib_patch_id)%rotation_matrix(:,:) @@ -296,14 +302,15 @@ contains integer :: i, j, k !< Loop index variables integer :: idx !< Shortest path direction indicator integer :: ib_patch_id !< patch ID + ib_patch_id = gp%ib_patch_id i = gp%loc(1) j = gp%loc(2) length_x = patch_ib(ib_patch_id)%length_x length_y = patch_ib(ib_patch_id)%length_y - center(1) = patch_ib(ib_patch_id)%x_centroid + real(gp%x_periodicity, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(ib_patch_id)%y_centroid + real(gp%y_periodicity, wp)*(y_domain%end - y_domain%beg) + center(1) = patch_ib(ib_patch_id)%x_centroid + real(gp%x_periodicity, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(ib_patch_id)%y_centroid + real(gp%y_periodicity, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) inverse_rotation(:,:) = patch_ib(ib_patch_id)%rotation_matrix_inverse(:,:) rotation(:,:) = patch_ib(ib_patch_id)%rotation_matrix(:,:) @@ -348,7 +355,8 @@ contains end subroutine s_rectangle_levelset - !> Compute the signed distance and outward normal from a ghost point to an elliptical immersed boundary + !> @brief Computes the signed distance and outward normal from a ghost point to an elliptical immersed boundary via a quadratic + !! projection. subroutine s_ellipse_levelset(gp) $:GPU_ROUTINE(parallelism='[seq]') @@ -363,14 +371,15 @@ contains integer :: i, j, k !< Loop index variables integer :: idx !< Shortest path direction indicator integer :: ib_patch_id !< patch ID + ib_patch_id = gp%ib_patch_id i = gp%loc(1) j = gp%loc(2) length_x = patch_ib(ib_patch_id)%length_x length_y = patch_ib(ib_patch_id)%length_y - center(1) = patch_ib(ib_patch_id)%x_centroid + real(gp%x_periodicity, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(ib_patch_id)%y_centroid + real(gp%y_periodicity, wp)*(y_domain%end - y_domain%beg) + center(1) = patch_ib(ib_patch_id)%x_centroid + real(gp%x_periodicity, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(ib_patch_id)%y_centroid + real(gp%y_periodicity, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) inverse_rotation(:,:) = patch_ib(ib_patch_id)%rotation_matrix_inverse(:,:) rotation(:,:) = patch_ib(ib_patch_id)%rotation_matrix(:,:) @@ -398,7 +407,7 @@ contains end subroutine s_ellipse_levelset - !> Compute the signed distance and outward normal from a ghost point to a cuboid immersed boundary + !> @brief Computes the signed distance and outward normal from a ghost point to the nearest face of a cuboid immersed boundary. subroutine s_cuboid_levelset(gp) $:GPU_ROUTINE(parallelism='[seq]') @@ -413,6 +422,7 @@ contains real(wp), dimension(1:3,1:3) :: rotation, inverse_rotation integer :: i, j, k !< Loop index variables integer :: ib_patch_id !< patch ID + ib_patch_id = gp%ib_patch_id i = gp%loc(1) j = gp%loc(2) @@ -422,9 +432,9 @@ contains length_y = patch_ib(ib_patch_id)%length_y length_z = patch_ib(ib_patch_id)%length_z - center(1) = patch_ib(ib_patch_id)%x_centroid + real(gp%x_periodicity, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(ib_patch_id)%y_centroid + real(gp%y_periodicity, wp)*(y_domain%end - y_domain%beg) - center(3) = patch_ib(ib_patch_id)%z_centroid + real(gp%z_periodicity, wp)*(z_domain%end - z_domain%beg) + center(1) = patch_ib(ib_patch_id)%x_centroid + real(gp%x_periodicity, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(ib_patch_id)%y_centroid + real(gp%y_periodicity, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) + center(3) = patch_ib(ib_patch_id)%z_centroid + real(gp%z_periodicity, wp)*(glb_bounds(3)%end - glb_bounds(3)%beg) inverse_rotation(:,:) = patch_ib(ib_patch_id)%rotation_matrix_inverse(:,:) rotation(:,:) = patch_ib(ib_patch_id)%rotation_matrix(:,:) @@ -485,7 +495,7 @@ contains end subroutine s_cuboid_levelset - !> Compute the signed distance and outward normal from a ghost point to a spherical immersed boundary + !> @brief Computes the signed distance and outward normal from a ghost point to a spherical immersed boundary. subroutine s_sphere_levelset(gp) $:GPU_ROUTINE(parallelism='[seq]') @@ -494,15 +504,16 @@ contains real(wp) :: radius, dist real(wp), dimension(3) :: dist_vec, center, periodicity integer :: i, j, k, ib_patch_id !< Loop index variables + ib_patch_id = gp%ib_patch_id i = gp%loc(1) j = gp%loc(2) k = gp%loc(3) radius = patch_ib(ib_patch_id)%radius - periodicity(1) = real(gp%x_periodicity, wp)*(x_domain%end - x_domain%beg) - periodicity(2) = real(gp%y_periodicity, wp)*(y_domain%end - y_domain%beg) - periodicity(3) = real(gp%z_periodicity, wp)*(z_domain%end - z_domain%beg) + periodicity(1) = real(gp%x_periodicity, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + periodicity(2) = real(gp%y_periodicity, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) + periodicity(3) = real(gp%z_periodicity, wp)*(glb_bounds(3)%end - glb_bounds(3)%beg) center(1) = patch_ib(ib_patch_id)%x_centroid center(2) = patch_ib(ib_patch_id)%y_centroid center(3) = patch_ib(ib_patch_id)%z_centroid @@ -521,7 +532,8 @@ contains end subroutine s_sphere_levelset - !> Compute the signed distance and outward normal from a ghost point to a cylindrical immersed boundary + !> @brief Computes the signed distance and outward normal from a ghost point to a cylindrical immersed boundary surface and end + !! caps. subroutine s_cylinder_levelset(gp) $:GPU_ROUTINE(parallelism='[seq]') @@ -542,9 +554,9 @@ contains k = gp%loc(3) radius = patch_ib(ib_patch_id)%radius - center(1) = patch_ib(ib_patch_id)%x_centroid + real(gp%x_periodicity, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(ib_patch_id)%y_centroid + real(gp%y_periodicity, wp)*(y_domain%end - y_domain%beg) - center(3) = patch_ib(ib_patch_id)%z_centroid + real(gp%z_periodicity, wp)*(z_domain%end - z_domain%beg) + center(1) = patch_ib(ib_patch_id)%x_centroid + real(gp%x_periodicity, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(ib_patch_id)%y_centroid + real(gp%y_periodicity, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) + center(3) = patch_ib(ib_patch_id)%z_centroid + real(gp%z_periodicity, wp)*(glb_bounds(3)%end - glb_bounds(3)%beg) length(1) = patch_ib(ib_patch_id)%length_x length(2) = patch_ib(ib_patch_id)%length_y length(3) = patch_ib(ib_patch_id)%length_z @@ -596,6 +608,7 @@ contains end subroutine s_cylinder_levelset !> The STL patch is a 2/3D geometry that is imported from an STL file. + !! @param gp Ghost point to compute levelset for subroutine s_model_levelset(gp) $:GPU_ROUTINE(parallelism='[seq]') @@ -618,12 +631,12 @@ contains center = 0._wp if (.not. f_is_default(patch_ib(patch_id)%x_centroid)) center(1) = patch_ib(patch_id)%x_centroid + real(gp%x_periodicity, & - & wp)*(x_domain%end - x_domain%beg) + & wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) if (.not. f_is_default(patch_ib(patch_id)%y_centroid)) center(2) = patch_ib(patch_id)%y_centroid + real(gp%y_periodicity, & - & wp)*(y_domain%end - y_domain%beg) + & wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) if (p > 0) then if (.not. f_is_default(patch_ib(patch_id)%z_centroid)) center(3) = patch_ib(patch_id)%z_centroid & - & + real(gp%z_periodicity, wp)*(z_domain%end - z_domain%beg) + & + real(gp%z_periodicity, wp)*(glb_bounds(3)%end - glb_bounds(3)%beg) end if inverse_rotation(:,:) = patch_ib(patch_id)%rotation_matrix_inverse(:,:) diff --git a/src/simulation/m_data_output.fpp b/src/simulation/m_data_output.fpp index 086a218289..0104dbfddb 100644 --- a/src/simulation/m_data_output.fpp +++ b/src/simulation/m_data_output.fpp @@ -30,19 +30,8 @@ module m_data_output & s_finalize_data_output_module integer :: ib_state_unit = -1 !< I/O unit for IB state binary file - real(wp), allocatable, dimension(:,:,:) :: icfl_sf !< ICFL stability criterion - real(wp), allocatable, dimension(:,:,:) :: vcfl_sf !< VCFL stability criterion - real(wp), allocatable, dimension(:,:,:) :: ccfl_sf !< CCFL stability criterion - real(wp), allocatable, dimension(:,:,:) :: Rc_sf !< Rc stability criterion real(wp), public, allocatable, dimension(:,:) :: c_mass - $:GPU_DECLARE(create='[icfl_sf, vcfl_sf, ccfl_sf, Rc_sf, c_mass]') - - real(wp) :: icfl_max_loc, icfl_max_glb !< ICFL stability extrema on local and global grids - real(wp) :: vcfl_max_loc, vcfl_max_glb !< VCFL stability extrema on local and global grids - real(wp) :: ccfl_max_loc, ccfl_max_glb !< CCFL stability extrema on local and global grids - real(wp) :: Rc_min_loc, Rc_min_glb !< Rc stability extrema on local and global grids - $:GPU_DECLARE(create='[icfl_max_loc, icfl_max_glb, vcfl_max_loc, vcfl_max_glb]') - $:GPU_DECLARE(create='[ccfl_max_loc, ccfl_max_glb, Rc_min_loc, Rc_min_glb]') + $:GPU_DECLARE(create='[c_mass]') !> @name ICFL, VCFL, CCFL and Rc stability criteria extrema over all the time-steps !> @{ @@ -57,6 +46,12 @@ module m_data_output contains !> Write data files. Dispatch subroutine that replaces procedure pointer. + !! @param q_cons_vf Conservative variables + !! @param q_T_sf Temperature scalar field + !! @param q_prim_vf Primitive variables + !! @param t_step Current time step + !! @param bc_type Boundary condition type + !! @param beta Eulerian void fraction from lagrangian bubbles impure subroutine s_write_data_files(q_cons_vf, q_T_sf, q_prim_vf, t_step, bc_type, beta) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf @@ -74,13 +69,17 @@ contains end subroutine s_write_data_files - !> Open the run-time information file and write the stability criteria table header + !> The purpose of this subroutine is to open a new or pre- existing run-time information file and append to it the basic header + !! information relevant to current simulation. In general, this requires generating a table header for those stability criteria + !! which will be written at every time-step. impure subroutine s_open_run_time_information_file character(LEN=name_len), parameter :: file_name = 'run_time.inf' !< Name of the run-time information file character(LEN=path_len + name_len) :: file_path !< Relative path to a file in the case directory character(LEN=8) :: file_date !< Creation date of the run-time information file + ! Opening the run-time information file + file_path = trim(case_dir) // '/' // trim(file_name) open (3, FILE=trim(file_path), form='formatted', STATUS='replace') @@ -98,25 +97,32 @@ contains write (3, '(A)') ''; write (3, '(A)') '' + ! Generating table header for the stability criteria to be outputted write (3, '(13X,A9,13X,A10,13X,A10,13X,A10)', advance="no") trim('Time-step'), trim('dt'), trim('Time'), trim('ICFL Max') if (viscous) then write (3, '(13X,A10,13X,A16)', advance="no") trim('VCFL Max'), trim('Rc Min') end if + if (bubbles_lagrange) then + write (3, '(13X,A10)', advance="no") trim('N Bubbles') + end if + write (3, *) ! new line end subroutine s_open_run_time_information_file - !> Open center-of-mass data files for writing + !> This opens a formatted data file where the root processor can write out the CoM information impure subroutine s_open_com_files() character(len=path_len + 3*name_len) :: file_path !< Relative path to the CoM file in the case directory integer :: i !< Generic loop iterator do i = 1, num_fluids + ! Generating the relative path to the CoM data file write (file_path, '(A,I0,A)') '/fluid', i, '_com.dat' file_path = trim(case_dir) // trim(file_path) + ! Creating the formatted data file and setting up its structure open (i + 120, file=trim(file_path), form='formatted', position='append', status='unknown') if (n == 0) then write (i + 120, '(A)') ' Non-Dimensional Time ' // ' Total Mass ' // ' x-loc ' // ' Total Volume ' @@ -133,7 +139,7 @@ contains end subroutine s_open_com_files - !> Open flow probe data files for writing + !> This opens a formatted data file where the root processor can write out flow probe information impure subroutine s_open_probe_files character(LEN=path_len + 3*name_len) :: file_path !< Relative path to the probe data file in the case directory @@ -141,9 +147,11 @@ contains logical :: file_exist do i = 1, num_probes + ! Generating the relative path to the data file write (file_path, '(A,I0,A)') '/D/probe', i, '_prim.dat' file_path = trim(case_dir) // trim(file_path) + ! Creating the formatted data file and setting up its structure inquire (file=trim(file_path), exist=file_exist) if (file_exist) then @@ -164,7 +172,6 @@ contains end subroutine s_open_probe_files - !> Open the immersed boundary state file for binary output impure subroutine s_open_ib_state_file character(len=path_len + 2*name_len) :: file_loc @@ -177,7 +184,11 @@ contains end subroutine s_open_ib_state_file - !> Write stability criteria extrema to the run-time information file at the given time step + !> The goal of the procedure is to output to the run-time information file the stability criteria extrema in the entire + !! computational domain and at the given time-step. Moreover, the subroutine is also in charge of tracking these stability + !! criteria extrema over all time-steps. + !! @param q_prim_vf Cell-average primitive variables + !! @param t_step Current time step impure subroutine s_write_run_time_information(q_prim_vf, t_step) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -191,19 +202,27 @@ contains real(wp), dimension(num_fluids) :: alpha !< Cell-avg. volume fraction real(wp), dimension(num_vels) :: vel !< Cell-avg. velocity #:endif - real(wp) :: vel_sum !< Cell-avg. velocity sum - real(wp) :: pres !< Cell-avg. pressure - real(wp) :: gamma !< Cell-avg. sp. heat ratio - real(wp) :: pi_inf !< Cell-avg. liquid stiffness function - real(wp) :: qv !< Cell-avg. internal energy reference value - real(wp) :: c !< Cell-avg. sound speed - real(wp) :: H !< Cell-avg. enthalpy - real(wp), dimension(2) :: Re !< Cell-avg. Reynolds numbers + real(wp) :: vel_sum !< Cell-avg. velocity sum + real(wp) :: pres !< Cell-avg. pressure + real(wp) :: gamma !< Cell-avg. sp. heat ratio + real(wp) :: pi_inf !< Cell-avg. liquid stiffness function + real(wp) :: qv !< Cell-avg. internal energy reference value + real(wp) :: c !< Cell-avg. sound speed + real(wp) :: H !< Cell-avg. enthalpy + real(wp), dimension(2) :: Re !< Cell-avg. Reynolds numbers integer :: j, k, l - + real(wp) :: icfl_max_loc, icfl_max_glb !< ICFL stability extrema on local and global grids + real(wp) :: vcfl_max_loc, vcfl_max_glb !< VCFL stability extrema on local and global grids + real(wp) :: ccfl_max_loc, ccfl_max_glb !< CCFL stability extrema on local and global grids + real(wp) :: Rc_min_loc, Rc_min_glb !< Rc stability extrema on local and global grids + real(wp) :: icfl, vcfl, Rc + + icfl_max_loc = 0._wp + vcfl_max_loc = 0._wp + Rc_min_loc = huge(1.0_wp) ! Computing Stability Criteria at Current Time-step - - $:GPU_PARALLEL_LOOP(collapse=3, private='[j, k, l, vel, alpha, Re, rho, vel_sum, pres, gamma, pi_inf, c, H, qv]') + $:GPU_PARALLEL_LOOP(collapse=3, private='[j, k, l, vel, alpha, Re, rho, vel_sum, pres, gamma, pi_inf, c, H, qv, icfl, & + & vcfl, Rc]', reduction='[[icfl_max_loc, vcfl_max_loc], [Rc_min_loc]]', reductionOp='[max, min]') do l = 0, p do k = 0, n do j = 0, m @@ -212,49 +231,32 @@ contains call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, H, alpha, vel_sum, 0._wp, c, qv) if (viscous) then - call s_compute_stability_from_dt(vel, c, rho, Re, j, k, l, icfl_sf, vcfl_sf, Rc_sf) + call s_compute_stability_from_dt(vel, c, rho, Re, j, k, l, icfl, vcfl, Rc) else - call s_compute_stability_from_dt(vel, c, rho, Re, j, k, l, icfl_sf) + call s_compute_stability_from_dt(vel, c, rho, Re, j, k, l, icfl) end if + + icfl_max_loc = max(icfl_max_loc, icfl) + vcfl_max_loc = max(vcfl_max_loc, merge(vcfl, 0.0_wp, viscous)) + Rc_min_loc = min(Rc_min_loc, merge(Rc, huge(1.0_wp), viscous)) end do end do end do $:END_GPU_PARALLEL_LOOP() + ! end: Computing Stability Criteria at Current Time-step -#ifdef _CRAYFTN - $:GPU_UPDATE(host='[icfl_sf]') - - if (viscous) then - $:GPU_UPDATE(host='[vcfl_sf, Rc_sf]') - end if - - icfl_max_loc = maxval(icfl_sf) - - if (viscous) then - vcfl_max_loc = maxval(vcfl_sf) - Rc_min_loc = minval(Rc_sf) - end if -#else - #:call GPU_PARALLEL(copyout='[icfl_max_loc]', copyin='[icfl_sf]') - icfl_max_loc = maxval(icfl_sf) - #:endcall GPU_PARALLEL - if (viscous .or. dummy) then - #:call GPU_PARALLEL(copyout='[vcfl_max_loc, Rc_min_loc]', copyin='[vcfl_sf,Rc_sf]') - vcfl_max_loc = maxval(vcfl_sf) - Rc_min_loc = minval(Rc_sf) - #:endcall GPU_PARALLEL - end if -#endif - + ! Determining global stability criteria extrema at current time-step if (num_procs > 1) then - call s_mpi_reduce_stability_criteria_extrema(icfl_max_loc, vcfl_max_loc, Rc_min_loc, icfl_max_glb, vcfl_max_glb, & - & Rc_min_glb) + call s_mpi_reduce_stability_criteria_extrema(icfl_max_loc, vcfl_max_loc, Rc_min_loc, n_el_bubs_loc, icfl_max_glb, & + & vcfl_max_glb, Rc_min_glb, n_el_bubs_glb) else icfl_max_glb = icfl_max_loc if (viscous) vcfl_max_glb = vcfl_max_loc if (viscous) Rc_min_glb = Rc_min_loc + if (bubbles_lagrange) n_el_bubs_glb = n_el_bubs_loc end if + ! Determining the stability criteria extrema over all the time-steps if (icfl_max_glb > icfl_max) icfl_max = icfl_max_glb if (viscous) then @@ -262,6 +264,7 @@ contains if (Rc_min_glb < Rc_min) Rc_min = Rc_min_glb end if + ! Outputting global stability criteria extrema at current time-step if (proc_rank == 0) then write (3, '(13X,I9,13X,F10.6,13X,F10.6,13X,F10.6)', advance="no") t_step, dt, mytime, icfl_max_glb @@ -269,6 +272,10 @@ contains write (3, '(13X,F10.6,13X,ES16.6)', advance="no") vcfl_max_glb, Rc_min_glb end if + if (bubbles_lagrange) then + write (3, '(13X,I10)', advance="no") n_el_bubs_glb + end if + write (3, *) ! new line if (.not. f_approx_equal(icfl_max_glb, icfl_max_glb)) then @@ -286,13 +293,25 @@ contains call s_mpi_abort('VCFL is greater than 1.0. Exiting.') end if end if + + if (bubbles_lagrange) then + if (n_el_bubs_glb == 0) then + call s_mpi_abort('No Lagrangian bubbles remain in the domain. Exiting.') + end if + end if end if call s_mpi_barrier() end subroutine s_write_run_time_information - !> Write grid and conservative variable data files in serial format + !> The goal of this subroutine is to output the grid and conservative variables data files for given time-step. + !! @param q_cons_vf Cell-average conservative variables + !! @param q_T_sf Temperature scalar field + !! @param q_prim_vf Cell-average primitive variables + !! @param t_step Current time-step + !! @param bc_type Boundary condition type + !! @param beta Eulerian void fraction from lagrangian bubbles impure subroutine s_write_serial_data_files(q_cons_vf, q_T_sf, q_prim_vf, t_step, bc_type, beta) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf @@ -308,7 +327,11 @@ contains integer :: i, j, k, l, r real(wp) :: gamma, lit_gamma, pi_inf, qv !< Temporary EOS params + ! Creating or overwriting the time-step root directory + write (t_step_dir, '(A,I0,A,I0)') trim(case_dir) // '/p_all' + + ! Creating or overwriting the current time-step directory write (t_step_dir, '(a,i0,a,i0)') trim(case_dir) // '/p_all/p', proc_rank, '/', t_step file_path = trim(t_step_dir) // '/.' @@ -316,11 +339,13 @@ contains if (file_exist) call s_delete_directory(trim(t_step_dir)) call s_create_directory(trim(t_step_dir)) + ! Writing the grid data file in the x-direction file_path = trim(t_step_dir) // '/x_cb.dat' open (2, FILE=trim(file_path), form='unformatted', STATUS='new') write (2) x_cb(-1:m); close (2) + ! Writing the grid data files in the y- and z-directions if (n > 0) then file_path = trim(t_step_dir) // '/y_cb.dat' @@ -335,6 +360,7 @@ contains end if end if + ! Writing the conservative variables data files do i = 1, sys_size write (file_path, '(A,I0,A)') trim(t_step_dir) // '/q_cons_vf', i, '.dat' @@ -378,6 +404,11 @@ contains ! Writing the IB markers if (ib) then call s_write_serial_ib_data(t_step) + ! write (file_path, '(A,I0,A)') trim(t_step_dir)//'/ib.dat' + + ! open (2, FILE=trim(file_path), & FORM='unformatted', & STATUS='new') + + ! write (2) ib_markers%sf(0:m, 0:n, 0:p); close (2) end if gamma = gammas(1) @@ -391,6 +422,7 @@ contains FMT = "(2F40.14)" end if + ! writing an output directory write (t_step_dir, '(A,I0,A,I0)') trim(case_dir) // '/D' file_path = trim(t_step_dir) // '/.' @@ -409,6 +441,7 @@ contains end if end if + ! 1D if (n == 0 .and. p == 0) then if (model_eqns == 2 .and. (.not. igr)) then do i = 1, sys_size @@ -471,6 +504,7 @@ contains FMT = "(3F40.14)" end if + ! 2D if ((n > 0) .and. (p == 0)) then do i = 1, sys_size write (file_path, '(A,I0,A,I2.2,A,I6.6,A)') trim(t_step_dir) // '/cons.', i, '.', proc_rank, '.', t_step, '.dat' @@ -555,6 +589,7 @@ contains FMT = "(4F40.14)" end if + ! 3D if (p > 0) then do i = 1, sys_size write (file_path, '(A,I0,A,I2.2,A,I6.6,A)') trim(t_step_dir) // '/cons.', i, '.', proc_rank, '.', t_step, '.dat' @@ -648,7 +683,11 @@ contains end subroutine s_write_serial_data_files - !> Write grid and conservative variable data files in parallel via MPI I/O + !> The goal of this subroutine is to output the grid and conservative variables data files for given time-step. + !! @param q_cons_vf Cell-average conservative variables + !! @param t_step Current time-step + !! @param bc_type Boundary condition type + !! @param beta Eulerian void fraction from lagrangian bubbles impure subroutine s_write_parallel_data_files(q_cons_vf, t_step, bc_type, beta) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf @@ -669,6 +708,7 @@ contains character(len=10) :: t_step_string integer :: i !< Generic loop iterator integer :: alt_sys !< Altered system size for the lagrangian subgrid bubble model + ! Down sampling variables integer :: m_ds, n_ds, p_ds integer :: m_glb_ds, n_glb_ds, p_glb_ds @@ -687,6 +727,7 @@ contains if (file_per_process) then call s_int_to_str(t_step, t_step_string) + ! Initialize MPI data I/O if (down_sample) then call s_initialize_mpi_data_ds(q_cons_temp_ds) else @@ -708,8 +749,10 @@ contains call s_mpi_barrier() call DelayFileAccess(proc_rank) + ! Initialize MPI data I/O call s_initialize_mpi_data(q_cons_vf) + ! Open the file to write all flow variables write (file_loc, '(I0,A,i7.7,A)') t_step, '_', proc_rank, '.dat' file_loc = trim(case_dir) // '/restart_data/lustre_' // trim(t_step_string) // trim(mpiiofs) // trim(file_loc) inquire (FILE=trim(file_loc), EXIST=file_exist) @@ -719,17 +762,20 @@ contains call MPI_FILE_OPEN(MPI_COMM_SELF, file_loc, ior(MPI_MODE_WRONLY, MPI_MODE_CREATE), mpi_info_int, ifile, ierr) if (down_sample) then + ! Size of local arrays data_size = (m_ds + 3)*(n_ds + 3)*(p_ds + 3) m_glb_save = m_glb_ds + 1 n_glb_save = n_glb_ds + 1 p_glb_save = p_glb_ds + 1 else + ! Size of local arrays data_size = (m + 1)*(n + 1)*(p + 1) m_glb_save = m_glb + 1 n_glb_save = n_glb + 1 p_glb_save = p_glb + 1 end if + ! Resize some integers so MPI can write even the biggest files m_MOK = int(m_glb_save + 1, MPI_OFFSET_KIND) n_MOK = int(n_glb_save + 1, MPI_OFFSET_KIND) p_MOK = int(p_glb_save + 1, MPI_OFFSET_KIND) @@ -739,11 +785,13 @@ contains NVARS_MOK = int(sys_size, MPI_OFFSET_KIND) if (bubbles_euler) then + ! Write the data for each variable do i = 1, sys_size var_MOK = int(i, MPI_OFFSET_KIND) call MPI_FILE_WRITE_ALL(ifile, MPI_IO_DATA%var(i)%sf, data_size*mpi_io_type, mpi_io_p, status, ierr) end do + ! Write pb and mv for non-polytropic qbmm if (qbmm .and. .not. polytropic) then do i = sys_size + 1, sys_size + 2*nb*nnode var_MOK = int(i, MPI_OFFSET_KIND) @@ -769,6 +817,8 @@ contains call MPI_FILE_CLOSE(ifile, ierr) else + ! Initialize MPI data I/O + if (ib) then call s_initialize_mpi_data(q_cons_vf, ib_markers) else if (present(beta)) then @@ -785,8 +835,10 @@ contains end if call MPI_FILE_OPEN(MPI_COMM_WORLD, file_loc, ior(MPI_MODE_WRONLY, MPI_MODE_CREATE), mpi_info_int, ifile, ierr) + ! Size of local arrays data_size = (m + 1)*(n + 1)*(p + 1) + ! Resize some integers so MPI can write even the biggest files m_MOK = int(m_glb + 1, MPI_OFFSET_KIND) n_MOK = int(n_glb + 1, MPI_OFFSET_KIND) p_MOK = int(p_glb + 1, MPI_OFFSET_KIND) @@ -796,18 +848,22 @@ contains NVARS_MOK = int(alt_sys, MPI_OFFSET_KIND) if (bubbles_euler) then + ! Write the data for each variable do i = 1, sys_size var_MOK = int(i, MPI_OFFSET_KIND) + ! Initial displacement to skip at beginning of file disp = m_MOK*max(MOK, n_MOK)*max(MOK, p_MOK)*WP_MOK*(var_MOK - 1) call MPI_FILE_SET_VIEW(ifile, disp, mpi_p, MPI_IO_DATA%view(i), 'native', mpi_info_int, ierr) call MPI_FILE_WRITE_ALL(ifile, MPI_IO_DATA%var(i)%sf, data_size*mpi_io_type, mpi_io_p, status, ierr) end do + ! Write pb and mv for non-polytropic qbmm if (qbmm .and. .not. polytropic) then do i = sys_size + 1, sys_size + 2*nb*nnode var_MOK = int(i, MPI_OFFSET_KIND) + ! Initial displacement to skip at beginning of file disp = m_MOK*max(MOK, n_MOK)*max(MOK, p_MOK)*WP_MOK*(var_MOK - 1) call MPI_FILE_SET_VIEW(ifile, disp, mpi_p, MPI_IO_DATA%view(i), 'native', mpi_info_int, ierr) @@ -818,6 +874,7 @@ contains do i = 1, sys_size ! TODO: check if sys_size is correct var_MOK = int(i, MPI_OFFSET_KIND) + ! Initial displacement to skip at beginning of file disp = m_MOK*max(MOK, n_MOK)*max(MOK, p_MOK)*WP_MOK*(var_MOK - 1) call MPI_FILE_SET_VIEW(ifile, disp, mpi_p, MPI_IO_DATA%view(i), 'native', mpi_info_int, ierr) @@ -825,9 +882,11 @@ contains end do end if + ! Correction for the lagrangian subgrid bubble model if (present(beta)) then var_MOK = int(sys_size + 1, MPI_OFFSET_KIND) + ! Initial displacement to skip at beginning of file disp = m_MOK*max(MOK, n_MOK)*max(MOK, p_MOK)*WP_MOK*(var_MOK - 1) call MPI_FILE_SET_VIEW(ifile, disp, mpi_p, MPI_IO_DATA%view(sys_size + 1), 'native', mpi_info_int, ierr) @@ -836,21 +895,33 @@ contains call MPI_FILE_CLOSE(ifile, ierr) + ! Write ib data if (ib) then call s_write_parallel_ib_data(t_step) + ! write (file_loc, '(A)') 'ib.dat' file_loc = trim(case_dir)//'/restart_data'//trim(mpiiofs)//trim(file_loc) call + ! MPI_FILE_OPEN(MPI_COMM_WORLD, file_loc, ior(MPI_MODE_WRONLY, MPI_MODE_CREATE), & mpi_info_int, ifile, ierr) + + ! var_MOK = int(sys_size + 1, MPI_OFFSET_KIND) disp = m_MOK*max(MOK, n_MOK)*max(MOK, p_MOK)*WP_MOK*(var_MOK - 1 + + ! int(t_step/t_step_save)) + + ! call MPI_FILE_SET_VIEW(ifile, disp, MPI_INTEGER, MPI_IO_IB_DATA%view, & 'native', mpi_info_int, ierr) call + ! MPI_FILE_WRITE_ALL(ifile, MPI_IO_IB_DATA%var%sf, data_size, & MPI_INTEGER, status, ierr) call + ! MPI_FILE_CLOSE(ifile, ierr) end if end if #endif end subroutine s_write_parallel_data_files - !> Write immersed boundary marker data to a serial (per-processor) unformatted file + !> @brief Writes immersed boundary marker data to a serial (per-processor) unformatted file. subroutine s_write_serial_ib_data(time_step) integer, intent(in) :: time_step character(LEN=path_len + 2*name_len) :: file_path character(LEN=path_len + 2*name_len) :: t_step_dir + ! Creating or overwriting the time-step root directory + write (t_step_dir, '(A,I0,A,I0)') trim(case_dir) // '/p_all' write (t_step_dir, '(a,i0,a,i0)') trim(case_dir) // '/p_all/p', proc_rank, '/', time_step write (file_path, '(A,I0,A)') trim(t_step_dir) // '/ib_data.dat' @@ -862,7 +933,7 @@ contains end subroutine s_write_serial_ib_data - !> Write immersed boundary marker data in parallel using MPI I/O + !> @brief Writes immersed boundary marker data in parallel using MPI I/O. subroutine s_write_parallel_ib_data(time_step) integer, intent(in) :: time_step @@ -877,6 +948,7 @@ contains $:GPU_UPDATE(host='[ib_markers%sf]') + ! Size of local arrays data_size = (m + 1)*(n + 1)*(p + 1) m_MOK = int(m_glb + 1, MPI_OFFSET_KIND) n_MOK = int(n_glb + 1, MPI_OFFSET_KIND) @@ -899,7 +971,7 @@ contains end subroutine s_write_parallel_ib_data - !> Dispatch immersed boundary data output to the serial or parallel writer + !> @brief Dispatches immersed boundary data output to the serial or parallel writer. subroutine s_write_ib_data_file(time_step) integer, intent(in) :: time_step @@ -912,7 +984,7 @@ contains end subroutine s_write_ib_data_file - !> Write IB state records to D/ib_state.dat (rank 0 only) + !> @brief Writes IB state records to D/ib_state.dat. Must be called only on rank 0. impure subroutine s_write_ib_state_file() integer :: i @@ -924,7 +996,9 @@ contains end subroutine s_write_ib_state_file - !> Write center-of-mass data at the current time step + !> This writes a formatted data file where the root processor can write out the CoM information + !! @param t_step Current time-step + !! @param c_mass_in Center of mass information impure subroutine s_write_com_files(t_step, c_mass_in) integer, intent(in) :: t_step @@ -932,6 +1006,8 @@ contains integer :: i !< Generic loop iterator real(wp) :: nondim_time !< Non-dimensional time + ! Non-dimensional time calculation + if (t_step_old /= dflt_int) then nondim_time = real(t_step + t_step_old, wp)*dt else @@ -957,7 +1033,10 @@ contains end subroutine s_write_com_files - !> Write flow probe data at the current time step + !> This writes a formatted data file for the flow probe information + !! @param t_step Current time-step + !! @param q_cons_vf Conservative variables + !! @param accel_mag Acceleration magnitude information impure subroutine s_write_probe_files(t_step, q_cons_vf, accel_mag) integer, intent(in) :: t_step @@ -1004,6 +1083,7 @@ contains T = dflt_T_guess + ! Non-dimensional time calculation if (time_stepper == 23) then nondim_time = mytime else @@ -1015,6 +1095,7 @@ contains end if do i = 1, num_probes + ! Zeroing out flow variables for all processors rho = 0._wp do s = 1, num_vels vel(s) = 0._wp @@ -1041,6 +1122,7 @@ contains end do damage_state = 0._wp + ! Find probe location in terms of indices on a specific processor if (n == 0) then if ((probe(i)%x >= x_cb(-1)) .and. (probe(i)%x <= x_cb(m))) then do s = -1, m @@ -1494,17 +1576,21 @@ contains end subroutine s_write_probe_files - !> Write footer with stability criteria extrema and run-time to the information file, then close it + !> The goal of this subroutine is to write to the run-time information file basic footer information applicable to the current + !! computation and to close the file when done. The footer contains the stability criteria extrema over all of the time-steps + !! and the simulation run-time. impure subroutine s_close_run_time_information_file real(wp) :: run_time !< Run-time of the simulation + ! Writing the footer of and closing the run-time information file + write (3, '(A)') ' ' write (3, '(A)') '' write (3, '(A,F9.6)') 'ICFL Max: ', icfl_max if (viscous) write (3, '(A,F9.6)') 'VCFL Max: ', vcfl_max - if (viscous) write (3, '(A,F10.6)') 'Rc Min: ', Rc_min + if (viscous) write (3, '(A,ES16.6)') 'Rc Min: ', Rc_min call cpu_time(run_time) @@ -1537,28 +1623,25 @@ contains end subroutine s_close_probe_files - !> Close the immersed boundary state file impure subroutine s_close_ib_state_file close (ib_state_unit) end subroutine s_close_ib_state_file - !> Initialize the data output module + !> The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other + !! procedures that are necessary to setup the module. impure subroutine s_initialize_data_output_module integer :: i, m_ds, n_ds, p_ds + ! Allocating/initializing ICFL, VCFL, CCFL and Rc stability criteria + if (run_time_info) then - @:ALLOCATE(icfl_sf(0:m, 0:n, 0:p)) icfl_max = 0._wp - if (viscous) then - @:ALLOCATE(vcfl_sf(0:m, 0:n, 0:p)) - @:ALLOCATE(Rc_sf (0:m, 0:n, 0:p)) - vcfl_max = 0._wp - Rc_min = 1.e3_wp + Rc_min = 1.e12_wp end if end if @@ -1588,13 +1671,6 @@ contains @:DEALLOCATE(c_mass) end if - if (run_time_info) then - @:DEALLOCATE(icfl_sf) - if (viscous) then - @:DEALLOCATE(vcfl_sf, Rc_sf) - end if - end if - if (down_sample) then do i = 1, sys_size deallocate (q_cons_temp_ds(i)%sf) diff --git a/src/simulation/m_derived_variables.fpp b/src/simulation/m_derived_variables.fpp index d0be1a8426..c608a596c5 100644 --- a/src/simulation/m_derived_variables.fpp +++ b/src/simulation/m_derived_variables.fpp @@ -97,6 +97,10 @@ contains end subroutine s_initialize_derived_variables !> Writes coherent body information, communication files, and probes. + !! @param t_step Current time-step + !! @param q_cons_vf Conservative variables + !! @param q_prim_ts1 Primitive variables at time-stage 1 + !! @param q_prim_ts2 Primitive variables at time-stage 2 subroutine s_compute_derived_variables(t_step, q_cons_vf, q_prim_ts1, q_prim_ts2) integer, intent(in) :: t_step @@ -142,7 +146,15 @@ contains end subroutine s_compute_derived_variables - !> Compute a component of the acceleration field from the primitive variables + !> This subroutine receives as inputs the indicator of the component of the acceleration that should be outputted and the + !! primitive variables. From those inputs, it proceeds to calculate values of the desired acceleration component, which are + !! subsequently stored in derived flow quantity storage variable, q_sf. + !! @param i Acceleration component indicator + !! @param q_prim_vf0 Primitive variables + !! @param q_prim_vf1 Primitive variables + !! @param q_prim_vf2 Primitive variables + !! @param q_prim_vf3 Primitive variables + !! @param q_sf Acceleration component subroutine s_derive_acceleration_component(i, q_prim_vf0, q_prim_vf1, q_prim_vf2, q_prim_vf3, q_sf) integer, intent(in) :: i @@ -152,6 +164,7 @@ contains type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf3 real(wp), dimension(0:m,0:n,0:p), intent(out) :: q_sf integer :: j, k, l, r !< Generic loop iterators + ! Computing the acceleration component in the x-coordinate direction if (i == 1) then @@ -336,7 +349,11 @@ contains end subroutine s_derive_acceleration_component - !> Compute the center of mass for each fluid from the primitive variables + !> This subroutine is used together with the volume fraction model and when called upon, it computes the location of of the + !! center of mass for each fluid from the inputted primitive variables, q_prim_vf. The computed location is then written to a + !! formatted data file by the root process. + !! @param q_vf Primitive variables + !! @param c_m Mass,x-location,y-location,z-location impure subroutine s_derive_center_of_mass(q_vf, c_m) type(scalar_field), dimension(sys_size), intent(in) :: q_vf diff --git a/src/simulation/m_fftw.fpp b/src/simulation/m_fftw.fpp index 38005f76ca..cc884cb0f5 100644 --- a/src/simulation/m_fftw.fpp +++ b/src/simulation/m_fftw.fpp @@ -12,6 +12,7 @@ module m_fftw use m_derived_types use m_global_parameters use m_mpi_proxy + #if defined(MFC_GPU) && defined(__PGI) use cufft #elif defined(MFC_GPU) @@ -34,6 +35,7 @@ module m_fftw real(c_double), pointer :: data_real(:) !< Real data complex(c_double_complex), pointer :: data_cmplx(:) !< Complex data in Fourier space complex(c_double_complex), pointer :: data_fltr_cmplx(:) !< Filtered complex data in Fourier space + #if defined(MFC_GPU) $:GPU_DECLARE(create='[real_size, cmplx_size, x_size, batch_size, Nfq]') @@ -58,10 +60,12 @@ module m_fftw contains - !> Initialize the FFTW module + !> The purpose of this subroutine is to create the fftw plan that will be used in the forward and backward DFTs when applying + !! the Fourier filter in the azimuthal direction. impure subroutine s_initialize_fftw_module integer :: ierr !< Generic flag used to identify and report GPU errors + ! Size of input array going into DFT real_size = p + 1 @@ -115,12 +119,15 @@ contains end subroutine s_initialize_fftw_module - !> Apply a Fourier low-pass filter in the azimuthal direction to remove high-frequency content + !> The purpose of this subroutine is to apply a Fourier low- pass filter to the flow variables in the azimuthal direction to + !! remove the high-frequency content. This alleviates the restrictive CFL condition arising from cells near the axis. + !! @param q_cons_vf Conservative variables impure subroutine s_apply_fourier_filter(q_cons_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf integer :: i, j, k, l !< Generic loop iterators integer :: ierr !< Generic flag used to identify and report GPU errors + ! Restrict filter to processors that have cells adjacent to axis if (bc_y%beg >= 0) return @@ -286,12 +293,12 @@ contains end subroutine s_apply_fourier_filter - !> Finalize the FFTW module + !> The purpose of this subroutine is to destroy the fftw plan that will be used in the forward and backward DFTs when applying + !! the Fourier filter in the azimuthal direction. impure subroutine s_finalize_fftw_module #if defined(MFC_GPU) integer :: ierr !< Generic flag used to identify and report GPU errors - @:DEALLOCATE(data_real_gpu, data_fltr_cmplx_gpu, data_cmplx_gpu) #if defined(__PGI) ierr = cufftDestroy(fwd_plan_gpu) diff --git a/src/simulation/m_global_parameters.fpp b/src/simulation/m_global_parameters.fpp index 079d36ebc2..9951465a23 100644 --- a/src/simulation/m_global_parameters.fpp +++ b/src/simulation/m_global_parameters.fpp @@ -14,6 +14,7 @@ module m_global_parameters use m_derived_types use m_helper_basic + ! $:USE_GPU_MODULE() implicit none @@ -26,8 +27,10 @@ module m_global_parameters character(LEN=path_len) :: case_dir !< Case folder location logical :: run_time_info !< Run-time output flag integer :: t_step_old !< Existing IC/grid folder + ! Computational Domain Parameters integer :: proc_rank !< Rank of the local processor + !> @name Number of cells in the x-, y- and z-directions, respectively !> @{ integer :: m, n, p @@ -51,20 +54,22 @@ module m_global_parameters !> @name Cell-boundary (CB) locations in the x-, y- and z-directions, respectively !> @{ real(wp), target, allocatable, dimension(:) :: x_cb, y_cb, z_cb + type(bounds_info), dimension(3) :: glb_bounds !> @} !> @name Cell-center (CC) locations in the x-, y- and z-directions, respectively !> @{ real(wp), target, allocatable, dimension(:) :: x_cc, y_cc, z_cc !> @} - ! type(bounds_info) :: x_domain, y_domain, z_domain !< Locations of the domain bounds in the x-, y- and z-coordinate directions + !> @name Cell-width distributions in the x-, y- and z-directions, respectively !> @{ real(wp), target, allocatable, dimension(:) :: dx, dy, dz !> @} real(wp) :: dt !< Size of the time-step - $:GPU_DECLARE(create='[x_cb, y_cb, z_cb, x_cc, y_cc, z_cc, dx, dy, dz, dt, m, n, p]') + + $:GPU_DECLARE(create='[x_cb, y_cb, z_cb, x_cc, y_cc, z_cc, dx, dy, dz, dt, m, n, p, glb_bounds]') !> @name Starting time-step iteration, stopping time-step iteration and the number of time-step iterations between successive !! solution backups, respectively @@ -81,6 +86,7 @@ module m_global_parameters logical :: cfl_adap_dt, cfl_const_dt, cfl_dt integer :: t_step_print !< Number of time-steps between printouts + ! Simulation Algorithm Parameters integer :: model_eqns !< Multicomponent flow model #:if MFC_CASE_OPTIMIZATION @@ -206,10 +212,13 @@ module m_global_parameters integer :: relax_model !< Relaxation model real(wp) :: palpha_eps !< trigger parameter for the p relaxation procedure, phase change model real(wp) :: ptgalpha_eps !< trigger parameter for the pTg relaxation procedure, phase change model + $:GPU_DECLARE(create='[relax, relax_model, palpha_eps, ptgalpha_eps]') - integer :: num_bc_patches - logical :: bc_io + integer :: num_bc_patches + logical :: bc_io + logical, dimension(3) :: periodic_bc + !> @name Boundary conditions (BC) in the x-, y- and z-directions, respectively !> @{ type(int_bounds_info) :: bc_x, bc_y, bc_z @@ -221,18 +230,23 @@ module m_global_parameters #elif defined(MFC_OpenMP) $:GPU_DECLARE(create='[bc_x, bc_y, bc_z]') #endif - type(bounds_info) :: x_domain, y_domain, z_domain - $:GPU_DECLARE(create='[x_domain, y_domain, z_domain]') - real(wp) :: x_a, y_a, z_a - real(wp) :: x_b, y_b, z_b - logical :: parallel_io !< Format of the data files - logical :: file_per_process !< shared file or not when using parallel io - integer :: precision !< Precision of output files - logical :: down_sample !< down sample the output files + + logical :: parallel_io !< Format of the data files + logical :: file_per_process !< shared file or not when using parallel io + integer :: precision !< Precision of output files + logical :: down_sample !< down sample the output files $:GPU_DECLARE(create='[down_sample]') - integer, allocatable, dimension(:) :: proc_coords !< Processor coordinates in MPI_CART_COMM - integer, allocatable, dimension(:) :: start_idx !< Starting cell-center index of local processor in global grid + integer, allocatable, dimension(:) :: proc_coords !< Processor coordinates in MPI_CART_COMM + type(bounds_info), allocatable, dimension(:) :: pcomm_coords + $:GPU_DECLARE(create='[pcomm_coords]') + !! Coordinates for EL particle transfer + + type(int_bounds_info), dimension(3) :: nidx !< Indices for neighboring processors + integer, allocatable, dimension(:,:,:) :: neighbor_ranks + !! Neighbor ranks + + integer, allocatable, dimension(:) :: start_idx !< Starting cell-center index of local processor in global grid type(mpi_io_var), public :: MPI_IO_DATA type(mpi_io_ib_var), public :: MPI_IO_IB_DATA type(mpi_io_airfoil_ib_var), public :: MPI_IO_airfoil_IB_DATA @@ -293,7 +307,9 @@ module m_global_parameters $:GPU_DECLARE(create='[Re_size, Re_size_max, Re_idx]') - ! WENO averaging flag: use arithmetic mean or unaltered WENO-reconstructed cell-boundary values + ! The WENO average (WA) flag regulates whether the calculation of any cell- average spatial derivatives is carried out in each + ! cell by utilizing the arithmetic mean of the left and right, WENO-reconstructed, cell-boundary values or simply, the unaltered + ! left and right, WENO-reconstructed, cell- boundary values. !> @{ real(wp) :: wa_flg !> @} @@ -311,24 +327,39 @@ module m_global_parameters $:GPU_DECLARE(create='[dir_idx, dir_flg, dir_idx_tau]') + !> The number of cells that are necessary to be able to store enough boundary conditions data to march the solution in the + !! physical computational domain to the next time-step. integer :: buff_size !< Number of ghost cells for boundary condition storage + $:GPU_DECLARE(create='[buff_size]') - integer :: shear_num !< Number of shear stress components - integer, dimension(3) :: shear_indices !< Indices of the stress components that represent shear stress - integer :: shear_BC_flip_num !< Number of shear stress components to reflect for boundary conditions + integer :: shear_num !< Number of shear stress components + integer, dimension(3) :: shear_indices !< Indices of the stress components that represent shear stress + integer :: shear_BC_flip_num !< Number of shear stress components to reflect for boundary conditions + !> Indices of shear stress components to reflect for boundary conditions. Size: (1:3, 1:shear_BC_flip_num) for (x/y/z, + !! [indices]) integer, dimension(3, 2) :: shear_BC_flip_indices !< Shear stress BC reflection indices (1:3, 1:shear_BC_flip_num) + $:GPU_DECLARE(create='[shear_num, shear_indices, shear_BC_flip_num, shear_BC_flip_indices]') ! END: Simulation Algorithm Parameters ! Fluids Physical Parameters + !> Database of the physical parameters of each of the fluids that is present in the flow. These include the stiffened gas + !! equation of state parameters, and the Reynolds numbers. type(physical_parameters), dimension(num_fluids_max) :: fluid_pp !< Stiffened gas EOS parameters and Reynolds numbers per fluid + ! Subgrid Bubble Parameters type(subgrid_bubble_physical_parameters) :: bub_pp - integer :: fd_order !< Finite-difference order for CoM and flow probe derivatives - integer :: fd_number !< Finite-difference half-stencil size: MAX(1, fd_order/2) + + !> The order of the finite-difference (fd) approximations of the first-order derivatives that need to be evaluated when the CoM + !! or flow probe data files are to be written at each time step + integer :: fd_order !< Finite-difference order for CoM and flow probe derivatives + + !> The finite-difference number is given by MAX(1, fd_order/2). Essentially, it is a measure of the half-size of the + !! finite-difference stencil for the selected order of accuracy. + integer :: fd_number !< Finite-difference half-stencil size: MAX(1, fd_order/2) $:GPU_DECLARE(create='[fd_order, fd_number]') logical :: probe_wrt @@ -352,6 +383,9 @@ module m_global_parameters type(ib_patch_parameters), dimension(num_patches_max) :: patch_ib !< Immersed boundary patch parameters type(vec3_dt), allocatable, dimension(:) :: airfoil_grid_u, airfoil_grid_l integer :: Np + !! Database of the immersed boundary patch parameters for each of the patches employed in the configuration of the initial + !! condition. Note that the maximum allowable number of patches, num_patches_max, may be changed in the module + !! m_derived_types.f90. $:GPU_DECLARE(create='[ib, num_ibs, patch_ib, Np, airfoil_grid_u, airfoil_grid_l]') !> @} @@ -470,16 +504,26 @@ module m_global_parameters !> @name lagrangian subgrid bubble parameters !> @{! - logical :: bubbles_lagrange !< Lagrangian subgrid bubble model switch - type(bubbles_lagrange_parameters) :: lag_params !< Lagrange bubbles' parameters - $:GPU_DECLARE(create='[bubbles_lagrange, lag_params]') + logical :: bubbles_lagrange !< Lagrangian subgrid bubble model switch + type(bubbles_lagrange_parameters) :: lag_params !< Lagrange bubbles' parameters + integer :: n_el_bubs_loc, n_el_bubs_glb !< Number of Lagrangian bubbles (local and global) + logical :: moving_lag_bubbles + logical :: lag_pressure_force + logical :: lag_gravity_force + integer :: lag_vel_model, lag_drag_model + $:GPU_DECLARE(create='[bubbles_lagrange, lag_params, n_el_bubs_loc, n_el_bubs_glb]') + $:GPU_DECLARE(create='[moving_lag_bubbles, lag_vel_model, lag_drag_model]') + $:GPU_DECLARE(create='[lag_pressure_force, lag_gravity_force]') !> @} real(wp) :: Bx0 !< Constant magnetic field in the x-direction (1D) $:GPU_DECLARE(create='[Bx0]') logical :: fft_wrt + !> AMDFlang workaround: keep a dummy logical to avoid a compiler case-optimization bug when a parameter+GPU-kernel conditional + !! is false logical :: dummy !< AMDFlang workaround for case-optimization + GPU-kernel bug + !> @name Continuum damage model parameters !> @{! real(wp) :: tau_star !< Stress threshold for continuum damage modeling @@ -502,6 +546,7 @@ contains impure subroutine s_assign_default_values_to_user_inputs integer :: i, j !< Generic loop iterator + ! Logistics case_dir = '.' @@ -596,6 +641,7 @@ contains num_bc_patches = 0 bc_io = .false. + periodic_bc = .false. bc_x%beg = dflt_int; bc_x%end = dflt_int bc_y%beg = dflt_int; bc_y%end = dflt_int @@ -608,9 +654,9 @@ contains #:endfor #:endfor - x_domain%beg = dflt_real; x_domain%end = dflt_real - y_domain%beg = dflt_real; y_domain%end = dflt_real - z_domain%beg = dflt_real; z_domain%end = dflt_real + glb_bounds(1)%beg = dflt_real; glb_bounds(1)%end = dflt_real + glb_bounds(2)%beg = dflt_real; glb_bounds(2)%end = dflt_real + glb_bounds(3)%beg = dflt_real; glb_bounds(3)%end = dflt_real ! Fluids physical parameters do i = 1, num_fluids_max @@ -774,10 +820,19 @@ contains lag_params%massTransfer_model = .false. lag_params%write_bubbles = .false. lag_params%write_bubbles_stats = .false. + lag_params%write_void_evol = .false. lag_params%nBubs_glb = dflt_int + lag_params%vel_model = dflt_int + lag_params%drag_model = dflt_int + lag_params%pressure_force = .true. + lag_params%gravity_force = .false. lag_params%epsilonb = 1._wp lag_params%charwidth = dflt_real + lag_params%charNz = dflt_int lag_params%valmaxvoid = dflt_real + lag_params%input_path = 'input/lag_bubbles.dat' + moving_lag_bubbles = .false. + lag_vel_model = dflt_int ! Continuum damage model tau_star = dflt_real @@ -837,7 +892,8 @@ contains end subroutine s_assign_default_values_to_user_inputs - !> Initialize the global parameters module + !> The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other + !! procedures that are necessary to setup the module. impure subroutine s_initialize_global_parameters_module integer :: i, j, k @@ -845,7 +901,6 @@ contains #:if not MFC_CASE_OPTIMIZATION ! Determining the degree of the WENO polynomials - if (recon_type == WENO_TYPE) then weno_polyn = (weno_order - 1)/2 if (teno) then @@ -863,7 +918,9 @@ contains $:GPU_UPDATE(device='[igr, igr_order, igr_iter_solver]') #:endif - ! Initialize counts: viscous fluids, surface-tension interfaces, curvature interfaces + ! Initializing the number of fluids for which viscous effects will be non-negligible, the number of distinctive material + ! interfaces for which surface tension will be important and also, the number of fluids for which the physical and geometric + ! curvatures of the interfaces will be computed Re_size = 0 Re_size_max = 0 @@ -894,7 +951,9 @@ contains E_idx = mom_idx%end + 1 if (igr) then - ! IGR: volume fractions after energy (N-1 for N fluids; skipped when num_fluids=1) + ! Volume fractions are stored in the indices immediately following the energy equation. IGR tracks a total of + ! (N-1) volume fractions for N fluids, hence the "-1" in adv_idx%end. If num_fluids = 1 then adv_idx%end < + ! adv_idx%beg, which skips all loops over the volume fractions since there is no volume fraction to track adv_idx%beg = E_idx + 1 ! Alpha for fluid 1 adv_idx%end = E_idx + num_fluids - 1 else @@ -1029,7 +1088,8 @@ contains end if end if - ! Count fluids with non-negligible viscous effects (Re > 0) + ! Determining the number of fluids for which the shear and the volume Reynolds numbers, e.g. viscous effects, are + ! important do i = 1, num_fluids if (fluid_pp(i)%Re(1) > 0) Re_size(1) = Re_size(1) + 1 if (fluid_pp(i)%Re(2) > 0) Re_size(2) = Re_size(2) + 1 @@ -1157,7 +1217,9 @@ contains end do end if - ! Configure WENO averaging flag (arithmetic mean vs. unaltered values) + ! Configuring the WENO average flag that will be used to regulate whether any spatial derivatives are to computed in each + ! cell by using the arithmetic mean of left and right, WENO-reconstructed, cell-boundary values or otherwise, the unaltered + ! left and right, WENO-reconstructed, cell-boundary values wa_flg = 0._wp; if (weno_avg) wa_flg = 1._wp $:GPU_UPDATE(device='[wa_flg]') @@ -1169,20 +1231,15 @@ contains if (ib) allocate (MPI_IO_IB_DATA%var%sf(0:m,0:n,0:p)) Np = 0 - if (elasticity) then - fd_number = max(1, fd_order/2) - end if - + if (elasticity) fd_number = max(1, fd_order/2) if (mhd) then ! TODO merge with above; waiting for hyperelasticity PR fd_number = max(1, fd_order/2) end if - - if (probe_wrt) then - fd_number = max(1, fd_order/2) - end if + if (probe_wrt) fd_number = max(1, fd_order/2) + if (bubbles_lagrange) fd_number = max(1, fd_order/2) call s_configure_coordinate_bounds(recon_type, weno_polyn, muscl_polyn, igr_order, buff_size, idwint, idwbuff, viscous, & - & bubbles_lagrange, m, n, p, num_dims, igr, ib) + & bubbles_lagrange, m, n, p, num_dims, igr, ib, fd_number) $:GPU_UPDATE(device='[idwint, idwbuff]') ! Configuring Coordinate Direction Indexes @@ -1296,6 +1353,8 @@ contains allocate (proc_coords(1:num_dims)) + @:ALLOCATE(pcomm_coords(1:num_dims)) + if (parallel_io .neqv. .true.) return #ifdef MFC_MPI @@ -1327,6 +1386,9 @@ contains end if deallocate (proc_coords) + + @:DEALLOCATE(pcomm_coords) + if (parallel_io) then deallocate (start_idx) @@ -1355,6 +1417,10 @@ contains if (p == 0) return @:DEALLOCATE(z_cb, z_cc, dz) + if (allocated(neighbor_ranks)) then + @:DEALLOCATE(neighbor_ranks) + end if + end subroutine s_finalize_global_parameters_module end module m_global_parameters diff --git a/src/simulation/m_hyperelastic.fpp b/src/simulation/m_hyperelastic.fpp index 22c2aace73..0e5c00709b 100644 --- a/src/simulation/m_hyperelastic.fpp +++ b/src/simulation/m_hyperelastic.fpp @@ -17,8 +17,8 @@ module m_hyperelastic private; public :: s_hyperelastic_rmt_stress_update, s_initialize_hyperelastic_module, s_finalize_hyperelastic_module - ! The btensor at the cell-interior Gaussian quadrature points. These tensor is needed to be calculated once and make the code - ! DRY. + !! The btensor at the cell-interior Gaussian quadrature points. These tensor is needed to be calculated once and make the code + !! DRY. type(vector_field) :: btensor $:GPU_DECLARE(create='[btensor]') @@ -31,7 +31,9 @@ module m_hyperelastic contains - !> Initialize the hyperelastic module + !> The following subroutine handles the calculation of the btensor. The calculation of the btensor takes qprimvf. calculate the + !! grad_xi, grad_xi is a nxn tensor calculate the inverse of grad_xi to obtain F, F is a nxn tensor calculate the FFtranspose to + !! obtain the btensor, btensor is nxn tensor btensor is symmetric, save the data space impure subroutine s_initialize_hyperelastic_module integer :: i !< generic iterator @@ -71,7 +73,11 @@ contains end subroutine s_initialize_hyperelastic_module - !> Compute the left Cauchy-Green deformation tensor and update the hyperelastic stress + !> The following subroutine handles the calculation of the btensor. The calculation of the btensor takes qprimvf. + !! @param q_cons_vf Conservative variables + !! @param q_prim_vf Primitive variables + !! calculate the grad_xi, grad_xi is a nxn tensor calculate the inverse of grad_xi to obtain F, F is a nxn tensor calculate the + !! FFtranspose to obtain the btensor, btensor is nxn tensor btensor is symmetric, save the data space subroutine s_hyperelastic_rmt_stress_update(q_cons_vf, q_prim_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf @@ -105,6 +111,7 @@ contains & Gs_hyper) rho = max(rho, sgm_eps) G_local = max(G_local, sgm_eps) + ! if ( G_local <= verysmall ) G_K = 0._wp if (G_local > verysmall) then $:GPU_LOOP(parallelism='[seq]') @@ -189,7 +196,15 @@ contains end subroutine s_hyperelastic_rmt_stress_update - !> Compute the neo-Hookean Cauchy stress from the left Cauchy-Green tensor + !> The following subroutine handles the calculation of the btensor. The calculation of the btensor takes qprimvf. + !! @param btensor_in Left Cauchy-Green deformation tensor + !! @param q_prim_vf Primitive variables + !! @param G_param Elastic shear modulus + !! @param j x-direction cell index + !! @param k y-direction cell index + !! @param l z-direction cell index + !! calculate the grad_xi, grad_xi is a nxn tensor calculate the inverse of grad_xi to obtain F, F is a nxn tensor calculate the + !! FFtranspose to obtain the btensor, btensor is nxn tensor btensor is symmetric, save the data space subroutine s_neoHookean_cauchy_solver(btensor_in, q_prim_vf, G_param, j, k, l) $:GPU_ROUTINE(parallelism='[seq]') @@ -200,10 +215,11 @@ contains real(wp) :: trace real(wp), parameter :: f13 = 1._wp/3._wp integer :: i !< Generic loop iterators + ! tensor is the symmetric tensor & calculate the trace of the tensor trace = btensor_in(1)%sf(j, k, l) + btensor_in(3)%sf(j, k, l) + btensor_in(6)%sf(j, k, l) - ! Deviatoric left Cauchy-Green tensor: dev(b) = b - (tr(b)/3)*I + ! calculate the deviatoric of the tensor #:for IJ in [1,3,6] btensor_in(${IJ}$)%sf(j, k, l) = btensor_in(${IJ}$)%sf(j, k, l) - f13*trace #:endfor @@ -212,12 +228,20 @@ contains do i = 1, b_size - 1 q_prim_vf(strxb + i - 1)%sf(j, k, l) = G_param*btensor_in(i)%sf(j, k, l)/btensor_in(b_size)%sf(j, k, l) end do - ! First invariant strain energy: W = G/2 * (I1 - 3), neo-Hookean model + ! compute the invariant without the elastic modulus q_prim_vf(xiend + 1)%sf(j, k, l) = 0.5_wp*(trace - 3.0_wp)/btensor_in(b_size)%sf(j, k, l) end subroutine s_neoHookean_cauchy_solver - !> Compute the Mooney-Rivlin Cauchy stress from the left Cauchy-Green tensor + !> The following subroutine handles the calculation of the btensor. The calculation of the btensor takes qprimvf. + !! @param btensor_in Left Cauchy-Green deformation tensor + !! @param q_prim_vf Primitive variables + !! @param G_param Elastic shear modulus + !! @param j x-direction cell index + !! @param k y-direction cell index + !! @param l z-direction cell index + !! calculate the grad_xi, grad_xi is a nxn tensor calculate the inverse of grad_xi to obtain F, F is a nxn tensor calculate the + !! FFtranspose to obtain the btensor, btensor is nxn tensor btensor is symmetric, save the data space subroutine s_Mooney_Rivlin_cauchy_solver(btensor_in, q_prim_vf, G_param, j, k, l) $:GPU_ROUTINE(parallelism='[seq]') @@ -228,10 +252,11 @@ contains real(wp) :: trace real(wp), parameter :: f13 = 1._wp/3._wp integer :: i !< Generic loop iterators - ! TODO: Make 1D and 2D capable + + ! TODO Make this 1D and 2D capable tensor is the symmetric tensor & calculate the trace of the tensor trace = btensor_in(1)%sf(j, k, l) + btensor_in(3)%sf(j, k, l) + btensor_in(6)%sf(j, k, l) - ! Deviatoric left Cauchy-Green tensor: dev(b) = b - (tr(b)/3)*I + ! calculate the deviatoric of the tensor btensor_in(1)%sf(j, k, l) = btensor_in(1)%sf(j, k, l) - f13*trace btensor_in(3)%sf(j, k, l) = btensor_in(3)%sf(j, k, l) - f13*trace btensor_in(6)%sf(j, k, l) = btensor_in(6)%sf(j, k, l) - f13*trace @@ -241,15 +266,16 @@ contains do i = 1, b_size - 1 q_prim_vf(strxb + i - 1)%sf(j, k, l) = G_param*btensor_in(i)%sf(j, k, l)/btensor_in(b_size)%sf(j, k, l) end do - ! First invariant strain energy: W = G/2 * (I1 - 3), neo-Hookean model + ! compute the invariant without the elastic modulus q_prim_vf(xiend + 1)%sf(j, k, l) = 0.5_wp*(trace - 3.0_wp)/btensor_in(b_size)%sf(j, k, l) end subroutine s_Mooney_Rivlin_cauchy_solver - !> Finalize the hyperelastic module + !> @brief Deallocates memory for hyperelastic deformation tensor and finite-difference coefficients. impure subroutine s_finalize_hyperelastic_module() integer :: i !< iterator + ! Deallocating memory do i = 1, b_size diff --git a/src/simulation/m_hypoelastic.fpp b/src/simulation/m_hypoelastic.fpp index d38741934e..79b2c620be 100644 --- a/src/simulation/m_hypoelastic.fpp +++ b/src/simulation/m_hypoelastic.fpp @@ -35,7 +35,7 @@ module m_hypoelastic contains - !> Initialize the hypoelastic module + !> @brief Allocates arrays and computes finite-difference coefficients for the hypoelastic stress model. impure subroutine s_initialize_hypoelastic_module integer :: i @@ -78,7 +78,10 @@ contains end subroutine s_initialize_hypoelastic_module - !> Compute the hypoelastic stress source terms + !> The purpose of this procedure is to compute the source terms that are needed for the elastic stress equations + !! @param idir Dimension splitting index + !! @param q_prim_vf Primitive variables + !! @param rhs_vf rhs variables subroutine s_compute_hypoelastic_rhs(idir, q_prim_vf, rhs_vf) integer, intent(in) :: idir @@ -191,7 +194,6 @@ contains G_K = G_K + q_prim_vf(advxb - 1 + i)%sf(k, l, q)*Gs_hypo(i) ! alpha_K(1) * Gs_hypo(1) end do - ! Continuum damage: (1-D) scales effective stiffness, D in [0,1] if (cont_damage) G_K = G_K*max((1._wp - q_prim_vf(damage_idx)%sf(k, l, q)), 0._wp) rho_K_field(k, l, q) = rho_K @@ -328,7 +330,7 @@ contains end subroutine s_compute_hypoelastic_rhs - !> Finalize the hypoelastic module + !> @brief Deallocates arrays used by the hypoelastic stress module. impure subroutine s_finalize_hypoelastic_module() @:DEALLOCATE(Gs_hypo) @@ -346,7 +348,7 @@ contains end subroutine s_finalize_hypoelastic_module - !> Compute the continuum damage source term from the principal stress state + !> @brief Computes the continuum damage source term from the principal stress state. subroutine s_compute_damage_state(q_cons_vf, rhs_vf) type(scalar_field), dimension(sys_size), intent(in) :: q_cons_vf diff --git a/src/simulation/m_ib_patches.fpp b/src/simulation/m_ib_patches.fpp index a7d8e45eee..41aeffec30 100644 --- a/src/simulation/m_ib_patches.fpp +++ b/src/simulation/m_ib_patches.fpp @@ -32,26 +32,26 @@ module m_ib_patches integer :: smooth_patch_id real(wp) :: smooth_coeff $:GPU_DECLARE(create='[smooth_patch_id, smooth_coeff]') - ! These variables are analogous in both meaning and use to the similarly named components in the ic_patch_parameters type (see - ! m_derived_types.f90 for additional details). They are employed as a means to more concisely perform the actions necessary to - ! lay out a particular patch on the grid. + !! These variables are analogous in both meaning and use to the similarly named components in the ic_patch_parameters type (see + !! m_derived_types.f90 for additional details). They are employed as a means to more concisely perform the actions necessary to + !! lay out a particular patch on the grid. real(wp) :: cart_x, cart_y, cart_z real(wp) :: sph_phi $:GPU_DECLARE(create='[cart_x, cart_y, cart_z, sph_phi]') - ! Variables to be used to hold cell locations in Cartesian coordinates if 3D simulation is using cylindrical coordinates + !! Variables to be used to hold cell locations in Cartesian coordinates if 3D simulation is using cylindrical coordinates type(bounds_info) :: x_boundary, y_boundary, z_boundary $:GPU_DECLARE(create='[x_boundary, y_boundary, z_boundary]') - ! These variables combine the centroid and length parameters associated with a particular patch to yield the locations of the - ! patch boundaries in the x-, y- and z-coordinate directions. They are used as a means to concisely perform the actions - ! necessary to lay out a particular patch on the grid. + !! These variables combine the centroid and length parameters associated with a particular patch to yield the locations of the + !! patch boundaries in the x-, y- and z-coordinate directions. They are used as a means to concisely perform the actions + !! necessary to lay out a particular patch on the grid. character(len=5) :: istr !< string to store int to string result for error checking contains - !> Apply all immersed boundary patch geometries to mark interior cells in the IB marker array + !> @brief Applies all immersed boundary patch geometries to mark interior cells in the IB marker array. impure subroutine s_apply_ib_patches(ib_markers) type(integer_field), intent(inout) :: ib_markers @@ -112,7 +112,12 @@ contains end subroutine s_apply_ib_patches - !> Mark cells inside a circular immersed boundary + !> The circular patch is a 2D geometry that may be used, for example, in creating a bubble or a droplet. The geometry of the + !! patch is well-defined when its centroid and radius are provided. Note that the circular patch DOES allow for the smoothing of + !! its boundary. + !! @param patch_id is the patch identifier + !! @param ib_markers Array to track patch ids + !! @param ib True if this patch is an immersed boundary subroutine s_ib_circle(patch_id, ib_markers, xp, yp) integer, intent(in) :: patch_id @@ -125,8 +130,8 @@ contains ! Transferring the circular patch's radius, centroid, smearing patch identity and smearing coefficient information - center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(y_domain%end - y_domain%beg) + center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) radius = patch_ib(patch_id)%radius ! encode the periodicity information into the patch_id @@ -140,7 +145,8 @@ contains call get_bounding_indices(center(1) - radius, center(1) + radius, x_cc, il, ir) call get_bounding_indices(center(2) - radius, center(2) + radius, y_cc, jl, jr) - ! Assign primitive variables if circle covers cell and patch has write permission + ! Checking whether the circle covers a particular cell in the domain and verifying whether the current patch has permission + ! to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to this cell. $:GPU_PARALLEL_LOOP(private='[i, j]', copyin='[encoded_patch_id, center, radius]', collapse=2) do j = jl, jr @@ -154,7 +160,9 @@ contains end subroutine s_ib_circle - !> Mark cells inside a 2D NACA 4-digit airfoil immersed boundary + !> @brief Marks cells inside a 2D NACA 4-digit airfoil immersed boundary using upper and lower surface grids. + !! @param patch_id is the patch identifier + !! @param ib_markers Array to track patch ids subroutine s_ib_airfoil(patch_id, ib_markers, xp, yp) integer, intent(in) :: patch_id @@ -169,8 +177,8 @@ contains real(wp), dimension(1:2) :: center !< x and y coordinates in local IB frame real(wp), dimension(1:3,1:3) :: inverse_rotation - center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(y_domain%end - y_domain%beg) + center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) ca_in = patch_ib(patch_id)%c pa = patch_ib(patch_id)%p ma = patch_ib(patch_id)%m @@ -187,7 +195,7 @@ contains @:ALLOCATE(airfoil_grid_u(1:Np)) @:ALLOCATE(airfoil_grid_l(1:Np)) - ! TODO :: The below instantiations are already handled by the loop below + ! TODO :: The below instantiations are already handles by the loop below airfoil_grid_u(1)%x = 0._wp airfoil_grid_u(1)%y = 0._wp @@ -195,7 +203,7 @@ contains airfoil_grid_l(1)%y = 0._wp do i = 1, Np1 + Np2 - 1 - ! TODO :: This allocates the upper and lower airfoil arrays, and does not need to be performed each time the IB + ! TODO :: This allocated the upper and lower airfoil arrays, and does not need to be performed each time the IB ! markers are updated. Place this as a separate subroutine. if (i <= Np1) then xc = i*(pa*ca_in/Np1) @@ -277,11 +285,13 @@ contains end do if (f_approx_equal(airfoil_grid_u(k)%x, xy_local(1))) then if (xy_local(2) <= airfoil_grid_u(k)%y) then + !!IB ib_markers%sf(i, j, 0) = encoded_patch_id end if else f = (airfoil_grid_u(k)%x - xy_local(1))/(airfoil_grid_u(k)%x - airfoil_grid_u(k - 1)%x) if (xy_local(2) <= ((1._wp - f)*airfoil_grid_u(k)%y + f*airfoil_grid_u(k - 1)%y)) then + !!IB ib_markers%sf(i, j, 0) = encoded_patch_id end if end if @@ -292,12 +302,14 @@ contains end do if (f_approx_equal(airfoil_grid_l(k)%x, xy_local(1))) then if (xy_local(2) >= airfoil_grid_l(k)%y) then + !!IB ib_markers%sf(i, j, 0) = encoded_patch_id end if else f = (airfoil_grid_l(k)%x - xy_local(1))/(airfoil_grid_l(k)%x - airfoil_grid_l(k - 1)%x) if (xy_local(2) >= ((1._wp - f)*airfoil_grid_l(k)%y + f*airfoil_grid_l(k - 1)%y)) then + !!IB ib_markers%sf(i, j, 0) = encoded_patch_id end if end if @@ -309,7 +321,10 @@ contains end subroutine s_ib_airfoil - !> Mark cells inside a 3D extruded NACA 4-digit airfoil immersed boundary with finite span + !> @brief Marks cells inside a 3D extruded NACA 4-digit airfoil immersed boundary with finite span. + !! @param patch_id is the patch identifier + !! @param ib_markers Array to track patch ids + !! @param ib True if this patch is an immersed boundary subroutine s_ib_3D_airfoil(patch_id, ib_markers, xp, yp, zp) integer, intent(in) :: patch_id @@ -322,9 +337,9 @@ contains real(wp), dimension(1:3) :: xyz_local, center, offset !< x, y, z coordinates in local IB frame real(wp), dimension(1:3,1:3) :: inverse_rotation - center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(y_domain%end - y_domain%beg) - center(3) = patch_ib(patch_id)%z_centroid + real(zp, wp)*(z_domain%end - z_domain%beg) + center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) + center(3) = patch_ib(patch_id)%z_centroid + real(zp, wp)*(glb_bounds(3)%end - glb_bounds(3)%beg) lz = patch_ib(patch_id)%length_z ca_in = patch_ib(patch_id)%c pa = patch_ib(patch_id)%p @@ -436,6 +451,7 @@ contains else f = (airfoil_grid_u(k)%x - xyz_local(1))/(airfoil_grid_u(k)%x - airfoil_grid_u(k - 1)%x) if (xyz_local(2) <= ((1._wp - f)*airfoil_grid_u(k)%y + f*airfoil_grid_u(k - 1)%y)) then + !!IB ib_markers%sf(i, j, l) = encoded_patch_id end if end if @@ -446,12 +462,14 @@ contains end do if (f_approx_equal(airfoil_grid_l(k)%x, xyz_local(1))) then if (xyz_local(2) >= airfoil_grid_l(k)%y) then + !!IB ib_markers%sf(i, j, l) = encoded_patch_id end if else f = (airfoil_grid_l(k)%x - xyz_local(1))/(airfoil_grid_l(k)%x - airfoil_grid_l(k - 1)%x) if (xyz_local(2) >= ((1._wp - f)*airfoil_grid_l(k)%y + f*airfoil_grid_l(k - 1)%y)) then + !!IB ib_markers%sf(i, j, l) = encoded_patch_id end if end if @@ -465,7 +483,13 @@ contains end subroutine s_ib_3D_airfoil - !> Mark cells inside a rectangular immersed boundary + !> The rectangular patch is a 2D geometry that may be used, for example, in creating a solid boundary, or pre-/post- shock + !! region, in alignment with the axes of the Cartesian coordinate system. The geometry of such a patch is well- defined when its + !! centroid and lengths in the x- and y- coordinate directions are provided. Please note that the rectangular patch DOES NOT + !! allow for the smoothing of its boundaries. + !! @param patch_id is the patch identifier + !! @param ib_markers Array to track patch ids + !! @param ib True if this patch is an immersed boundary subroutine s_ib_rectangle(patch_id, ib_markers, xp, yp) integer, intent(in) :: patch_id @@ -480,8 +504,8 @@ contains ! Transferring the rectangle's centroid and length information - center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(y_domain%end - y_domain%beg) + center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) length(1) = patch_ib(patch_id)%length_x length(2) = patch_ib(patch_id)%length_y inverse_rotation(:,:) = patch_ib(patch_id)%rotation_matrix_inverse(:,:) @@ -498,7 +522,9 @@ contains call get_bounding_indices(center(1) - corner_distance, center(1) + corner_distance, x_cc, il, ir) call get_bounding_indices(center(2) - corner_distance, center(2) + corner_distance, y_cc, jl, jr) - ! Assign primitive variables if rectangle covers cell and patch has write permission + ! Checking whether the rectangle covers a particular cell in the domain and verifying whether the current patch has the + ! permission to write to that cell. If both queries check out, the primitive variables of the current patch are assigned to + ! this cell. $:GPU_PARALLEL_LOOP(private='[i, j, xy_local]', copyin='[encoded_patch_id, center, length, inverse_rotation, x_cc, & & y_cc]', collapse=2) do j = jl, jr @@ -518,12 +544,18 @@ contains end subroutine s_ib_rectangle - !> Mark cells inside a spherical immersed boundary + !> The spherical patch is a 3D geometry that may be used, for example, in creating a bubble or a droplet. The patch geometry is + !! well-defined when its centroid and radius are provided. Please note that the spherical patch DOES allow for the smoothing of + !! its boundary. + !! @param patch_id is the patch identifier + !! @param ib_markers Array to track patch ids + !! @param ib True if this patch is an immersed boundary subroutine s_ib_sphere(patch_id, ib_markers, xp, yp, zp) integer, intent(in) :: patch_id type(integer_field), intent(inout) :: ib_markers integer, intent(in) :: xp, yp, zp !< integers containing the periodicity projection information + ! Generic loop iterators integer :: i, j, k integer :: il, ir, jl, jr, kl, kr @@ -531,13 +563,14 @@ contains real(wp) :: radius real(wp), dimension(1:3) :: center - ! Variables to initialize the pressure field that corresponds to the bubble-collapse test case found in Tiwari et al. (2013) + !! Variables to initialize the pressure field that corresponds to the bubble-collapse test case found in Tiwari et al. + !! (2013) ! Transferring spherical patch's radius, centroid, smoothing patch identity and smoothing coefficient information - center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(y_domain%end - y_domain%beg) - center(3) = patch_ib(patch_id)%z_centroid + real(zp, wp)*(z_domain%end - z_domain%beg) + center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) + center(3) = patch_ib(patch_id)%z_centroid + real(zp, wp)*(glb_bounds(3)%end - glb_bounds(3)%beg) radius = patch_ib(patch_id)%radius ! encode the periodicity information into the patch_id @@ -560,6 +593,7 @@ contains do k = kl, kr do j = jl, jr do i = il, ir + ! do i = -gp_layers, m+gp_layers if (grid_geometry == 3) then call s_convert_cylindrical_to_cartesian_coord(y_cc(j), z_cc(k)) else @@ -577,7 +611,12 @@ contains end subroutine s_ib_sphere - !> Mark cells inside a cuboidal immersed boundary + !> The cuboidal patch is a 3D geometry that may be used, for example, in creating a solid boundary, or pre-/post-shock region, + !! which is aligned with the axes of the Cartesian coordinate system. The geometry of such a patch is well- defined when its + !! centroid and lengths in the x-, y- and z-coordinate directions are provided. Please notice that the cuboidal patch DOES NOT + !! allow for the smearing of its boundaries. + !! @param patch_id is the patch identifier + !! @param ib_markers Array to track patch ids subroutine s_ib_cuboid(patch_id, ib_markers, xp, yp, zp) integer, intent(in) :: patch_id @@ -591,9 +630,9 @@ contains ! Transferring the cuboid's centroid and length information - center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(y_domain%end - y_domain%beg) - center(3) = patch_ib(patch_id)%z_centroid + real(zp, wp)*(z_domain%end - z_domain%beg) + center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) + center(3) = patch_ib(patch_id)%z_centroid + real(zp, wp)*(glb_bounds(3)%end - glb_bounds(3)%beg) length(1) = patch_ib(patch_id)%length_x length(2) = patch_ib(patch_id)%length_y length(3) = patch_ib(patch_id)%length_z @@ -645,7 +684,13 @@ contains end subroutine s_ib_cuboid - !> Mark cells inside a cylindrical immersed boundary + !> The cylindrical patch is a 3D geometry that may be used, for example, in setting up a cylindrical solid boundary confinement, + !! like a blood vessel. The geometry of this patch is well-defined when the centroid, the radius and the length along the + !! cylinder's axis, parallel to the x-, y- or z-coordinate direction, are provided. Please note that the cylindrical patch DOES + !! allow for the smoothing of its lateral boundary. + !! @param patch_id is the patch identifier + !! @param ib_markers Array to track patch ids + !! @param ib True if this patch is an immersed boundary subroutine s_ib_cylinder(patch_id, ib_markers, xp, yp, zp) integer, intent(in) :: patch_id @@ -660,9 +705,9 @@ contains ! Transferring the cylindrical patch's centroid, length, radius, - center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(y_domain%end - y_domain%beg) - center(3) = patch_ib(patch_id)%z_centroid + real(zp, wp)*(z_domain%end - z_domain%beg) + center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) + center(3) = patch_ib(patch_id)%z_centroid + real(zp, wp)*(glb_bounds(3)%end - glb_bounds(3)%beg) length(1) = patch_ib(patch_id)%length_x length(2) = patch_ib(patch_id)%length_y length(3) = patch_ib(patch_id)%length_z @@ -716,7 +761,7 @@ contains end subroutine s_ib_cylinder - !> Mark cells inside a 2D elliptical immersed boundary + !> @brief Marks cells inside a 2D elliptical immersed boundary defined by semi-axis lengths and rotation. subroutine s_ib_ellipse(patch_id, ib_markers, xp, yp) integer, intent(in) :: patch_id @@ -731,8 +776,8 @@ contains ! Transferring the ellipse's centroid and length information - center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(y_domain%end - y_domain%beg) + center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) ellipse_coeffs(1) = 0.5_wp*patch_ib(patch_id)%length_x ellipse_coeffs(2) = 0.5_wp*patch_ib(patch_id)%length_y inverse_rotation(:,:) = patch_ib(patch_id)%rotation_matrix_inverse(:,:) @@ -769,6 +814,8 @@ contains end subroutine s_ib_ellipse !> The STL patch is a 2D geometry that is imported from an STL file. + !! @param patch_id is the patch identifier + !! @param ib_markers Array to track patch ids subroutine s_ib_model(patch_id, ib_markers, xp, yp) integer, intent(in) :: patch_id @@ -786,8 +833,8 @@ contains real(wp), dimension(1:3,1:3) :: inverse_rotation, rotation center = 0._wp - center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(y_domain%end - y_domain%beg) + center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) inverse_rotation(:,:) = patch_ib(patch_id)%rotation_matrix_inverse(:,:) rotation(:,:) = patch_ib(patch_id)%rotation_matrix(:,:) offset(:) = patch_ib(patch_id)%centroid_offset(:) @@ -846,6 +893,8 @@ contains end subroutine s_ib_model !> The STL patch is a 3D geometry that is imported from an STL file. + !! @param patch_id is the patch identifier + !! @param ib_markers Array to track patch ids subroutine s_ib_3d_model(patch_id, ib_markers, xp, yp, zp) integer, intent(in) :: patch_id @@ -862,9 +911,9 @@ contains real(wp), dimension(1:3) :: bbox_min, bbox_max, local_corner, world_corner center = 0._wp - center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(x_domain%end - x_domain%beg) - center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(y_domain%end - y_domain%beg) - center(3) = patch_ib(patch_id)%z_centroid + real(zp, wp)*(z_domain%end - z_domain%beg) + center(1) = patch_ib(patch_id)%x_centroid + real(xp, wp)*(glb_bounds(1)%end - glb_bounds(1)%beg) + center(2) = patch_ib(patch_id)%y_centroid + real(yp, wp)*(glb_bounds(2)%end - glb_bounds(2)%beg) + center(3) = patch_ib(patch_id)%z_centroid + real(zp, wp)*(glb_bounds(3)%end - glb_bounds(3)%beg) inverse_rotation(:,:) = patch_ib(patch_id)%rotation_matrix_inverse(:,:) offset(:) = patch_ib(patch_id)%centroid_offset(:) spc = patch_ib(patch_id)%model_spc @@ -932,7 +981,7 @@ contains end subroutine s_ib_3d_model - !> Compute a rotation matrix for converting to the rotating frame of the boundary + !> Subroutine that computes a rotation matrix for converting to the rotating frame of the boundary subroutine s_update_ib_rotation_matrix(patch_id) integer, intent(in) :: patch_id @@ -978,7 +1027,7 @@ contains end subroutine s_update_ib_rotation_matrix - !> Convert cylindrical (r, theta) coordinates to Cartesian (y, z) + !> @brief Converts cylindrical (r, theta) coordinates to Cartesian (y, z) and stores in module variables. subroutine s_convert_cylindrical_to_cartesian_coord(cyl_y, cyl_z) $:GPU_ROUTINE(parallelism='[seq]') @@ -990,7 +1039,7 @@ contains end subroutine s_convert_cylindrical_to_cartesian_coord - !> Convert a 3D cylindrical coordinate vector (x, r, theta) to Cartesian (x, y, z) + !> @brief Converts a 3D cylindrical coordinate vector (x, r, theta) to Cartesian (x, y, z). pure function f_convert_cyl_to_cart(cyl) result(cart) $:GPU_ROUTINE(parallelism='[seq]') @@ -1002,7 +1051,7 @@ contains end function f_convert_cyl_to_cart - !> Convert cylindrical coordinates (x, r) to the spherical azimuthal angle phi + !> @brief Converts cylindrical coordinates (x, r) to the spherical azimuthal angle phi and stores in a module variable. subroutine s_convert_cylindrical_to_spherical_coord(cyl_x, cyl_y) $:GPU_ROUTINE(parallelism='[seq]') @@ -1052,7 +1101,7 @@ contains end subroutine get_bounding_indices - !> Encode the patch ID with a unique offset containing periodicity information + !> @brief encodes the patch id with a unique offset that contains information on how the IB marker wraps periodically subroutine s_encode_patch_periodicity(patch_id, x_periodicity, y_periodicity, z_periodicity, encoded_patch_id) integer, intent(in) :: patch_id, x_periodicity, y_periodicity, z_periodicity @@ -1070,7 +1119,7 @@ contains end subroutine s_encode_patch_periodicity - !> Decode the encoded ID to recover the original patch ID and periodicity + !> @brief decodes the encoded id to get out the original id and the way in which it is periodic subroutine s_decode_patch_periodicity(encoded_patch_id, patch_id, x_periodicity, y_periodicity, z_periodicity) $:GPU_ROUTINE(parallelism='[seq]') @@ -1096,7 +1145,7 @@ contains end subroutine s_decode_patch_periodicity - !> Determine the periodic wrapping bounds in each direction + !> @brief Determines if we should wrap periodically subroutine s_get_periodicities(xp_lower, xp_upper, yp_lower, yp_upper, zp_lower, zp_upper) integer, intent(out) :: xp_lower, xp_upper, yp_lower, yp_upper @@ -1104,33 +1153,26 @@ contains ! check domain wraps in x, y - #:for X in [('x'), ('y')] - ! check for periodicity - - if (bc_${X}$%beg == BC_PERIODIC) then - ${X}$p_lower = -1 - ${X}$p_upper = 1 - else - ! if it is not periodic, then both elements are 0 - ${X}$p_lower = 0 - ${X}$p_upper = 0 + #:for X, ID in [('x', 1), ('y', 2), ('z', 3)] + if (num_dims >= ${ID}$) then + ! check for periodicity + if (bc_${X}$%beg == BC_PERIODIC) then + ${X}$p_lower = -1 + ${X}$p_upper = 1 + else + ! if it is not periodic, then both elements are 0 + ${X}$p_lower = 0 + ${X}$p_upper = 0 + end if end if #:endfor - ! z only if 3D - if (present(zp_lower) .and. p /= 0) then - if (bc_z%beg == BC_PERIODIC) then - zp_lower = -1 - zp_upper = 1 - else - zp_lower = 0 - zp_upper = 0 - end if - end if - end subroutine s_get_periodicities !> Archimedes spiral function + !! @param myth Angle + !! @param offset Thickness + !! @param a Starting position pure elemental function f_r(myth, offset, a) $:GPU_ROUTINE(parallelism='[seq]') diff --git a/src/simulation/m_ibm.fpp b/src/simulation/m_ibm.fpp index 785bf2dec3..f70209a9cb 100644 --- a/src/simulation/m_ibm.fpp +++ b/src/simulation/m_ibm.fpp @@ -79,10 +79,11 @@ contains $:GPU_UPDATE(device='[patch_ib(1:num_ibs)]') ! GPU routines require updated cell centers - $:GPU_UPDATE(device='[num_ibs, x_cc, y_cc, dx, dy, x_domain, y_domain]') + $:GPU_UPDATE(device='[num_ibs, x_cc, y_cc, dx, dy]') if (p /= 0) then - $:GPU_UPDATE(device='[z_cc, dz, z_domain]') + $:GPU_UPDATE(device='[z_cc, dz]') end if + $:GPU_UPDATE(device='[glb_bounds]') ! allocate STL models call s_instantiate_STL_models() @@ -111,7 +112,6 @@ contains @:ALLOCATE(ghost_points(1:max_num_gps)) $:GPU_ENTER_DATA(copyin='[ghost_points]') - ! Ghost-cell IBM, Tseng & Ferziger JCP (2003), Mittal & Iaccarino ARFM (2005) call s_find_ghost_points(ghost_points) call s_apply_levelset(ghost_points, num_gps) @@ -122,7 +122,9 @@ contains end subroutine s_ibm_setup - !> Update the conservative variables at the ghost points + !> Subroutine that updates the conservative variables at the ghost points + !! @param pb_in Internal bubble pressure + !! @param mv_in Mass of vapor in bubble subroutine s_ibm_correct_state(q_cons_vf, q_prim_vf, pb_in, mv_in) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf !< Primitive Variables @@ -151,7 +153,7 @@ contains real(wp), dimension(nb*nmom) :: nmom_IP real(wp), dimension(nb*nnode) :: presb_IP, massv_IP #:endif - ! Primitive variables at the image point associated with a ghost point, interpolated from surrounding fluid cells. + !! Primitive variables at the image point associated with a ghost point, interpolated from surrounding fluid cells. real(wp), dimension(3) :: norm !< Normal vector from GP to IP real(wp), dimension(3) :: physical_loc !< Physical loc of GP @@ -164,7 +166,6 @@ contains type(ghost_point) :: innerp ! set the Moving IBM interior conservative variables - $:GPU_PARALLEL_LOOP(private='[i, j, k, patch_id, rho]', copyin='[E_idx, momxb]', collapse=3) do l = 0, p do k = 0, n @@ -240,10 +241,11 @@ contains q_prim_vf(E_idx)%sf(j, k, l) = 0._wp $:GPU_LOOP(parallelism='[seq]') do q = 1, num_fluids - ! Pressure correction for moving IB: accounts for acceleration of IB surface + ! Se the pressure inside a moving immersed boundary based upon the pressure of the image point. + ! acceleration, and normal vector direction q_prim_vf(E_idx)%sf(j, k, l) = q_prim_vf(E_idx)%sf(j, k, & & l) + pres_IP/(1._wp - 2._wp*abs(gp%levelset*alpha_rho_IP(q)/pres_IP) & - & *dot_product(patch_ib(patch_id) %force/patch_ib(patch_id)%mass, gp%levelset_norm)) + & *dot_product(patch_ib(patch_id)%force/patch_ib(patch_id)%mass, gp%levelset_norm)) end do end if @@ -371,7 +373,8 @@ contains end subroutine s_ibm_correct_state - !> Compute the image points for each ghost point + !> Function that computes the image points for each ghost point + !! @param ghost_points_in Ghost Points impure subroutine s_compute_image_points(ghost_points_in) type(ghost_point), dimension(num_gps), intent(inout) :: ghost_points_in @@ -450,12 +453,12 @@ contains print *, [x_cc(i), y_cc(j), z_cc(k)] end if print *, "We are searching in dimension ", dim, " for image point at ", ghost_points_in(q)%ip_loc(:) - print *, "Domain size: ", [x_cc(-buff_size), y_cc(-buff_size), z_cc(-buff_size)] + print *, "Domain size: " print *, "x: ", x_cc(-buff_size), " to: ", x_cc(m + buff_size - 1) print *, "y: ", y_cc(-buff_size), " to: ", y_cc(n + buff_size - 1) if (p /= 0) print *, "z: ", z_cc(-buff_size), " to: ", z_cc(p + buff_size - 1) print *, "Image point is located approximately ", & - & (ghost_points_in(q)%loc(dim) - ghost_points_in(q) %ip_loc(dim))/(s_cc(1) - s_cc(0)), & + & (ghost_points_in(q)%loc(dim) - ghost_points_in(q)%ip_loc(dim))/(s_cc(1) - s_cc(0)), & & " grid cells away" print *, "Levelset ", dist, " and Norm: ", norm(:) print *, & @@ -480,7 +483,7 @@ contains end subroutine s_compute_image_points - !> Count the number of ghost points for memory allocation + !> Subroutine that finds the number of ghost points, used for allocating memory. subroutine s_find_num_ghost_points(num_gps_out) integer, intent(out) :: num_gps_out @@ -525,7 +528,7 @@ contains end subroutine s_find_num_ghost_points - !> Locate all ghost points in the domain + !> Function that finds the ghost points subroutine s_find_ghost_points(ghost_points_in) type(ghost_point), dimension(num_gps), intent(inout) :: ghost_points_in @@ -541,8 +544,7 @@ contains if (p == 0) gp_layers_z = 0 $:GPU_PARALLEL_LOOP(private='[i, j, k, ii, jj, kk, is_gp, local_idx, patch_id, encoded_patch_id, xp, yp, zp]', & - & copyin='[count, count_i, x_domain, y_domain, z_domain]', firstprivate='[gp_layers, gp_layers_z]', & - & collapse=3) + & copyin='[count, count_i, glb_bounds]', firstprivate='[gp_layers, gp_layers_z]', collapse=3) do i = 0, m do j = 0, n do k = 0, p @@ -576,26 +578,26 @@ contains ghost_points_in(local_idx)%z_periodicity = zp ghost_points_in(local_idx)%slip = patch_ib(patch_id)%slip - if ((x_cc(i) - dx(i)) < x_domain%beg) then + if ((x_cc(i) - dx(i)) < glb_bounds(1)%beg) then ghost_points_in(local_idx)%DB(1) = -1 - else if ((x_cc(i) + dx(i)) > x_domain%end) then + else if ((x_cc(i) + dx(i)) > glb_bounds(1)%end) then ghost_points_in(local_idx)%DB(1) = 1 else ghost_points_in(local_idx)%DB(1) = 0 end if - if ((y_cc(j) - dy(j)) < y_domain%beg) then + if ((y_cc(j) - dy(j)) < glb_bounds(2)%beg) then ghost_points_in(local_idx)%DB(2) = -1 - else if ((y_cc(j) + dy(j)) > y_domain%end) then + else if ((y_cc(j) + dy(j)) > glb_bounds(2)%end) then ghost_points_in(local_idx)%DB(2) = 1 else ghost_points_in(local_idx)%DB(2) = 0 end if if (p /= 0) then - if ((z_cc(k) - dz(k)) < z_domain%beg) then + if ((z_cc(k) - dz(k)) < glb_bounds(3)%beg) then ghost_points_in(local_idx)%DB(3) = -1 - else if ((z_cc(k) + dz(k)) > z_domain%end) then + else if ((z_cc(k) + dz(k)) > glb_bounds(3)%end) then ghost_points_in(local_idx)%DB(3) = 1 else ghost_points_in(local_idx)%DB(3) = 0 @@ -610,7 +612,7 @@ contains end subroutine s_find_ghost_points - !> Compute the interpolation coefficients for image points + !> Function that computes the interpolation coefficients of image points subroutine s_compute_interpolation_coeffs(ghost_points_in) type(ghost_point), dimension(num_gps), intent(inout) :: ghost_points_in @@ -715,10 +717,27 @@ contains end subroutine s_compute_interpolation_coeffs - !> Interpolate primitive variables to a ghost point's image point using bilinear or trilinear interpolation + !> Function that uses the interpolation coefficients and the current state at the cell centers in order to estimate the state at + !! the image point + !! @param gp Ghost point data structure + !> @brief Interpolates primitive variables from the fluid domain to a ghost point's image point using bilinear or trilinear + !! interpolation. + !! @param alpha_rho_IP Partial density at image point + !! @param alpha_IP Volume fraction at image point + !! @param pres_IP Pressure at image point + !! @param vel_IP Velocity at image point + !! @param c_IP Speed of sound at image point + !! @param r_IP Bubble radius at image point + !! @param v_IP Bubble radial velocity at image point + !! @param pb_IP Bubble pressure at image point + !! @param mv_IP Bubble vapor mass at image point + !! @param nmom_IP Bubble moment at image point + !! @param pb_in Internal bubble pressure array + !! @param mv_in Mass of vapor in bubble array + !! @param presb_IP Bubble node pressure at image point + !! @param massv_IP Bubble node vapor mass at image point subroutine s_interpolate_image_point(q_prim_vf, gp, alpha_rho_IP, alpha_IP, pres_IP, vel_IP, c_IP, r_IP, v_IP, pb_IP, mv_IP, & - - & nmom_IP, pb_in, mv_in, presb_IP, massv_IP) + & nmom_IP, pb_in, mv_in, presb_IP, massv_IP) $:GPU_ROUTINE(parallelism='[seq]') type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf !< Primitive Variables real(stp), optional, dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:,1:), intent(in) :: pb_in, mv_in @@ -879,9 +898,11 @@ contains end subroutine s_update_mib - !> Compute pressure and viscous forces and torques on immersed bodies via volume integration + !> @brief Computes pressure and viscous forces and torques on immersed bodies via a volume integration method. subroutine s_compute_ib_forces(q_prim_vf, fluid_pp) + ! real(wp), dimension(idwbuff(1)%beg:idwbuff(1)%end, & idwbuff(2)%beg:idwbuff(2)%end, & idwbuff(3)%beg:idwbuff(3)%end), + ! intent(in) :: pressure type(scalar_field), dimension(1:sys_size), intent(in) :: q_prim_vf type(physical_parameters), dimension(1:num_fluids), intent(in) :: fluid_pp integer :: gp_id, i, j, k, l, q, ib_idx, fluid_idx @@ -1031,7 +1052,7 @@ contains end subroutine s_compute_ib_forces - !> Finalize the IBM module + !> Subroutine to deallocate memory reserved for the IBM module impure subroutine s_finalize_ibm_module() @:DEALLOCATE(ib_markers%sf) @@ -1100,6 +1121,7 @@ contains end subroutine s_compute_centroid_offset !> Computes the moment of inertia for an immersed boundary + !! @param ib_marker Immersed boundary marker index subroutine s_compute_moment_of_inertia(ib_marker, axis) real(wp), dimension(3), intent(in) :: axis !< the axis about which we compute the moment. Only required in 3D. @@ -1132,8 +1154,8 @@ contains else ! we do not have an analytic moment of inertia calculation and need to approximate it directly via a sum count = 0 moment = 0._wp - cell_volume = (x_cc(1) - x_cc(0))*(y_cc(1) - y_cc(0)) - ! computed without grid stretching. Update in the loop to perform with stretching + cell_volume = (x_cc(1) - x_cc(0))*(y_cc(1) - y_cc(0)) & + & ! computed without grid stretching. Update in the loop to perform with stretching if (p /= 0) then cell_volume = cell_volume*(z_cc(1) - z_cc(0)) end if @@ -1177,47 +1199,35 @@ contains end subroutine s_compute_moment_of_inertia - !> Wrap immersed boundary positions across periodic domain boundaries + !> @brief Checks for periodic boundary conditions in all directions, and if so, moves patch location if it left the domain subroutine s_wrap_periodic_ibs() integer :: patch_id do patch_id = 1, num_ibs ! check domain wraps in x, y, - #:for X in [('x'), ('y')] - ! check for periodicity - if (bc_${X}$%beg == BC_PERIODIC) then - ! check if the boundary has left the domain, and then correct - if (patch_ib(patch_id)%${X}$_centroid < ${X}$_domain%beg) then - ! if the boundary exited "left", wrap it back around to the "right" - patch_ib(patch_id)%${X}$_centroid = patch_ib(patch_id)%${X}$_centroid + (${X}$_domain%end & - & - ${X}$_domain%beg) - else if (patch_ib(patch_id)%${X}$_centroid > ${X}$_domain%end) then - ! if the boundary exited "right", wrap it back around to the "left" - patch_ib(patch_id)%${X}$_centroid = patch_ib(patch_id)%${X}$_centroid - (${X}$_domain%end & - & - ${X}$_domain%beg) + #:for X, ID in [('x', 1), ('y', 2), ('z',3)] + if (num_dims >= ${ID}$) then + ! check for periodicity + if (bc_${X}$%beg == BC_PERIODIC) then + ! check if the boundary has left the domain, and then correct + if (patch_ib(patch_id)%${X}$_centroid < glb_bounds(${ID}$)%beg) then + ! if the boundary exited "left", wrap it back around to the "right" + patch_ib(patch_id)%${X}$_centroid = patch_ib(patch_id)%${X}$_centroid + (glb_bounds(${ID}$)%end & + & - glb_bounds(${ID}$)%beg) + else if (patch_ib(patch_id)%${X}$_centroid > glb_bounds(${ID}$)%end) then + ! if the boundary exited "right", wrap it back around to the "left" + patch_ib(patch_id)%${X}$_centroid = patch_ib(patch_id)%${X}$_centroid - (glb_bounds(${ID}$)%end & + & - glb_bounds(${ID}$)%beg) + end if end if end if #:endfor - - if (p /= 0) then - ! check for periodicity - if (bc_z%beg == BC_PERIODIC) then - ! check if the boundary has left the domain, and then correct - if (patch_ib(patch_id)%z_centroid < z_domain%beg) then - ! if the boundary exited "left", wrap it back around to the "right" - patch_ib(patch_id)%z_centroid = patch_ib(patch_id)%z_centroid + (z_domain%end - z_domain%beg) - else if (patch_ib(patch_id)%z_centroid > z_domain%end) then - ! if the boundary exited "right", wrap it back around to the "left" - patch_ib(patch_id)%z_centroid = patch_ib(patch_id)%z_centroid - (z_domain%end - z_domain%beg) - end if - end if - end if end do end subroutine s_wrap_periodic_ibs - !> Compute the cross product c = a x b of two 3D vectors + !> @brief Computes the cross product c = a x b of two 3D vectors. subroutine s_cross_product(a, b, c) $:GPU_ROUTINE(parallelism='[seq]') diff --git a/src/simulation/m_igr.fpp b/src/simulation/m_igr.fpp index 7d0f18cb26..0157b803ed 100644 --- a/src/simulation/m_igr.fpp +++ b/src/simulation/m_igr.fpp @@ -84,7 +84,8 @@ module m_igr contains - !> Initialize the IGR module + !> @brief Allocates and initializes arrays, coefficients, and GPU data structures for the implicit gradient reconstruction + !! module. subroutine s_initialize_igr_module() if (viscous) then @@ -206,7 +207,7 @@ contains end subroutine s_initialize_igr_module - !> Iteratively solve the implicit gradient reconstruction system + !> @brief Iteratively solves the implicit gradient reconstruction system using Jacobi or Gauss-Seidel relaxation. subroutine s_igr_iterative_solve(q_cons_vf, bc_type, t_step) #ifdef _CRAYFTN @@ -307,7 +308,7 @@ contains end subroutine s_igr_iterative_solve - !> Compute the IGR viscous stress contribution in the x-direction and accumulate into the RHS + !> @brief Computes the IGR viscous stress contribution in the x-direction and accumulates it into the RHS. subroutine s_igr_sigma_x(q_cons_vf, rhs_vf) #ifdef _CRAYFTN @@ -387,7 +388,7 @@ contains end subroutine s_igr_sigma_x - !> Evaluate the approximate Riemann solver for the IGR scheme along a given direction + !> @brief Evaluates the approximate Riemann solver for the IGR scheme along a given coordinate direction. subroutine s_igr_riemann_solver(q_cons_vf, rhs_vf, idir) #ifdef _CRAYFTN @@ -2613,7 +2614,7 @@ contains end subroutine s_igr_riemann_solver - !> Compute pressure and maximum wavespeed from left and right reconstructed states + !> @brief Computes pressure and maximum wavespeed from left and right reconstructed states for the IGR Riemann solver. subroutine s_get_derived_states(E_L, gamma_L, pi_inf_L, rho_L, vel_L, E_R, gamma_R, pi_inf_R, rho_R, vel_R, pres_L, pres_R, cfl) $:GPU_ROUTINE(parallelism='[seq]') @@ -2657,7 +2658,7 @@ contains end subroutine s_get_derived_states - !> Accumulate the IGR numerical flux divergence into the RHS along the specified direction + !> @brief Accumulates the IGR numerical flux divergence into the right-hand side along the specified coordinate direction. subroutine s_igr_flux_add(q_cons_vf, rhs_vf, flux_vf, idir) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf, flux_vf, rhs_vf @@ -2705,7 +2706,7 @@ contains end subroutine s_igr_flux_add - !> Finalize the IGR module + !> @brief Deallocates all arrays and GPU resources allocated by the IGR module. subroutine s_finalize_igr_module() if (viscous) then diff --git a/src/simulation/m_mpi_proxy.fpp b/src/simulation/m_mpi_proxy.fpp index a2b6c84326..4abbf8ac70 100644 --- a/src/simulation/m_mpi_proxy.fpp +++ b/src/simulation/m_mpi_proxy.fpp @@ -22,14 +22,31 @@ module m_mpi_proxy implicit none + !> This variable is utilized to pack and send the buffer of the immersed boundary markers, for a single computational domain + !! boundary at the time, to the relevant neighboring processor. integer, private, allocatable, dimension(:) :: ib_buff_send !< IB marker send buffer for halo exchange + + !> q_cons_buff_recv is utilized to receive and unpack the buffer of the immersed boundary markers, for a single computational + !! domain boundary at the time, from the relevant neighboring processor. integer, private, allocatable, dimension(:) :: ib_buff_recv !< IB marker receive buffer for halo exchange integer :: i_halo_size $:GPU_DECLARE(create='[i_halo_size]') + integer, dimension(-1:1,-1:1,-1:1) :: p_send_counts, p_recv_counts + integer, dimension(:,:,:,:), allocatable :: p_send_ids + character(len=1), dimension(:), allocatable :: p_send_buff, p_recv_buff + integer :: p_buff_size, p_var_size + !! EL Bubbles communication variables + integer, parameter :: MAX_NEIGHBORS = 27 + integer :: send_requests(MAX_NEIGHBORS), recv_requests(MAX_NEIGHBORS) + integer :: recv_offsets(MAX_NEIGHBORS) + integer :: neighbor_list(MAX_NEIGHBORS, 3) + integer :: n_neighbors + $:GPU_DECLARE(create='[p_send_counts]') + contains - !> Initialize the MPI proxy module + !> @brief Allocates immersed boundary communication buffers for MPI halo exchanges. subroutine s_initialize_mpi_proxy_module() #ifdef MFC_MPI @@ -52,6 +69,41 @@ contains end subroutine s_initialize_mpi_proxy_module + !! This subroutine initializes the MPI buffers and variables required for the particle communication. + !! @param lag_num_ts Number of stages in time-stepping scheme + subroutine s_initialize_particles_mpi(lag_num_ts) + + integer, intent(in) :: lag_num_ts + integer :: i, j, k + integer :: real_size, int_size, nReal + integer :: ierr !< Generic flag used to identify and report MPI errors + +#ifdef MFC_MPI + call MPI_Pack_size(1, mpi_p, MPI_COMM_WORLD, real_size, ierr) + call MPI_Pack_size(1, MPI_INTEGER, MPI_COMM_WORLD, int_size, ierr) + nReal = 7 + 16*2 + 10*lag_num_ts + p_var_size = nReal*real_size + int_size + p_buff_size = lag_params%nBubs_glb*p_var_size + @:ALLOCATE(p_send_buff(0:p_buff_size), p_recv_buff(0:p_buff_size)) + @:ALLOCATE(p_send_ids(nidx(1)%beg:nidx(1)%end, nidx(2)%beg:nidx(2)%end, nidx(3)%beg:nidx(3)%end, 0:lag_params%nBubs_glb)) + ! First, collect all neighbor information + n_neighbors = 0 + do k = nidx(3)%beg, nidx(3)%end + do j = nidx(2)%beg, nidx(2)%end + do i = nidx(1)%beg, nidx(1)%end + if (abs(i) + abs(j) + abs(k) /= 0) then + n_neighbors = n_neighbors + 1 + neighbor_list(n_neighbors, 1) = i + neighbor_list(n_neighbors, 2) = j + neighbor_list(n_neighbors, 3) = k + end if + end do + end do + end do +#endif + + end subroutine s_initialize_particles_mpi + !> Since only the processor with rank 0 reads and verifies the consistency of user inputs, these are initially not available to !! the other processors. Then, the purpose of this subroutine is to distribute the user inputs to the remaining processors in !! the communicator. @@ -109,17 +161,21 @@ contains if (bubbles_lagrange) then #:for VAR in [ 'heatTransfer_model', 'massTransfer_model', 'pressure_corrector', & - & 'write_bubbles', 'write_bubbles_stats'] + & 'write_bubbles', 'write_bubbles_stats', 'write_void_evol', 'pressure_force', & + & 'gravity_force'] call MPI_BCAST(lag_params%${VAR}$, 1, MPI_LOGICAL, 0, MPI_COMM_WORLD, ierr) #:endfor - #:for VAR in ['solver_approach', 'cluster_type', 'smooth_type', 'nBubs_glb'] + #:for VAR in ['solver_approach', 'cluster_type', 'smooth_type', 'nBubs_glb', 'vel_model', & + & 'drag_model', 'charNz'] call MPI_BCAST(lag_params%${VAR}$, 1, MPI_INTEGER, 0, MPI_COMM_WORLD, ierr) #:endfor #:for VAR in ['epsilonb','charwidth','valmaxvoid'] call MPI_BCAST(lag_params%${VAR}$, 1, mpi_p, 0, MPI_COMM_WORLD, ierr) #:endfor + + call MPI_BCAST(lag_params%input_path, len(lag_params%input_path), MPI_CHARACTER, 0, MPI_COMM_WORLD, ierr) end if #:for VAR in [ 'dt','weno_eps','teno_CT','pref','rhoref','R0ref','Web','Ca', 'sigma', & @@ -128,9 +184,7 @@ contains & 'bc_y%vb1','bc_y%vb2','bc_y%vb3','bc_y%ve1','bc_y%ve2','bc_y%ve3', & & 'bc_z%vb1','bc_z%vb2','bc_z%vb3','bc_z%ve1','bc_z%ve2','bc_z%ve3', & & 'bc_x%pres_in','bc_x%pres_out','bc_y%pres_in','bc_y%pres_out', 'bc_z%pres_in','bc_z%pres_out', & - & 'x_domain%beg', 'x_domain%end', 'y_domain%beg', 'y_domain%end', & - & 'z_domain%beg', 'z_domain%end', 'x_a', 'x_b', 'y_a', 'y_b', 'z_a', & - & 'z_b', 't_stop', 't_save', 'cfl_target', 'Bx0', 'alf_factor', & + & 't_stop', 't_save', 'cfl_target', 'Bx0', 'alf_factor', & & 'tau_star', 'cont_damage_s', 'alpha_bar', 'adap_dt_tol', & & 'ic_eps', 'ic_beta', 'hyper_cleaning_speed', & & 'hyper_cleaning_tau' ] @@ -233,11 +287,685 @@ contains call MPI_BCAST(nv_uvm_out_of_core, 1, MPI_LOGICAL, 0, MPI_COMM_WORLD, ierr) call MPI_BCAST(nv_uvm_igr_temps_on_gpu, 1, MPI_INTEGER, 0, MPI_COMM_WORLD, ierr) call MPI_BCAST(nv_uvm_pref_gpu, 1, MPI_LOGICAL, 0, MPI_COMM_WORLD, ierr) + + ! Extra BC Variable + call MPI_BCAST(periodic_bc, 3, MPI_LOGICAL, 0, MPI_COMM_WORLD, ierr) #endif end subroutine s_mpi_bcast_user_inputs - !> Broadcast random phase numbers from rank 0 to all MPI processes + !> @brief Packs, exchanges, and unpacks immersed boundary marker buffers between neighboring MPI ranks. + subroutine s_mpi_sendrecv_ib_buffers(ib_markers, mpi_dir, pbc_loc) + + type(integer_field), intent(inout) :: ib_markers + integer, intent(in) :: mpi_dir, pbc_loc + integer :: i, j, k, l, r, q !< Generic loop iterators + integer :: buffer_counts(1:3), buffer_count + type(int_bounds_info) :: boundary_conditions(1:3) + integer :: beg_end(1:2), grid_dims(1:3) + integer :: dst_proc, src_proc, recv_tag, send_tag + logical :: beg_end_geq_0, qbmm_comm + integer :: pack_offset, unpack_offset + +#ifdef MFC_MPI + integer :: ierr !< Generic flag used to identify and report MPI errors + + call nvtxStartRange("IB-MARKER-COMM-PACKBUF") + + buffer_counts = (/buff_size*(n + 1)*(p + 1), buff_size*(m + 2*buff_size + 1)*(p + 1), & + & buff_size*(m + 2*buff_size + 1)*(n + 2*buff_size + 1)/) + + buffer_count = buffer_counts(mpi_dir) + boundary_conditions = (/bc_x, bc_y, bc_z/) + beg_end = (/boundary_conditions(mpi_dir)%beg, boundary_conditions(mpi_dir)%end/) + beg_end_geq_0 = beg_end(max(pbc_loc, 0) - pbc_loc + 1) >= 0 + + ! Implements: pbc_loc bc_x >= 0 -> [send/recv]_tag [dst/src]_proc -1 (=0) 0 -> [1,0] [0,0] | 0 0 [1,0] [beg,beg] -1 (=0) 1 + ! -> [0,0] [1,0] | 0 1 [0,0] [end,beg] +1 (=1) 0 -> [0,1] [1,1] | 1 0 [0,1] [end,end] +1 (=1) 1 -> [1,1] [0,1] | 1 1 [1,1] + ! [beg,end] + + send_tag = f_logical_to_int(.not. f_xor(beg_end_geq_0, pbc_loc == 1)) + recv_tag = f_logical_to_int(pbc_loc == 1) + + dst_proc = beg_end(1 + f_logical_to_int(f_xor(pbc_loc == 1, beg_end_geq_0))) + src_proc = beg_end(1 + f_logical_to_int(pbc_loc == 1)) + + grid_dims = (/m, n, p/) + + pack_offset = 0 + if (f_xor(pbc_loc == 1, beg_end_geq_0)) then + pack_offset = grid_dims(mpi_dir) - buff_size + 1 + end if + + unpack_offset = 0 + if (pbc_loc == 1) then + unpack_offset = grid_dims(mpi_dir) + buff_size + 1 + end if + + ! Pack Buffer to Send + #:for mpi_dir in [1, 2, 3] + if (mpi_dir == ${mpi_dir}$) then + #:if mpi_dir == 1 + $:GPU_PARALLEL_LOOP(collapse=3,private='[j, k, l, r]') + do l = 0, p + do k = 0, n + do j = 0, buff_size - 1 + r = (j + buff_size*(k + (n + 1)*l)) + ib_buff_send(r) = ib_markers%sf(j + pack_offset, k, l) + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + #:elif mpi_dir == 2 + $:GPU_PARALLEL_LOOP(collapse=3,private='[j, k, l, r]') + do l = 0, p + do k = 0, buff_size - 1 + do j = -buff_size, m + buff_size + r = ((j + buff_size) + (m + 2*buff_size + 1)*(k + buff_size*l)) + ib_buff_send(r) = ib_markers%sf(j, k + pack_offset, l) + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + #:else + $:GPU_PARALLEL_LOOP(collapse=3,private='[j, k, l, r]') + do l = 0, buff_size - 1 + do k = -buff_size, n + buff_size + do j = -buff_size, m + buff_size + r = ((j + buff_size) + (m + 2*buff_size + 1)*((k + buff_size) + (n + 2*buff_size + 1)*l)) + ib_buff_send(r) = ib_markers%sf(j, k, l + pack_offset) + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + #:endif + end if + #:endfor + call nvtxEndRange ! Packbuf + + #:for rdma_mpi in [False, True] + if (rdma_mpi .eqv. ${'.true.' if rdma_mpi else '.false.'}$) then + #:if rdma_mpi + #:call GPU_HOST_DATA(use_device_addr='[ib_buff_send, ib_buff_recv]') + call nvtxStartRange("IB-MARKER-SENDRECV-RDMA") + call MPI_SENDRECV(ib_buff_send, buffer_count, MPI_INTEGER, dst_proc, send_tag, ib_buff_recv, & + & buffer_count, MPI_INTEGER, src_proc, recv_tag, MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) + call nvtxEndRange + #:endcall GPU_HOST_DATA + $:GPU_WAIT() + #:else + call nvtxStartRange("IB-MARKER-DEV2HOST") + $:GPU_UPDATE(host='[ib_buff_send]') + call nvtxEndRange + + call nvtxStartRange("IB-MARKER-SENDRECV-NO-RMDA") + call MPI_SENDRECV(ib_buff_send, buffer_count, MPI_INTEGER, dst_proc, send_tag, ib_buff_recv, buffer_count, & + & MPI_INTEGER, src_proc, recv_tag, MPI_COMM_WORLD, MPI_STATUS_IGNORE, ierr) + call nvtxEndRange + + call nvtxStartRange("IB-MARKER-HOST2DEV") + $:GPU_UPDATE(device='[ib_buff_recv]') + call nvtxEndRange + #:endif + end if + #:endfor + + ! Unpack Received Buffer + call nvtxStartRange("IB-MARKER-COMM-UNPACKBUF") + #:for mpi_dir in [1, 2, 3] + if (mpi_dir == ${mpi_dir}$) then + #:if mpi_dir == 1 + $:GPU_PARALLEL_LOOP(collapse=3,private='[j, k, l, r]') + do l = 0, p + do k = 0, n + do j = -buff_size, -1 + r = (j + buff_size*((k + 1) + (n + 1)*l)) + ib_markers%sf(j + unpack_offset, k, l) = ib_buff_recv(r) + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + #:elif mpi_dir == 2 + $:GPU_PARALLEL_LOOP(collapse=3,private='[j, k, l, r]') + do l = 0, p + do k = -buff_size, -1 + do j = -buff_size, m + buff_size + r = ((j + buff_size) + (m + 2*buff_size + 1)*((k + buff_size) + buff_size*l)) + ib_markers%sf(j, k + unpack_offset, l) = ib_buff_recv(r) + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + #:else + ! Unpacking buffer from bc_z%beg + $:GPU_PARALLEL_LOOP(collapse=3,private='[j, k, l, r]') + do l = -buff_size, -1 + do k = -buff_size, n + buff_size + do j = -buff_size, m + buff_size + r = ((j + buff_size) + (m + 2*buff_size + 1)*((k + buff_size) + (n + 2*buff_size + 1)*(l & + & + buff_size))) + ib_markers%sf(j, k, l + unpack_offset) = ib_buff_recv(r) + end do + end do + end do + $:END_GPU_PARALLEL_LOOP() + #:endif + end if + #:endfor + call nvtxEndRange +#endif + + end subroutine s_mpi_sendrecv_ib_buffers + + !> This subroutine adds particles to the transfer list for the MPI communication. + !! @param nBub Current LOCAL number of bubbles + !! @param pos Current position of each bubble + !! @param posPrev Previous position of each bubble (optional, not used + !! for communication of initial condition) + impure subroutine s_add_particles_to_transfer_list(nBub, pos, posPrev) + + integer, intent(in) :: nBub + real(wp), dimension(:,:), intent(in) :: pos, posPrev + integer :: bubID + integer :: i, j, k + + do k = nidx(3)%beg, nidx(3)%end + do j = nidx(2)%beg, nidx(2)%end + do i = nidx(1)%beg, nidx(1)%end + p_send_counts(i, j, k) = 0 + end do + end do + end do + + do k = 1, nbub + if (f_crosses_boundary(k, 1, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, -1, 0, 0) + if (n > 0) then + if (f_crosses_boundary(k, 2, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, -1, -1, 0) + call s_add_particle_to_direction(k, 0, -1, 0) + if (p > 0) then + if (f_crosses_boundary(k, 3, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, -1, -1, -1) + call s_add_particle_to_direction(k, 0, -1, -1) + call s_add_particle_to_direction(k, -1, 0, -1) + call s_add_particle_to_direction(k, 0, 0, -1) + else if (f_crosses_boundary(k, 3, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, -1, -1, 1) + call s_add_particle_to_direction(k, 0, -1, 1) + call s_add_particle_to_direction(k, -1, 0, 1) + call s_add_particle_to_direction(k, 0, 0, 1) + end if + end if + else if (f_crosses_boundary(k, 2, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, -1, 1, 0) + call s_add_particle_to_direction(k, 0, 1, 0) + if (p > 0) then + if (f_crosses_boundary(k, 3, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, -1, 1, -1) + call s_add_particle_to_direction(k, 0, 1, -1) + call s_add_particle_to_direction(k, -1, 0, -1) + call s_add_particle_to_direction(k, 0, 0, -1) + else if (f_crosses_boundary(k, 3, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, -1, 1, 1) + call s_add_particle_to_direction(k, 0, 1, 1) + call s_add_particle_to_direction(k, -1, 0, 1) + call s_add_particle_to_direction(k, 0, 0, 1) + end if + end if + else + if (p > 0) then + if (f_crosses_boundary(k, 3, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, -1, 0, -1) + call s_add_particle_to_direction(k, 0, 0, -1) + else if (f_crosses_boundary(k, 3, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, -1, 0, 1) + call s_add_particle_to_direction(k, 0, 0, 1) + end if + end if + end if + end if + else if (f_crosses_boundary(k, 1, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, 1, 0, 0) + if (n > 0) then + if (f_crosses_boundary(k, 2, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, 1, -1, 0) + call s_add_particle_to_direction(k, 0, -1, 0) + if (p > 0) then + if (f_crosses_boundary(k, 3, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, 1, -1, -1) + call s_add_particle_to_direction(k, 0, -1, -1) + call s_add_particle_to_direction(k, 1, 0, -1) + call s_add_particle_to_direction(k, 0, 0, -1) + else if (f_crosses_boundary(k, 3, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, 1, -1, 1) + call s_add_particle_to_direction(k, 0, -1, 1) + call s_add_particle_to_direction(k, 1, 0, 1) + call s_add_particle_to_direction(k, 0, 0, 1) + end if + end if + else if (f_crosses_boundary(k, 2, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, 1, 1, 0) + call s_add_particle_to_direction(k, 0, 1, 0) + if (p > 0) then + if (f_crosses_boundary(k, 3, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, 1, 1, -1) + call s_add_particle_to_direction(k, 0, 1, -1) + call s_add_particle_to_direction(k, 1, 0, -1) + call s_add_particle_to_direction(k, 0, 0, -1) + else if (f_crosses_boundary(k, 3, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, 1, 1, 1) + call s_add_particle_to_direction(k, 0, 1, 1) + call s_add_particle_to_direction(k, 1, 0, 1) + call s_add_particle_to_direction(k, 0, 0, 1) + end if + end if + else + if (p > 0) then + if (f_crosses_boundary(k, 3, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, 1, 0, -1) + call s_add_particle_to_direction(k, 0, 0, -1) + else if (f_crosses_boundary(k, 3, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, 1, 0, 1) + call s_add_particle_to_direction(k, 0, 0, 1) + end if + end if + end if + end if + else if (f_crosses_boundary(k, 2, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, 0, -1, 0) + if (p > 0) then + if (f_crosses_boundary(k, 3, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, 0, -1, -1) + call s_add_particle_to_direction(k, 0, 0, -1) + else if (f_crosses_boundary(k, 3, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, 0, -1, 1) + call s_add_particle_to_direction(k, 0, 0, 1) + end if + end if + else if (f_crosses_boundary(k, 2, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, 0, 1, 0) + if (p > 0) then + if (f_crosses_boundary(k, 3, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, 0, 1, -1) + call s_add_particle_to_direction(k, 0, 0, -1) + else if (f_crosses_boundary(k, 3, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, 0, 1, 1) + call s_add_particle_to_direction(k, 0, 0, 1) + end if + end if + else if (p > 0) then + if (f_crosses_boundary(k, 3, -1, pos, posPrev)) then + call s_add_particle_to_direction(k, 0, 0, -1) + else if (f_crosses_boundary(k, 3, 1, pos, posPrev)) then + call s_add_particle_to_direction(k, 0, 0, 1) + end if + end if + end do + + contains + + logical function f_crosses_boundary(particle_id, dir, loc, pos, posPrev) + + integer, intent(in) :: particle_id, dir, loc + real(wp), dimension(:,:), intent(in) :: pos + real(wp), dimension(:,:), optional, intent(in) :: posPrev + + if (loc == -1) then ! Beginning of the domain + if (nidx(dir)%beg == 0) then + f_crosses_boundary = .false. + return + end if + + f_crosses_boundary = (posPrev(particle_id, dir) >= pcomm_coords(dir)%beg .and. pos(particle_id, & + & dir) < pcomm_coords(dir)%beg) + else if (loc == 1) then ! End of the domain + if (nidx(dir)%end == 0) then + f_crosses_boundary = .false. + return + end if + + f_crosses_boundary = (posPrev(particle_id, dir) <= pcomm_coords(dir)%end .and. pos(particle_id, & + & dir) > pcomm_coords(dir)%end) + end if + + end function f_crosses_boundary + + subroutine s_add_particle_to_direction(particle_id, dir_x, dir_y, dir_z) + + integer, intent(in) :: particle_id, dir_x, dir_y, dir_z + + p_send_ids(dir_x, dir_y, dir_z, p_send_counts(dir_x, dir_y, dir_z)) = particle_id + p_send_counts(dir_x, dir_y, dir_z) = p_send_counts(dir_x, dir_y, dir_z) + 1 + + end subroutine s_add_particle_to_direction + + end subroutine s_add_particles_to_transfer_list + + !> This subroutine performs the MPI communication for lagrangian particles/ bubbles. + !! @param bub_R0 Initial radius of each bubble + !! @param Rmax_stats Maximum radius of each bubble + !! @param Rmin_stats Minimum radius of each bubble + !! @param gas_mg Mass of gas in each bubble + !! @param gas_betaT Heat flux model coefficient for each bubble + !! @param gas_betaC mass flux model coefficient for each bubble + !! @param bub_dphidt Subgrid velocity potential for each bubble + !! @param lag_id Global and local ID of each bubble + !! @param gas_p Pressure of the gas in each bubble + !! @param gas_mv Mass of vapor in each bubble + !! @param rad Radius of each bubble + !! @param rvel Radial velocity of each bubble + !! @param pos Position of each bubble + !! @param posPrev Previous position of each bubble + !! @param vel Velocity of each bubble + !! @param scoord Cell index in real format of each bubble + !! @param drad Radial velocity of each bubble + !! @param drvel Radial acceleration of each bubble + !! @param dgasp Time derivative of gas pressure in each bubble + !! @param dgasmv Time derivative of vapor mass in each bubble + !! @param dpos Time derivative of position of each bubble + !! @param dvel Time derivative of velocity of each bubble + !! @param lag_num_ts Number of stages in time-stepping scheme + !! @param nBubs Local number of bubbles + impure subroutine s_mpi_sendrecv_particles(bub_R0, Rmax_stats, Rmin_stats, gas_mg, gas_betaT, gas_betaC, bub_dphidt, lag_id, & + & gas_p, gas_mv, rad, rvel, pos, posPrev, vel, scoord, drad, drvel, dgasp, dgasmv, dpos, dvel, lag_num_ts, nbubs, dest) + + real(wp), dimension(:) :: bub_R0, Rmax_stats, Rmin_stats, gas_mg, gas_betaT, gas_betaC, bub_dphidt + integer, dimension(:,:) :: lag_id + real(wp), dimension(:,:) :: gas_p, gas_mv, rad, rvel, drad, drvel, dgasp, dgasmv + real(wp), dimension(:,:,:) :: pos, posPrev, vel, scoord, dpos, dvel + integer :: position, bub_id, lag_num_ts, tag, partner, send_tag, recv_tag, nbubs, p_recv_size, dest + integer :: i, j, k, l, q, r + integer :: req_send, req_recv, ierr !< Generic flag used to identify and report MPI errors + integer :: send_count, send_offset, recv_count, recv_offset + +#ifdef MFC_MPI + ! Phase 1: Exchange particle counts using non-blocking communication + send_count = 0 + recv_count = 0 + + ! Post all receives first + do l = 1, n_neighbors + i = neighbor_list(l, 1) + j = neighbor_list(l, 2) + k = neighbor_list(l, 3) + partner = neighbor_ranks(i, j, k) + recv_tag = neighbor_tag(i, j, k) + + recv_count = recv_count + 1 + call MPI_Irecv(p_recv_counts(i, j, k), 1, MPI_INTEGER, partner, recv_tag, MPI_COMM_WORLD, recv_requests(recv_count), & + & ierr) + end do + + ! Post all sends + do l = 1, n_neighbors + i = neighbor_list(l, 1) + j = neighbor_list(l, 2) + k = neighbor_list(l, 3) + partner = neighbor_ranks(i, j, k) + send_tag = neighbor_tag(-i, -j, -k) + + send_count = send_count + 1 + call MPI_Isend(p_send_counts(i, j, k), 1, MPI_INTEGER, partner, send_tag, MPI_COMM_WORLD, send_requests(send_count), & + & ierr) + end do + + ! Wait for all count exchanges to complete + if (recv_count > 0) then + call MPI_Waitall(recv_count, recv_requests(1:recv_count), MPI_STATUSES_IGNORE, ierr) + end if + if (send_count > 0) then + call MPI_Waitall(send_count, send_requests(1:send_count), MPI_STATUSES_IGNORE, ierr) + end if + + ! Phase 2: Exchange particle data using non-blocking communication + send_count = 0 + recv_count = 0 + + ! Post all receives for particle data first + recv_offset = 1 + do l = 1, n_neighbors + i = neighbor_list(l, 1) + j = neighbor_list(l, 2) + k = neighbor_list(l, 3) + + if (p_recv_counts(i, j, k) > 0) then + partner = neighbor_ranks(i, j, k) + p_recv_size = p_recv_counts(i, j, k)*p_var_size + recv_tag = neighbor_tag(i, j, k) + + recv_count = recv_count + 1 + call MPI_Irecv(p_recv_buff(recv_offset), p_recv_size, MPI_PACKED, partner, recv_tag, MPI_COMM_WORLD, & + & recv_requests(recv_count), ierr) + recv_offsets(l) = recv_offset + recv_offset = recv_offset + p_recv_size + end if + end do + + ! Pack and send particle data + send_offset = 0 + do l = 1, n_neighbors + i = neighbor_list(l, 1) + j = neighbor_list(l, 2) + k = neighbor_list(l, 3) + + if (p_send_counts(i, j, k) > 0 .and. abs(i) + abs(j) + abs(k) /= 0 .and. abs(i) + abs(j) + abs(k) /= 0) then + partner = neighbor_ranks(i, j, k) + send_tag = neighbor_tag(-i, -j, -k) + + ! Pack data for sending + position = 0 + do q = 0, p_send_counts(i, j, k) - 1 + bub_id = p_send_ids(i, j, k, q) + + call MPI_Pack(lag_id(bub_id, 1), 1, MPI_INTEGER, p_send_buff(send_offset), p_buff_size, position, & + & MPI_COMM_WORLD, ierr) + call MPI_Pack(bub_R0(bub_id), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, MPI_COMM_WORLD, ierr) + call MPI_Pack(Rmax_stats(bub_id), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, MPI_COMM_WORLD, & + & ierr) + call MPI_Pack(Rmin_stats(bub_id), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, MPI_COMM_WORLD, & + & ierr) + call MPI_Pack(gas_mg(bub_id), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, MPI_COMM_WORLD, ierr) + call MPI_Pack(gas_betaT(bub_id), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, MPI_COMM_WORLD, & + & ierr) + call MPI_Pack(gas_betaC(bub_id), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, MPI_COMM_WORLD, & + & ierr) + call MPI_Pack(bub_dphidt(bub_id), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, MPI_COMM_WORLD, & + & ierr) + do r = 1, 2 + call MPI_Pack(gas_p(bub_id, r), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, & + & MPI_COMM_WORLD, ierr) + call MPI_Pack(gas_mv(bub_id, r), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, & + & MPI_COMM_WORLD, ierr) + call MPI_Pack(rad(bub_id, r), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, MPI_COMM_WORLD, & + & ierr) + call MPI_Pack(rvel(bub_id, r), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, MPI_COMM_WORLD, & + & ierr) + call MPI_Pack(pos(bub_id,:,r), 3, mpi_p, p_send_buff(send_offset), p_buff_size, position, MPI_COMM_WORLD, & + & ierr) + call MPI_Pack(posPrev(bub_id,:,r), 3, mpi_p, p_send_buff(send_offset), p_buff_size, position, & + & MPI_COMM_WORLD, ierr) + call MPI_Pack(vel(bub_id,:,r), 3, mpi_p, p_send_buff(send_offset), p_buff_size, position, MPI_COMM_WORLD, & + & ierr) + call MPI_Pack(scoord(bub_id,:,r), 3, mpi_p, p_send_buff(send_offset), p_buff_size, position, & + & MPI_COMM_WORLD, ierr) + end do + do r = 1, lag_num_ts + call MPI_Pack(drad(bub_id, r), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, MPI_COMM_WORLD, & + & ierr) + call MPI_Pack(drvel(bub_id, r), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, & + & MPI_COMM_WORLD, ierr) + call MPI_Pack(dgasp(bub_id, r), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, & + & MPI_COMM_WORLD, ierr) + call MPI_Pack(dgasmv(bub_id, r), 1, mpi_p, p_send_buff(send_offset), p_buff_size, position, & + & MPI_COMM_WORLD, ierr) + call MPI_Pack(dpos(bub_id,:,r), 3, mpi_p, p_send_buff(send_offset), p_buff_size, position, & + & MPI_COMM_WORLD, ierr) + call MPI_Pack(dvel(bub_id,:,r), 3, mpi_p, p_send_buff(send_offset), p_buff_size, position, & + & MPI_COMM_WORLD, ierr) + end do + end do + + send_count = send_count + 1 + call MPI_Isend(p_send_buff(send_offset), position, MPI_PACKED, partner, send_tag, MPI_COMM_WORLD, & + & send_requests(send_count), ierr) + send_offset = send_offset + position + end if + end do + + ! Wait for all recvs for contiguous data to complete + call MPI_Waitall(recv_count, recv_requests(1:recv_count), MPI_STATUSES_IGNORE, ierr) + + ! Process received data as it arrives + do l = 1, n_neighbors + i = neighbor_list(l, 1) + j = neighbor_list(l, 2) + k = neighbor_list(l, 3) + + if (p_recv_counts(i, j, k) > 0 .and. abs(i) + abs(j) + abs(k) /= 0) then + p_recv_size = p_recv_counts(i, j, k)*p_var_size + recv_offset = recv_offsets(l) + + position = 0 + ! Unpack received data + do q = 0, p_recv_counts(i, j, k) - 1 + nbubs = nbubs + 1 + bub_id = nbubs + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, lag_id(bub_id, 1), 1, MPI_INTEGER, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, bub_R0(bub_id), 1, mpi_p, MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, Rmax_stats(bub_id), 1, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, Rmin_stats(bub_id), 1, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, gas_mg(bub_id), 1, mpi_p, MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, gas_betaT(bub_id), 1, mpi_p, MPI_COMM_WORLD, & + & ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, gas_betaC(bub_id), 1, mpi_p, MPI_COMM_WORLD, & + & ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, bub_dphidt(bub_id), 1, mpi_p, & + & MPI_COMM_WORLD, ierr) + do r = 1, 2 + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, gas_p(bub_id, r), 1, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, gas_mv(bub_id, r), 1, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, rad(bub_id, r), 1, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, rvel(bub_id, r), 1, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, pos(bub_id,:,r), 3, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, posPrev(bub_id,:,r), 3, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, vel(bub_id,:,r), 3, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, scoord(bub_id,:,r), 3, mpi_p, & + & MPI_COMM_WORLD, ierr) + end do + do r = 1, lag_num_ts + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, drad(bub_id, r), 1, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, drvel(bub_id, r), 1, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, dgasp(bub_id, r), 1, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, dgasmv(bub_id, r), 1, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, dpos(bub_id,:,r), 3, mpi_p, & + & MPI_COMM_WORLD, ierr) + call MPI_Unpack(p_recv_buff(recv_offset), p_recv_size, position, dvel(bub_id,:,r), 3, mpi_p, & + & MPI_COMM_WORLD, ierr) + end do + lag_id(bub_id, 2) = bub_id + end do + recv_offset = recv_offset + p_recv_size + end if + end do + + ! Wait for all sends to complete + if (send_count > 0) then + call MPI_Waitall(send_count, send_requests(1:send_count), MPI_STATUSES_IGNORE, ierr) + end if +#endif + + if (any(periodic_bc)) then + call s_wrap_particle_positions(pos, posPrev, nbubs, dest) + end if + + end subroutine s_mpi_sendrecv_particles + + !! This function returns a unique tag for each neighbor based on its position relative to the current process. + !! @param i, j, k Indices of the neighbor in the range [-1, 1] + !! @return tag Unique integer tag for the neighbor + integer function neighbor_tag(i, j, k) result(tag) + + integer, intent(in) :: i, j, k + + tag = (k + 1)*9 + (j + 1)*3 + (i + 1) + + end function neighbor_tag + + subroutine s_wrap_particle_positions(pos, posPrev, nbubs, dest) + + real(wp), dimension(:,:,:) :: pos, posPrev + integer :: nbubs, dest + integer :: i, q + real(wp) :: offset + + do i = 1, nbubs + if (periodic_bc(1)) then + offset = glb_bounds(1)%end - glb_bounds(1)%beg + if (pos(i, 1, dest) > x_cb(m + buff_size)) then + do q = 1, 2 + pos(i, 1, q) = pos(i, 1, q) - offset + posPrev(i, 1, q) = posPrev(i, 1, q) - offset + end do + end if + if (pos(i, 1, dest) < x_cb(-1 - buff_size)) then + do q = 1, 2 + pos(i, 1, q) = pos(i, 1, q) + offset + posPrev(i, 1, q) = posPrev(i, 1, q) + offset + end do + end if + end if + + if (periodic_bc(2)) then + offset = glb_bounds(2)%end - glb_bounds(2)%beg + if (pos(i, 2, dest) > y_cb(n + buff_size)) then + do q = 1, 2 + pos(i, 2, q) = pos(i, 2, q) - offset + posPrev(i, 2, q) = posPrev(i, 2, q) - offset + end do + end if + if (pos(i, 2, dest) < y_cb(-buff_size - 1)) then + do q = 1, 2 + pos(i, 2, q) = pos(i, 2, q) + offset + posPrev(i, 2, q) = posPrev(i, 2, q) + offset + end do + end if + end if + + if (periodic_bc(3)) then + offset = glb_bounds(3)%end - glb_bounds(3)%beg + if (pos(i, 3, dest) > z_cb(p + buff_size)) then + do q = 1, 2 + pos(i, 3, q) = pos(i, 3, q) - offset + posPrev(i, 3, q) = posPrev(i, 3, q) - offset + end do + end if + if (pos(i, 3, dest) < z_cb(-1 - buff_size)) then + do q = 1, 2 + pos(i, 3, q) = pos(i, 3, q) + offset + posPrev(i, 3, q) = posPrev(i, 3, q) + offset + end do + end if + end if + end do + + end subroutine s_wrap_particle_positions + + !> @brief Broadcasts random phase numbers from rank 0 to all MPI processes. impure subroutine s_mpi_send_random_number(phi_rn, num_freq) integer, intent(in) :: num_freq @@ -245,19 +973,24 @@ contains #ifdef MFC_MPI integer :: ierr !< Generic flag used to identify and report MPI errors - call MPI_BCAST(phi_rn, num_freq, mpi_p, 0, MPI_COMM_WORLD, ierr) #endif end subroutine s_mpi_send_random_number - !> Finalize the MPI proxy module + !> @brief Deallocates immersed boundary MPI communication buffers. subroutine s_finalize_mpi_proxy_module() #ifdef MFC_MPI if (ib) then @:DEALLOCATE(ib_buff_send, ib_buff_recv) end if + + ! Particle MPI buffers are only allocated when num_procs > 1 + if (allocated(p_send_buff)) then + @:DEALLOCATE(p_send_buff, p_recv_buff) + @:DEALLOCATE(p_send_ids) + end if #endif end subroutine s_finalize_mpi_proxy_module diff --git a/src/simulation/m_muscl.fpp b/src/simulation/m_muscl.fpp index 5c9e844ec6..3378bf681e 100644 --- a/src/simulation/m_muscl.fpp +++ b/src/simulation/m_muscl.fpp @@ -10,6 +10,7 @@ module m_muscl use m_derived_types use m_global_parameters use m_variables_conversion + #ifdef MFC_OpenACC use openacc #endif @@ -37,7 +38,6 @@ module m_muscl contains - !> Allocate and initialize MUSCL reconstruction working arrays subroutine s_initialize_muscl_module() ! Initializing in x-direction @@ -90,10 +90,9 @@ contains end subroutine s_initialize_muscl_module - !> Perform MUSCL reconstruction of left and right cell-boundary values from cell-averaged variables + !> @brief Performs MUSCL reconstruction of left and right cell-boundary values from cell-averaged variables. subroutine s_muscl(v_vf, vL_rs_vf_x, vL_rs_vf_y, vL_rs_vf_z, vR_rs_vf_x, vR_rs_vf_y, vR_rs_vf_z, muscl_dir, is1_muscl_d, & - - & is2_muscl_d, is3_muscl_d) + & is2_muscl_d, is3_muscl_d) type(scalar_field), dimension(1:), intent(in) :: v_vf real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: vL_rs_vf_x, vL_rs_vf_y, & @@ -210,17 +209,16 @@ contains #:endfor end if - if (int_comp) then + if (int_comp .and. v_size >= advxe) then call s_interface_compression(vL_rs_vf_x, vL_rs_vf_y, vL_rs_vf_z, vR_rs_vf_x, vR_rs_vf_y, vR_rs_vf_z, muscl_dir, & & is1_muscl_d, is2_muscl_d, is3_muscl_d) end if end subroutine s_muscl - !> Apply THINC interface-compression to sharpen volume-fraction reconstructions at material interfaces + !> @brief Applies THINC interface-compression to sharpen volume-fraction reconstructions at material interfaces. subroutine s_interface_compression(vL_rs_vf_x, vL_rs_vf_y, vL_rs_vf_z, vR_rs_vf_x, vR_rs_vf_y, vR_rs_vf_z, muscl_dir, & - - & is1_muscl_d, is2_muscl_d, is3_muscl_d) + & is1_muscl_d, is2_muscl_d, is3_muscl_d) real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: vL_rs_vf_x, vL_rs_vf_y, & & vL_rs_vf_z, vR_rs_vf_x, vR_rs_vf_y, vR_rs_vf_z @@ -287,13 +285,16 @@ contains end subroutine s_interface_compression - !> Reshape cell-averaged variable data into direction-local work arrays for MUSCL reconstruction + !> @brief Reshapes cell-averaged variable data into direction-local work arrays for MUSCL reconstruction. subroutine s_initialize_muscl(v_vf, muscl_dir) type(scalar_field), dimension(:), intent(in) :: v_vf integer, intent(in) :: muscl_dir integer :: j, k, l, q !< Generic loop iterators - ! Determine MUSCL-reconstructed variables and map coordinate directions + + ! Determining the number of cell-average variables which will be muscl-reconstructed and mapping their indical bounds in the + ! x-, y- and z-directions to those in the s1-, s2- and s3-directions as to reshape the inputted data in the coordinate + ! direction of the muscl reconstruction v_size = ubound(v_vf, 1) $:GPU_UPDATE(device='[v_size]') @@ -347,7 +348,7 @@ contains end subroutine s_initialize_muscl - !> Finalize the MUSCL module + !> @brief Deallocates the MUSCL direction-local work arrays. subroutine s_finalize_muscl_module() @:DEALLOCATE(v_rs_ws_x_muscl) diff --git a/src/simulation/m_pressure_relaxation.fpp b/src/simulation/m_pressure_relaxation.fpp index 7786ce4afe..cb53a30550 100644 --- a/src/simulation/m_pressure_relaxation.fpp +++ b/src/simulation/m_pressure_relaxation.fpp @@ -49,6 +49,7 @@ contains end subroutine s_finalize_pressure_relaxation_module !> The main pressure relaxation procedure + !! @param q_cons_vf Cell-average conservative variables subroutine s_pressure_relaxation_procedure(q_cons_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf @@ -148,8 +149,7 @@ contains #:else real(wp), dimension(num_fluids) :: pres_K_init, rho_K_s #:endif - integer, parameter :: MAX_ITER = 50 - ! Pressure relaxation convergence tolerance + integer, parameter :: MAX_ITER = 50 real(wp), parameter :: TOLERANCE = 1.e-10_wp integer :: iter, i @@ -187,7 +187,6 @@ contains $:GPU_LOOP(parallelism='[seq]') do i = 1, num_fluids if (q_cons_vf(i + advxb - 1)%sf(j, k, l) > sgm_eps) then - ! Isentropic relation: rho = rho0 * (p/p0)^(1/gamma), Saurel et al. JFM (2009) rho_K_s(i) = q_cons_vf(i + contxb - 1)%sf(j, k, l)/max(q_cons_vf(i + advxb - 1)%sf(j, k, l), & & sgm_eps)*((pres_relax + ps_inf(i))/(pres_K_init(i) + ps_inf(i)))**(1._wp/gs_min(i)) f_pres = f_pres + q_cons_vf(i + contxb - 1)%sf(j, k, l)/rho_K_s(i) diff --git a/src/simulation/m_qbmm.fpp b/src/simulation/m_qbmm.fpp index e32fd92954..a926ac35f1 100644 --- a/src/simulation/m_qbmm.fpp +++ b/src/simulation/m_qbmm.fpp @@ -38,7 +38,7 @@ module m_qbmm contains - !> Initialize the QBMM module + !> @brief Allocates and initializes moment coefficient arrays for the QBMM module. impure subroutine s_initialize_qbmm_module integer :: i1, i2, q, i, j @@ -400,7 +400,7 @@ contains end subroutine s_initialize_qbmm_module - !> Compute the QBMM right-hand side source terms for bubble moment transport equations + !> @brief Computes the QBMM right-hand side source terms for bubble moment transport equations. subroutine s_compute_qbmm_rhs(idir, q_cons_vf, q_prim_vf, rhs_vf, flux_n_vf, pb, rhs_pb) integer, intent(in) :: idir @@ -586,7 +586,7 @@ contains end subroutine s_compute_qbmm_rhs - !> Build the coefficient array for the non-polytropic bubble model + !> @brief Builds the coefficient array for the non-polytropic bubble model. subroutine s_coeff_nonpoly(pres, rho, c, coeffs) $:GPU_ROUTINE(function_name='s_coeff_nonpoly',parallelism='[seq]', cray_inline=True) @@ -665,7 +665,7 @@ contains end subroutine s_coeff_nonpoly - !> Build the coefficient array for the polytropic bubble model + !> @brief Builds the coefficient array for the polytropic bubble model. subroutine s_coeff(pres, rho, c, coeffs) $:GPU_ROUTINE(function_name='s_coeff',parallelism='[seq]', cray_inline=True) @@ -734,7 +734,7 @@ contains end subroutine s_coeff - !> Perform moment inversion to recover quadrature weights and abscissas and evaluate bubble source terms + !> @brief Performs moment inversion to recover quadrature weights and abscissas and evaluates bubble source terms. subroutine s_mom_inv(q_cons_vf, q_prim_vf, momsp, moms3d, pb, rhs_pb, mv, rhs_mv, ix, iy, iz) type(scalar_field), dimension(:), intent(inout) :: q_cons_vf, q_prim_vf @@ -930,7 +930,7 @@ contains $:END_GPU_PARALLEL_LOOP() contains - !> Select the polytropic or non-polytropic coefficient routine + !> @brief Selects the polytropic or non-polytropic coefficient routine. subroutine s_coeff_selector(pres, rho, c, coeff, polytropic) $:GPU_ROUTINE(function_name='s_coeff_selector',parallelism='[seq]', cray_inline=True) @@ -949,7 +949,7 @@ contains end subroutine s_coeff_selector - !> Perform CHyQMOM inversion for bivariate moments + !> @brief Performs conditional hyperbolic QMOM (CHyQMOM) inversion for bivariate moments. subroutine s_chyqmom(momin, wght, abscX, abscY) $:GPU_ROUTINE(function_name='s_chyqmom',parallelism='[seq]', cray_inline=True) @@ -1008,7 +1008,7 @@ contains end subroutine s_chyqmom - !> Perform HyQMOM inversion for univariate moments + !> @brief Performs hyperbolic QMOM (HyQMOM) inversion for univariate moments. subroutine s_hyqmom(frho, fup, fmom) $:GPU_ROUTINE(function_name='s_hyqmom',parallelism='[seq]', cray_inline=True) @@ -1028,7 +1028,7 @@ contains end subroutine s_hyqmom - !> Evaluate a weighted quadrature sum over all bubble size bins and nodes + !> @brief Evaluates a weighted quadrature sum over all bubble size bins and nodes. function f_quad(abscX, abscY, wght_in, q, r, s) $:GPU_ROUTINE(parallelism='[seq]') @@ -1054,7 +1054,7 @@ contains end function f_quad - !> Evaluate a weighted 2D quadrature sum over quadrature nodes for a single size bin + !> @brief Evaluates a weighted 2D quadrature sum over quadrature nodes for a single size bin. function f_quad2D(abscX, abscY, wght_in, pow) $:GPU_ROUTINE(parallelism='[seq]') diff --git a/src/simulation/m_rhs.fpp b/src/simulation/m_rhs.fpp index 1f347a0289..e39dd02e8b 100644 --- a/src/simulation/m_rhs.fpp +++ b/src/simulation/m_rhs.fpp @@ -38,9 +38,13 @@ module m_rhs private; public :: s_initialize_rhs_module, s_compute_rhs, s_finalize_rhs_module + !! This variable contains the WENO-reconstructed values of the cell-average conservative variables, which are located in + !! q_cons_vf, at cell-interior Gaussian quadrature points (QP). type(vector_field) :: q_cons_qp !< WENO-reconstructed cell-average conservative variables at quadrature points $:GPU_DECLARE(create='[q_cons_qp]') + !! The primitive variables at cell-interior Gaussian quadrature points. These are calculated from the conservative variables and + !! gradient magnitude (GM) of the volume fractions, q_cons_qp and gm_alpha_qp, respectively. type(vector_field) :: q_prim_qp !< Primitive variables at cell-interior quadrature points $:GPU_DECLARE(create='[q_prim_qp]') @@ -67,7 +71,10 @@ module m_rhs type(scalar_field), allocatable, dimension(:) :: tau_Re_vf $:GPU_DECLARE(create='[tau_Re_vf]') + !> The gradient magnitude of the volume fractions at cell-interior Gaussian quadrature points. gm_alpha_qp is calculated from + !! individual first-order spatial derivatives located in dq_prim_ds_qp. type(vector_field) :: gm_alpha_qp !< Volume fraction gradient magnitudes at cell-interior quadrature points + $:GPU_DECLARE(create='[gm_alpha_qp]') !> @name The left and right WENO-reconstructed cell-boundary values of the cell- average gradient magnitude of volume fractions, @@ -127,7 +134,8 @@ module m_rhs contains - !> Initialize the RHS module + !> The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other + !! procedures that are necessary to setup the module. impure subroutine s_initialize_rhs_module integer :: i, j, k, l, id !< Generic loop iterators @@ -197,6 +205,7 @@ contains $:GPU_ENTER_DATA(attach='[q_prim_qp%vf(psi_idx)%sf]') end if + ! Allocation/Association of flux_n, flux_src_n, and flux_gsrc_n if (.not. igr) then @:ALLOCATE(flux_n(1:num_dims)) @:ALLOCATE(flux_src_n(1:num_dims)) @@ -209,42 +218,42 @@ contains if (i == 1) then do l = 1, sys_size - @:ALLOCATE(flux_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(flux_n(i)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) - @:ALLOCATE(flux_gsrc_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(flux_gsrc_n(i)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) end do if (viscous .or. surface_tension) then do l = mom_idx%beg, E_idx - @:ALLOCATE(flux_src_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(flux_src_n(i)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) end do end if - @:ALLOCATE(flux_src_n(i)%vf(adv_idx%beg)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(flux_src_n(i)%vf(adv_idx%beg)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) if (riemann_solver == 1 .or. riemann_solver == 4) then do l = adv_idx%beg + 1, adv_idx%end - @:ALLOCATE(flux_src_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(flux_src_n(i)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) end do end if if (chemistry) then do l = chemxb, chemxe - @:ALLOCATE(flux_src_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(flux_src_n(i)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) end do if (chem_params%diffusion .and. .not. viscous) then - @:ALLOCATE(flux_src_n(i)%vf(E_idx)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(flux_src_n(i)%vf(E_idx)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) end if end if else do l = 1, sys_size - @:ALLOCATE(flux_gsrc_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(flux_gsrc_n(i)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) end do end if @@ -268,9 +277,11 @@ contains end do end if end do + ! END: Allocation/Association of flux_n, flux_src_n, and flux_gsrc_n end if if ((.not. igr) .or. dummy) then + ! Allocation of dq_prim_ds_qp @:ALLOCATE(dq_prim_dx_qp(1:1)) @:ALLOCATE(dq_prim_dy_qp(1:1)) @:ALLOCATE(dq_prim_dz_qp(1:1)) @@ -278,6 +289,7 @@ contains @:ALLOCATE(qL_prim(1:num_dims)) @:ALLOCATE(qR_prim(1:num_dims)) + ! Allocation/Association of dqK_prim_ds_n @:ALLOCATE(dqL_prim_dx_n(1:num_dims)) @:ALLOCATE(dqL_prim_dy_n(1:num_dims)) @:ALLOCATE(dqL_prim_dz_n(1:num_dims)) @@ -364,7 +376,7 @@ contains @:ALLOCATE(dq_prim_dz_qp(1)%vf(1:sys_size)) do l = mom_idx%beg, mom_idx%end - @:ALLOCATE(dq_prim_dx_qp(1)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(dq_prim_dx_qp(1)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) end do @@ -372,7 +384,7 @@ contains if (n > 0) then do l = mom_idx%beg, mom_idx%end - @:ALLOCATE(dq_prim_dy_qp(1)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(dq_prim_dy_qp(1)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) end do @@ -380,7 +392,7 @@ contains if (p > 0) then do l = mom_idx%beg, mom_idx%end - @:ALLOCATE(dq_prim_dz_qp(1)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(dq_prim_dz_qp(1)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) end do @:ACC_SETUP_VFs(dq_prim_dz_qp(1)) @@ -398,26 +410,26 @@ contains do i = 1, num_dims do l = mom_idx%beg, mom_idx%end - @:ALLOCATE(dqL_prim_dx_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(dqL_prim_dx_n(i)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) - @:ALLOCATE(dqR_prim_dx_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(dqR_prim_dx_n(i)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) end do if (n > 0) then do l = mom_idx%beg, mom_idx%end - @:ALLOCATE(dqL_prim_dy_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(dqL_prim_dy_n(i)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) - @:ALLOCATE(dqR_prim_dy_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(dqR_prim_dy_n(i)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) end do end if if (p > 0) then do l = mom_idx%beg, mom_idx%end - @:ALLOCATE(dqL_prim_dz_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(dqL_prim_dz_n(i)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) - @:ALLOCATE(dqR_prim_dz_n(i)%vf(l)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(dqR_prim_dz_n(i)%vf(l)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) end do end if @@ -496,7 +508,7 @@ contains do i = 0, 2 do j = 0, 2 do k = 1, nb - @:ALLOCATE(mom_3d(i, j, k)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(mom_3d(i, j, k)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) @:ACC_SETUP_SFs(mom_3d(i, j, k)) end do @@ -504,7 +516,7 @@ contains end do do i = 1, nmomsp - @:ALLOCATE(mom_sp(i)%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & + @:ALLOCATE(mom_sp(i)%sf( idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, & & idwbuff(3)%beg:idwbuff(3)%end)) @:ACC_SETUP_SFs(mom_sp(i)) end do @@ -513,6 +525,9 @@ contains if (mpp_lim .and. bubbles_euler) then @:ALLOCATE(alf_sum%sf(idwbuff(1)%beg:idwbuff(1)%end, idwbuff(2)%beg:idwbuff(2)%end, idwbuff(3)%beg:idwbuff(3)%end)) end if + ! END: Allocation/Association of qK_cons_n and qK_prim_n + + ! Allocation of gm_alphaK_n if (.not. igr) then @:ALLOCATE(gm_alphaL_n(1:num_dims)) @:ALLOCATE(gm_alphaR_n(1:num_dims)) @@ -531,10 +546,9 @@ contains end subroutine s_initialize_rhs_module - !> Compute the right-hand side of the semi-discrete governing equations for a single time stage + !> @brief Computes the right-hand side of the semi-discrete governing equations for a single time stage. impure subroutine s_compute_rhs(q_cons_vf, q_T_sf, q_prim_vf, bc_type, rhs_vf, pb_in, rhs_pb, mv_in, rhs_mv, t_step, & - - & time_avg, stage) + & time_avg, stage) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf type(scalar_field), intent(inout) :: q_T_sf @@ -555,8 +569,6 @@ contains integer :: id integer(kind=8) :: i, j, k, l, q !< Generic loop iterators - ! RHS: halo exchange -> reconstruct -> Riemann solve -> flux difference -> source terms - call nvtxStartRange("COMPUTE-RHS") call cpu_time(t_start) @@ -641,7 +653,7 @@ contains call nvtxEndRange end if - ! Loop over coordinate directions for dimensional splitting + ! Dimensional Splitting Loop do id = 1, num_dims if (igr .or. dummy) then if (id == 1) then @@ -751,6 +763,9 @@ contains irx%beg = 0; iry%beg = 0; irz%beg = -1 end if irx%end = m; iry%end = n; irz%end = p + ! $:GPU_UPDATE(host='[qL_rsx_vf,qR_rsx_vf]') print *, "L", qL_rsx_vf(100:300, 0, 0, 1) print *, "R", + ! qR_rsx_vf(100:300, 0, 0, 1) + ! Computing Riemann Solver Flux and Source Flux call nvtxStartRange("RHS-RIEMANN-SOLVER") call s_riemann_solver(qR_rsx_vf, qR_rsy_vf, qR_rsz_vf, dqR_prim_dx_n(id)%vf, dqR_prim_dy_n(id)%vf, & @@ -759,6 +774,9 @@ contains & q_prim_qp%vf, flux_n(id)%vf, flux_src_n(id)%vf, flux_gsrc_n(id)%vf, id, irx, iry, irz) call nvtxEndRange + !$:GPU_UPDATE(host='[flux_n(1)%vf(1)%sf]') + ! print *, "FLUX", flux_n(1)%vf(1)%sf(100:300, 0, 0) + ! Additional physics and source terms RHS addition for advection source call nvtxStartRange("RHS-ADVECTION-SRC") call s_compute_advection_source_term(id, rhs_vf, q_cons_qp, q_prim_qp, flux_src_n(id)) @@ -776,7 +794,7 @@ contains call nvtxEndRange end if - ! Viscous stress contribution to RHS + ! RHS additions for viscosity if (viscous .or. surface_tension .or. chem_params%diffusion) then call nvtxStartRange("RHS-ADD-PHYSICS") call s_compute_additional_physics_rhs(id, q_prim_qp%vf, rhs_vf, flux_src_n(id)%vf, dq_prim_dx_qp(1)%vf, & @@ -784,7 +802,7 @@ contains call nvtxEndRange end if - ! Bubble dynamics source terms + ! RHS additions for sub-grid bubbles_euler if (bubbles_euler) then call nvtxStartRange("RHS-BUBBLES-COMPUTE") call s_compute_bubbles_EE_rhs(id, q_prim_qp%vf, divu) @@ -848,14 +866,17 @@ contains end if if (bubbles_lagrange) then - ! RHS additions for sub-grid bubbles_lagrange - call nvtxStartRange("RHS-EL-BUBBLES-SRC") - call s_compute_bubbles_EL_source(q_cons_qp%vf(1:sys_size), q_prim_qp%vf(1:sys_size), rhs_vf) - call nvtxEndRange ! Compute bubble dynamics if (.not. adap_dt) then call nvtxStartRange("RHS-EL-BUBBLES-DYN") - call s_compute_bubble_EL_dynamics(q_prim_qp%vf(1:sys_size), stage) + call s_compute_bubble_EL_dynamics(q_prim_qp%vf(1:sys_size), bc_type, stage) + call nvtxEndRange + end if + + ! RHS additions for sub-grid bubbles_lagrange + if (lag_params%solver_approach == 2) then + call nvtxStartRange("RHS-EL-BUBBLES-SRC") + call s_compute_bubbles_EL_source(q_cons_qp%vf(1:sys_size), q_prim_qp%vf(1:sys_size), rhs_vf) call nvtxEndRange end if end if @@ -898,7 +919,7 @@ contains end subroutine s_compute_rhs - !> Accumulate advection source contributions from a given coordinate direction into the RHS + !> @brief Accumulates advection source contributions from a given coordinate direction into the RHS. subroutine s_compute_advection_source_term(idir, rhs_vf, q_cons_vf, q_prim_vf, flux_src_n_vf) integer, intent(in) :: idir @@ -1010,7 +1031,7 @@ contains $:END_GPU_PARALLEL_LOOP() if (model_eqns == 3) then - $:GPU_PARALLEL_LOOP(collapse=4, private='[i_fluid_loop, k, l, q, inv_ds, advected_qty_val, pressure_val, & + $:GPU_PARALLEL_LOOP(collapse=4,private='[i_fluid_loop, k, l, q, inv_ds, advected_qty_val, pressure_val, & & flux_face1, flux_face2]') do l = 0, p do k = 0, n @@ -1106,7 +1127,7 @@ contains end if if (model_eqns == 3) then - $:GPU_PARALLEL_LOOP(collapse=4, private='[i_fluid_loop, k, l, q, inv_ds, advected_qty_val, pressure_val, & + $:GPU_PARALLEL_LOOP(collapse=4,private='[i_fluid_loop, k, l, q, inv_ds, advected_qty_val, pressure_val, & & flux_face1, flux_face2]') do k = 0, p do q = 0, n @@ -1131,9 +1152,8 @@ contains contains - !> Add the advection source flux-difference terms for a single coordinate direction to the RHS + !> @brief Adds the advection source flux-difference terms for a single coordinate direction to the RHS. subroutine s_add_directional_advection_source_terms(current_idir, rhs_vf_arg, q_cons_vf_arg, q_prim_vf_arg, & - & flux_src_n_vf_arg, Kterm_arg) integer, intent(in) :: current_idir type(scalar_field), dimension(sys_size), intent(inout) :: rhs_vf_arg @@ -1215,8 +1235,8 @@ contains $:END_GPU_PARALLEL_LOOP() end if end if - case (2) - ! y-direction: loops q_idx (x), k_idx (y), l_idx (z); sf(q_idx, k_idx, l_idx); dy(k_idx); Kterm(q_idx,k_idx,l_idx) + case (2) & + & ! y-direction: loops q_idx (x), k_idx (y), l_idx (z); sf(q_idx, k_idx, l_idx); dy(k_idx); Kterm(q_idx,k_idx,l_idx) use_standard_riemann = (riemann_solver == 1 .or. riemann_solver == 4) if (use_standard_riemann) then $:GPU_PARALLEL_LOOP(collapse=4,private='[j_adv, k_idx, l_idx, q_idx, local_inv_ds, local_term_coeff, & @@ -1291,8 +1311,8 @@ contains $:END_GPU_PARALLEL_LOOP() end if end if - case (3) - ! z-direction: loops l_idx (x), q_idx (y), k_idx (z); sf(l_idx, q_idx, k_idx); dz(k_idx); Kterm(l_idx,q_idx,k_idx) + case (3) & + & ! z-direction: loops l_idx (x), q_idx (y), k_idx (z); sf(l_idx, q_idx, k_idx); dz(k_idx); Kterm(l_idx,q_idx,k_idx) if (grid_geometry == 3) then use_standard_riemann = (riemann_solver == 1) else @@ -1370,7 +1390,7 @@ contains end subroutine s_compute_advection_source_term - !> Add viscous, surface-tension, and species-diffusion source flux contributions to the RHS for a given direction + !> @brief Adds viscous, surface-tension, and species-diffusion source flux contributions to the RHS for a given direction. subroutine s_compute_additional_physics_rhs(idir, q_prim_vf, rhs_vf, flux_src_n_in, dq_prim_dx_vf, dq_prim_dy_vf, dq_prim_dz_vf) integer, intent(in) :: idir @@ -1620,7 +1640,16 @@ contains end subroutine s_compute_additional_physics_rhs - !> Reconstruct left and right cell-boundary values from cell-averaged variables + !> The purpose of this subroutine is to WENO-reconstruct the left and the right cell-boundary values, including values at the + !! Gaussian quadrature points, from the cell-averaged variables. + !! @param v_vf Cell-average variables + !! @param vL_x Left reconstructed cell-boundary values in x + !! @param vL_y Left reconstructed cell-boundary values in y + !! @param vL_z Left reconstructed cell-boundary values in z + !! @param vR_x Right reconstructed cell-boundary values in x + !! @param vR_y Right reconstructed cell-boundary values in y + !! @param vR_z Right reconstructed cell-boundary values in z + !! @param norm_dir Splitting coordinate direction subroutine s_reconstruct_cell_boundary_values(v_vf, vL_x, vL_y, vL_z, vR_x, vR_y, vR_z, norm_dir) type(scalar_field), dimension(iv%beg:iv%end), intent(in) :: v_vf @@ -1666,7 +1695,7 @@ contains end subroutine s_reconstruct_cell_boundary_values - !> Perform first-order (piecewise constant) reconstruction of left and right cell-boundary values + !> @brief Performs first-order (piecewise constant) reconstruction of left and right cell-boundary values. subroutine s_reconstruct_cell_boundary_values_first_order(v_vf, vL_x, vL_y, vL_z, vR_x, vR_y, vR_z, norm_dir) type(scalar_field), dimension(iv%beg:iv%end), intent(in) :: v_vf diff --git a/src/simulation/m_riemann_solvers.fpp b/src/simulation/m_riemann_solvers.fpp index 72055ef4ab..4e1f182049 100644 --- a/src/simulation/m_riemann_solvers.fpp +++ b/src/simulation/m_riemann_solvers.fpp @@ -50,7 +50,8 @@ module m_riemann_solvers $:GPU_DECLARE(create='[flux_gsrc_rsx_vf, flux_gsrc_rsy_vf, flux_gsrc_rsz_vf]') !> @} - ! Cell-boundary velocity from Riemann solution; used for source flux + ! The cell-boundary values of the velocity. vel_src_rs_vf is determined as part of Riemann problem solution and is used to + ! evaluate the source flux. real(wp), allocatable, dimension(:,:,:,:) :: vel_src_rsx_vf real(wp), allocatable, dimension(:,:,:,:) :: vel_src_rsy_vf @@ -85,10 +86,31 @@ contains !> Dispatch to the subroutines that are utilized to compute the Riemann problem solution. For additional information please !! reference: 1) s_hll_riemann_solver 2) s_hllc_riemann_solver 3) s_exact_riemann_solver 4) s_hlld_riemann_solver + !! @param qL_prim_rsx_vf Left WENO-reconstructed cell-boundary values (x-dir) + !! @param qL_prim_rsy_vf Left WENO-reconstructed cell-boundary values (y-dir) + !! @param qL_prim_rsz_vf Left WENO-reconstructed cell-boundary values (z-dir) + !! @param dqL_prim_dx_vf The left WENO-reconstructed cell-boundary values of the first-order x-dir spatial derivatives + !! @param dqL_prim_dy_vf The left WENO-reconstructed cell-boundary values of the first-order y-dir spatial derivatives + !! @param dqL_prim_dz_vf The left WENO-reconstructed cell-boundary values of the first-order z-dir spatial derivatives + !! @param qL_prim_vf The left WENO-reconstructed cell-boundary values of the cell-average primitive variables + !! @param qR_prim_rsx_vf Right WENO-reconstructed cell-boundary values (x-dir) + !! @param qR_prim_rsy_vf Right WENO-reconstructed cell-boundary values (y-dir) + !! @param qR_prim_rsz_vf Right WENO-reconstructed cell-boundary values (z-dir) + !! @param dqR_prim_dx_vf The right WENO-reconstructed cell-boundary values of the first-order x-dir spatial derivatives + !! @param dqR_prim_dy_vf The right WENO-reconstructed cell-boundary values of the first-order y-dir spatial derivatives + !! @param dqR_prim_dz_vf The right WENO-reconstructed cell-boundary values of the first-order z-dir spatial derivatives + !! @param qR_prim_vf The right WENO-reconstructed cell-boundary values of the cell-average primitive variables + !! @param q_prim_vf Cell-averaged primitive variables + !! @param flux_vf Intra-cell fluxes + !! @param flux_src_vf Intra-cell fluxes sources + !! @param flux_gsrc_vf Intra-cell geometric fluxes sources + !! @param norm_dir Dir. splitting direction + !! @param ix Index bounds in the x-dir + !! @param iy Index bounds in the y-dir + !! @param iz Index bounds in the z-dir subroutine s_riemann_solver(qL_prim_rsx_vf, qL_prim_rsy_vf, qL_prim_rsz_vf, dqL_prim_dx_vf, dqL_prim_dy_vf, dqL_prim_dz_vf, & - - & qL_prim_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_vf, dqR_prim_dy_vf, dqR_prim_dz_vf, qR_prim_vf, & - & q_prim_vf, flux_vf, flux_src_vf, flux_gsrc_vf, norm_dir, ix, iy, iz) + & qL_prim_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_vf, dqR_prim_dy_vf, & + & dqR_prim_dz_vf, qR_prim_vf, q_prim_vf, flux_vf, flux_src_vf, flux_gsrc_vf, norm_dir, ix, iy, iz) real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: qL_prim_rsx_vf, qL_prim_rsy_vf, & & qL_prim_rsz_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf @@ -116,7 +138,6 @@ contains !! geometries. For more information please refer to: 1) s_compute_cartesian_viscous_source_flux 2) !! s_compute_cylindrical_viscous_source_flux subroutine s_compute_viscous_source_flux(velL_vf, dvelL_dx_vf, dvelL_dy_vf, dvelL_dz_vf, velR_vf, dvelR_dx_vf, dvelR_dy_vf, & - & dvelR_dz_vf, flux_src_vf, norm_dir, ix, iy, iz) type(scalar_field), dimension(num_vels), intent(in) :: velL_vf, velR_vf, dvelL_dx_vf, dvelR_dx_vf, dvelL_dy_vf, & @@ -136,11 +157,11 @@ contains end subroutine s_compute_viscous_source_flux - !> HLL approximate Riemann solver, Harten et al. SIAM Review (1983) + !> @brief Computes intercell fluxes using the Harten-Lax-van Leer (HLL) approximate Riemann solver. subroutine s_hll_riemann_solver(qL_prim_rsx_vf, qL_prim_rsy_vf, qL_prim_rsz_vf, dqL_prim_dx_vf, dqL_prim_dy_vf, & - - & dqL_prim_dz_vf, qL_prim_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_vf, dqR_prim_dy_vf, & - & dqR_prim_dz_vf, qR_prim_vf, q_prim_vf, flux_vf, flux_src_vf, flux_gsrc_vf, norm_dir, ix, iy, iz) + & dqL_prim_dz_vf, qL_prim_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_vf, & + & dqR_prim_dy_vf, dqR_prim_dz_vf, qR_prim_vf, q_prim_vf, flux_vf, flux_src_vf, flux_gsrc_vf, & + & norm_dir, ix, iy, iz) real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: qL_prim_rsx_vf, qL_prim_rsy_vf, & & qL_prim_rsz_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf @@ -210,8 +231,8 @@ contains type(riemann_states_vec3) :: b4 !< 4-magnetic field components (spatial: b4x, b4y, b4z) type(riemann_states_vec3) :: cm !< Conservative momentum variables integer :: i, j, k, l, q !< Generic loop iterators - ! Populating the buffers of the left and right Riemann problem states variables, based on the choice of boundary conditions + ! Populating the buffers of the left and right Riemann problem states variables, based on the choice of boundary conditions call s_populate_riemann_states_variables_buffers(qL_prim_rsx_vf, qL_prim_rsy_vf, qL_prim_rsz_vf, dqL_prim_dx_vf, & & dqL_prim_dy_vf, dqL_prim_dz_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_vf, dqR_prim_dy_vf, & & dqR_prim_dz_vf, norm_dir, ix, iy, iz) @@ -467,6 +488,18 @@ contains end do end if + ! elastic energy update if ( hyperelasticity ) then G_L = 0._wp G_R = 0._wp + ! + ! $:GPU_LOOP(parallelism='[seq]') do i = 1, num_fluids G_L = G_L + alpha_L(i)*Gs_rs(i) G_R = G_R + + ! alpha_R(i)*Gs_rs(i) end do ! Elastic contribution to energy if G large enough if ((G_L > 1.e-3_wp) + ! .and. (G_R > 1.e-3_wp)) then E_L = E_L + G_L*qL_prim_rs${XYZ}$_vf(j, k, l, xiend + 1) E_R = E_R + + ! G_R*qR_prim_rs${XYZ}$_vf(j + 1, k, l, xiend + 1) $:GPU_LOOP(parallelism='[seq]') do i = 1, b_size-1 + ! tau_e_L(i) = G_L*qL_prim_rs${XYZ}$_vf(j, k, l, strxb - 1 + i) tau_e_R(i) = G_R*qR_prim_rs${XYZ}$_vf(j + ! + 1, k, l, strxb - 1 + i) end do $:GPU_LOOP(parallelism='[seq]') do i = 1, b_size-1 tau_e_L(i) = 0._wp + ! tau_e_R(i) = 0._wp end do $:GPU_LOOP(parallelism='[seq]') do i = 1, num_dims xi_field_L(i) = + ! qL_prim_rs${XYZ}$_vf(j, k, l, xibeg - 1 + i) xi_field_R(i) = qR_prim_rs${XYZ}$_vf(j + 1, k, l, xibeg - + ! 1 + i) end do end if end if + @:compute_average_state() call s_compute_speed_of_sound(pres_L, rho_L, gamma_L, pi_inf_L, H_L, alpha_L, vel_L_rms, 0._wp, c_L, & @@ -496,14 +529,11 @@ contains end do end if - ! Wave speed estimates (wave_speeds=1: direct, wave_speeds=2: pressure-based) if (wave_speeds == 1) then if (mhd) then - ! MHD: use fast magnetosonic speed s_L = min(vel_L(dir_idx(1)) - c_fast%L, vel_R(dir_idx(1)) - c_fast%R) s_R = max(vel_R(dir_idx(1)) + c_fast%R, vel_L(dir_idx(1)) + c_fast%L) else if (hypoelasticity) then - ! Elastic wave speed, Rodriguez et al. JCP (2019) s_L = min(vel_L(dir_idx(1)) - sqrt(c_L*c_L + (((4._wp*G_L)/3._wp) + tau_e_L(dir_idx_tau(1))) & & /rho_L), & & vel_R(dir_idx(1)) - sqrt(c_R*c_R + (((4._wp*G_R)/3._wp) + tau_e_R(dir_idx_tau(1))) & @@ -523,7 +553,7 @@ contains end if if (hyper_cleaning) then - ! Dedner GLM divergence cleaning, Dedner et al. JCP (2002) + ! Dedner GLM: (B_n, psi) subsystem has eigenvalues +/- c_h in the lab frame. s_L = min(s_L, -hyper_cleaning_speed) s_R = max(s_R, hyper_cleaning_speed) end if @@ -536,7 +566,6 @@ contains pres_SR = pres_SL - ! Low Mach correction: Thornber et al. JCP (2008) Ms_L = max(1._wp, & & sqrt(1._wp + ((5.e-1_wp + gamma_L)/(1._wp + gamma_L))*(pres_SL/pres_L - 1._wp) & & *pres_L/((pres_L + pi_inf_L/(1._wp + gamma_L))))) @@ -557,7 +586,7 @@ contains xi_P = (5.e-1_wp - sign(5.e-1_wp, s_R)) + (5.e-1_wp - sign(5.e-1_wp, s_L))*(5.e-1_wp + sign(5.e-1_wp, & & s_R)) - ! HLL intercell flux: F* = (s_R*F_L - s_L*F_R + s_L*s_R*(U_R - U_L)) / (s_R - s_L) Low Mach correction + ! Low Mach correction if (low_Mach == 1) then @:compute_low_Mach_correction() else @@ -687,7 +716,7 @@ contains end do end if - ! Advection flux and source: interface velocity for volume fraction transport + ! Advection $:GPU_LOOP(parallelism='[seq]') do i = advxb, advxe flux_rs${XYZ}$_vf(j, k, l, i) = (qL_prim_rs${XYZ}$_vf(j, k, l, i) - qR_prim_rs${XYZ}$_vf(j + 1, & @@ -716,7 +745,6 @@ contains end do end if - ! MHD: magnetic flux and Maxwell stress contributions if (mhd) then if (n == 0) then ! 1D: d/dx flux only & Bx = Bx0 = const. ! B_y flux = v_x * B_y - v_y * Bx0 B_z flux = v_x * B_z - v_z * Bx0 @@ -813,11 +841,11 @@ contains end subroutine s_hll_riemann_solver - !> Lax-Friedrichs (Rusanov) approximate Riemann solver + !> @brief Computes intercell fluxes using the Lax-Friedrichs (LF) approximate Riemann solver. subroutine s_lf_riemann_solver(qL_prim_rsx_vf, qL_prim_rsy_vf, qL_prim_rsz_vf, dqL_prim_dx_vf, dqL_prim_dy_vf, & - - & dqL_prim_dz_vf, qL_prim_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_vf, dqR_prim_dy_vf, & - & dqR_prim_dz_vf, qR_prim_vf, q_prim_vf, flux_vf, flux_src_vf, flux_gsrc_vf, norm_dir, ix, iy, iz) + & dqL_prim_dz_vf, qL_prim_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_vf, & + & dqR_prim_dy_vf, dqR_prim_dz_vf, qR_prim_vf, q_prim_vf, flux_vf, flux_src_vf, flux_gsrc_vf, & + & norm_dir, ix, iy, iz) real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: qL_prim_rsx_vf, qL_prim_rsy_vf, & & qL_prim_rsz_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf @@ -890,8 +918,8 @@ contains type(riemann_states_vec3) :: cm !< Conservative momentum variables integer :: i, j, k, l, q !< Generic loop iterators integer, dimension(3) :: idx_right_phys !< Physical (j,k,l) indices for right state. - ! Populating the buffers of the left and right Riemann problem states variables, based on the choice of boundary conditions + ! Populating the buffers of the left and right Riemann problem states variables, based on the choice of boundary conditions call s_populate_riemann_states_variables_buffers(qL_prim_rsx_vf, qL_prim_rsy_vf, qL_prim_rsz_vf, dqL_prim_dx_vf, & & dqL_prim_dy_vf, dqL_prim_dz_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_vf, dqR_prim_dy_vf, & & dqR_prim_dz_vf, norm_dir, ix, iy, iz) @@ -1302,7 +1330,7 @@ contains end do end if - ! Advection flux and source: interface velocity for volume fraction transport + ! Advection $:GPU_LOOP(parallelism='[seq]') do i = advxb, advxe flux_rs${XYZ}$_vf(j, k, l, i) = (qL_prim_rs${XYZ}$_vf(j, k, l, i) - qR_prim_rs${XYZ}$_vf(j + 1, & @@ -1331,7 +1359,6 @@ contains end do end if - ! MHD: magnetic flux and Maxwell stress contributions if (mhd) then if (n == 0) then ! 1D: d/dx flux only & Bx = Bx0 = const. ! B_y flux = v_x * B_y - v_y * Bx0 B_z flux = v_x * B_z - v_z * Bx0 @@ -1681,11 +1708,35 @@ contains end subroutine s_lf_riemann_solver - !> HLLC Riemann solver with contact restoration, Toro et al. Shock Waves (1994) + !> This procedure is the implementation of the Harten, Lax, van Leer, and contact (HLLC) approximate Riemann solver, see Toro + !! (1999) and Johnsen (2007). The viscous and the surface tension effects have been included by modifying the exact Riemann + !! solver of Perigaud and Saurel (2005). + !! @param qL_prim_rsx_vf Left WENO-reconstructed cell-boundary values (x-dir) + !! @param qL_prim_rsy_vf Left WENO-reconstructed cell-boundary values (y-dir) + !! @param qL_prim_rsz_vf Left WENO-reconstructed cell-boundary values (z-dir) + !! @param dqL_prim_dx_vf The left WENO-reconstructed cell-boundary values of the first-order x-dir spatial derivatives + !! @param dqL_prim_dy_vf The left WENO-reconstructed cell-boundary values of the first-order y-dir spatial derivatives + !! @param dqL_prim_dz_vf The left WENO-reconstructed cell-boundary values of the first-order z-dir spatial derivatives + !! @param qL_prim_vf The left WENO-reconstructed cell-boundary values of the cell-average primitive variables + !! @param qR_prim_rsx_vf Right WENO-reconstructed cell-boundary values (x-dir) + !! @param qR_prim_rsy_vf Right WENO-reconstructed cell-boundary values (y-dir) + !! @param qR_prim_rsz_vf Right WENO-reconstructed cell-boundary values (z-dir) + !! @param dqR_prim_dx_vf The right WENO-reconstructed cell-boundary values of the first-order x-dir spatial derivatives + !! @param dqR_prim_dy_vf The right WENO-reconstructed cell-boundary values of the first-order y-dir spatial derivatives + !! @param dqR_prim_dz_vf The right WENO-reconstructed cell-boundary values of the first-order z-dir spatial derivatives + !! @param qR_prim_vf The right WENO-reconstructed cell-boundary values of the cell-average primitive variables + !! @param q_prim_vf Cell-averaged primitive variables + !! @param flux_vf Intra-cell fluxes + !! @param flux_src_vf Intra-cell fluxes sources + !! @param flux_gsrc_vf Intra-cell geometric fluxes sources + !! @param norm_dir Dir. splitting direction + !! @param ix Index bounds in the x-dir + !! @param iy Index bounds in the y-dir + !! @param iz Index bounds in the z-dir subroutine s_hllc_riemann_solver(qL_prim_rsx_vf, qL_prim_rsy_vf, qL_prim_rsz_vf, dqL_prim_dx_vf, dqL_prim_dy_vf, & - - & dqL_prim_dz_vf, qL_prim_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_vf, dqR_prim_dy_vf, & - & dqR_prim_dz_vf, qR_prim_vf, q_prim_vf, flux_vf, flux_src_vf, flux_gsrc_vf, norm_dir, ix, iy, iz) + & dqL_prim_dz_vf, qL_prim_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, & + & dqR_prim_dx_vf, dqR_prim_dy_vf, dqR_prim_dz_vf, qR_prim_vf, q_prim_vf, flux_vf, & + & flux_src_vf, flux_gsrc_vf, norm_dir, ix, iy, iz) real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: qL_prim_rsx_vf, qL_prim_rsy_vf, & & qL_prim_rsz_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf @@ -1773,6 +1824,7 @@ contains real(wp) :: flux_ene_e real(wp) :: zcoef, pcorr !< low Mach number correction integer :: Re_max, i, j, k, l, q !< Generic loop iterators + ! Populating the buffers of the left and right Riemann problem states variables, based on the choice of boundary conditions call s_populate_riemann_states_variables_buffers(qL_prim_rsx_vf, qL_prim_rsy_vf, qL_prim_rsz_vf, dqL_prim_dx_vf, & @@ -1785,9 +1837,9 @@ contains #:for NORM_DIR, XYZ in [(1, 'x'), (2, 'y'), (3, 'z')] if (norm_dir == ${NORM_DIR}$) then - ! 6-EQUATION MODEL WITH HLLC HLLC star-state flux with contact wave speed s_S + ! 6-EQUATION MODEL WITH HLLC if (model_eqns == 3) then - ! 6-equation model (model_eqns=3): separate phasic internal energies + ! ME3 $:GPU_PARALLEL_LOOP(collapse=3, private='[i, j, k, l, q, vel_L, vel_R, Re_L, Re_R, alpha_L, alpha_R, Ys_L, & & Ys_R, Xs_L, Xs_R, Gamma_iL, Gamma_iR, Cp_iL, Cp_iR, Yi_avg, Phi_avg, h_iL, h_iR, & & h_avg_2, tau_e_L, tau_e_R, flux_ene_e, xi_field_L, xi_field_R, pcorr, zcoef, rho_L, & @@ -1922,7 +1974,7 @@ contains end do end if - ! Hyperelastic stress contribution: strain energy added to total energy + ! ENERGY ADJUSTMENTS FOR HYPERELASTIC ENERGY if (hyperelasticity) then $:GPU_LOOP(parallelism='[seq]') do i = 1, num_dims @@ -1979,7 +2031,6 @@ contains ! COMPUTING THE DIRECT WAVE SPEEDS if (wave_speeds == 1) then if (elasticity) then - ! Elastic wave speed, Rodriguez et al. JCP (2019) s_L = min(vel_L(dir_idx(1)) - sqrt(c_L*c_L + (((4._wp*G_L)/3._wp) + tau_e_L(dir_idx_tau(1) & & ))/rho_L), & & vel_R(dir_idx(1)) - sqrt(c_R*c_R + (((4._wp*G_R)/3._wp) & @@ -2004,7 +2055,6 @@ contains pres_SR = pres_SL - ! Low Mach correction: Thornber et al. JCP (2008) Ms_L = max(1._wp, & & sqrt(1._wp + ((5.e-1_wp + gamma_L)/(1._wp + gamma_L))*(pres_SL/pres_L - 1._wp) & & *pres_L/((pres_L + pi_inf_L/(1._wp + gamma_L))))) @@ -2098,7 +2148,7 @@ contains & i)*s_S + xi_P*qR_prim_rs${XYZ}$_vf(j + 1, k, l, i)*s_S end do - ! Advection velocity source: interface velocity for volume fraction transport + ! SOURCE TERM FOR VOLUME FRACTION ADVECTION FLUX. $:GPU_LOOP(parallelism='[seq]') do i = 1, num_dims vel_src_rs${XYZ}$_vf(j, k, l, & @@ -2141,7 +2191,7 @@ contains end do end if - ! Hyperelastic reference map flux for material deformation tracking + ! REFERENCE MAP FLUX. if (hyperelasticity) then $:GPU_LOOP(parallelism='[seq]') do i = 1, num_dims @@ -2197,7 +2247,7 @@ contains end do $:END_GPU_PARALLEL_LOOP() else if (model_eqns == 4) then - ! 4-equation model (model_eqns=4): single pressure, velocity equilibrium + ! ME4 $:GPU_PARALLEL_LOOP(collapse=3, private='[i, q, alpha_rho_L, alpha_rho_R, vel_L, vel_R, alpha_L, alpha_R, & & nbub_L, nbub_R, rho_L, rho_R, pres_L, pres_R, E_L, E_R, H_L, H_R, Cp_avg, Cv_avg, & & T_avg, eps, c_sum_Yi_Phi, T_L, T_R, Y_L, Y_R, MW_L, MW_R, R_gas_L, R_gas_R, Cp_L, Cp_R, & @@ -2288,7 +2338,6 @@ contains pres_SR = pres_SL - ! Low Mach correction: Thornber et al. JCP (2008) Ms_L = max(1._wp, & & sqrt(1._wp + ((5.e-1_wp + gamma_L)/(1._wp + gamma_L))*(pres_SL/pres_L - 1._wp) & & *pres_L/((pres_L + pi_inf_L/(1._wp + gamma_L))))) @@ -2351,7 +2400,7 @@ contains & + 1, k, l, i)*(vel_R(dir_idx(1)) + s_P*(xi_R - 1._wp)) end do - ! Advection velocity source: interface velocity for volume fraction transport + ! Source for volume fraction advection equation $:GPU_LOOP(parallelism='[seq]') do i = 1, num_dims vel_src_rs${XYZ}$_vf(j, k, l, dir_idx(i)) = 0._wp @@ -2416,7 +2465,6 @@ contains end do $:END_GPU_PARALLEL_LOOP() else if (model_eqns == 2 .and. bubbles_euler) then - ! 5-equation model with Euler-Euler bubble dynamics $:GPU_PARALLEL_LOOP(collapse=3, private='[i, q, R0_L, R0_R, V0_L, V0_R, P0_L, P0_R, pbw_L, pbw_R, vel_L, & & vel_R, rho_avg, alpha_L, alpha_R, h_avg, gamma_avg, Re_L, Re_R, pcorr, zcoef, rho_L, & & rho_R, pres_L, pres_R, E_L, E_R, H_L, H_R, gamma_L, gamma_R, pi_inf_L, pi_inf_R, qv_L, & @@ -2641,7 +2689,6 @@ contains pres_SR = pres_SL - ! Low Mach correction: Thornber et al. JCP (2008) Ms_L = max(1._wp, & & sqrt(1._wp + ((5.e-1_wp + gamma_L)/(1._wp + gamma_L))*(pres_SL/pres_L - 1._wp) & & *pres_L/((pres_L + pi_inf_L/(1._wp + gamma_L))))) @@ -2731,7 +2778,7 @@ contains & + 1, k, l, i)*(vel_R(dir_idx(1)) + s_P*(xi_R - 1._wp)) end do - ! Advection velocity source: interface velocity for volume fraction transport + ! Source for volume fraction advection equation $:GPU_LOOP(parallelism='[seq]') do i = 1, num_dims vel_src_rs${XYZ}$_vf(j, k, l, & @@ -2810,7 +2857,7 @@ contains end do $:END_GPU_PARALLEL_LOOP() else - ! 5-equation model (model_eqns=2): mixture total energy, volume fraction advection + ! 5-EQUATION MODEL WITH HLLC $:GPU_PARALLEL_LOOP(collapse=3, private='[Re_max, i, q, T_L, T_R, vel_L_rms, vel_R_rms, pres_L, pres_R, & & rho_L, gamma_L, pi_inf_L, qv_L, rho_R, gamma_R, pi_inf_R, qv_R, alpha_L_sum, & & alpha_R_sum, E_L, E_R, MW_L, MW_R, R_gas_L, R_gas_R, Cp_L, Cp_R, Cv_L, Cv_R, Gamm_L, & @@ -2993,7 +3040,7 @@ contains end do end if - ! Hyperelastic stress contribution: strain energy added to total energy + ! ENERGY ADJUSTMENTS FOR HYPERELASTIC ENERGY if (hyperelasticity) then $:GPU_LOOP(parallelism='[seq]') do i = 1, num_dims @@ -3053,7 +3100,6 @@ contains if (wave_speeds == 1) then if (elasticity) then - ! Elastic wave speed, Rodriguez et al. JCP (2019) s_L = min(vel_L(dir_idx(1)) - sqrt(c_L*c_L + (((4._wp*G_L)/3._wp) + tau_e_L(dir_idx_tau(1) & & ))/rho_L), & & vel_R(dir_idx(1)) - sqrt(c_R*c_R + (((4._wp*G_R)/3._wp) & @@ -3078,7 +3124,6 @@ contains pres_SR = pres_SL - ! Low Mach correction: Thornber et al. JCP (2008) Ms_L = max(1._wp, & & sqrt(1._wp + ((5.e-1_wp + gamma_L)/(1._wp + gamma_L))*(pres_SL/pres_L - 1._wp) & & *pres_L/((pres_L + pi_inf_L/(1._wp + gamma_L))))) @@ -3194,7 +3239,7 @@ contains & c_idx)*(vel_R(dir_idx(1)) + s_P*(xi_R - 1._wp)) end if - ! Hyperelastic reference map flux for material deformation tracking + ! REFERENCE MAP FLUX. if (hyperelasticity) then $:GPU_LOOP(parallelism='[seq]') do i = 1, num_dims @@ -3294,11 +3339,11 @@ contains end subroutine s_hllc_riemann_solver - !> HLLD Riemann solver for MHD, Miyoshi & Kusano JCP (2005) + !> HLLD Riemann solver resolves 5 of the 7 waves of MHD equations: 1 entropy wave, 2 Alfven waves, 2 fast magnetosonic waves. subroutine s_hlld_riemann_solver(qL_prim_rsx_vf, qL_prim_rsy_vf, qL_prim_rsz_vf, dqL_prim_dx_vf, dqL_prim_dy_vf, & - - & dqL_prim_dz_vf, qL_prim_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_vf, dqR_prim_dy_vf, & - & dqR_prim_dz_vf, qR_prim_vf, q_prim_vf, flux_vf, flux_src_vf, flux_gsrc_vf, norm_dir, ix, iy, iz) + & dqL_prim_dz_vf, qL_prim_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, & + & dqR_prim_dx_vf, dqR_prim_dy_vf, dqR_prim_dz_vf, qR_prim_vf, q_prim_vf, flux_vf, & + & flux_src_vf, flux_gsrc_vf, norm_dir, ix, iy, iz) real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: qL_prim_rsx_vf, qL_prim_rsy_vf, & & qL_prim_rsz_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf @@ -3465,13 +3510,13 @@ contains F_R(3:4) = U_R(2)*vel%R(2:3) - B%R(1)*B%R(2:3) F_R(5:6) = vel%R(1)*B%R(2:3) - vel%R(2:3)*B%R(1) F_R(7) = (E%R + pTot_R)*vel%R(1) - B%R(1)*(vel%R(1)*B%R(1) + vel%R(2)*B%R(2) + vel%R(3)*B%R(3)) - ! HLLD star-state fluxes via HLL jump relation + ! Compute the star flux using HLL relation F_starL = F_L + s_L*(U_starL - U_L) F_starR = F_R + s_R*(U_starR - U_R) - ! Alfven wave speeds bounding the rotational discontinuities + ! Compute the rotational (Alfven) speeds s_starL = s_M - abs(B%L(1))/sqrt(rhoL_star) s_starR = s_M + abs(B%L(1))/sqrt(rhoR_star) - ! HLLD double-star (intermediate) states across rotational discontinuities + ! Compute the double-star states [Miyoshi Eqns. (59)-(62)] sqrt_rhoL_star = sqrt(rhoL_star); sqrt_rhoR_star = sqrt(rhoR_star) vL_star = vel%L(2); wL_star = vel%L(3) vR_star = vel%R(2); wR_star = vel%R(3) @@ -3497,7 +3542,7 @@ contains U_doubleR = [rhoR_star, rhoR_star*s_M, rhoR_star*v_double, rhoR_star*w_double, By_double, Bz_double, & & E_double] - ! Select HLLD flux region + ! (11) Choose HLLD flux based on wave-speed regions if (0.0_wp <= s_L) then F_hlld = F_L else if (0.0_wp <= s_starL) then @@ -3512,7 +3557,7 @@ contains F_hlld = F_R end if - ! (12) Write HLLD flux to output arrays + ! (12) Reorder and write temporary variables to the flux array Mass flux_rs${XYZ}$_vf(j, k, l, 1) = F_hlld(1) ! TODO multi-component ! Momentum flux_rs${XYZ}$_vf(j, k, l, contxe + dir_idx(1)) = F_hlld(2) @@ -3528,7 +3573,7 @@ contains end if ! Energy flux_rs${XYZ}$_vf(j, k, l, E_idx) = F_hlld(7) - ! Volume fractions + ! Partial fraction $:GPU_LOOP(parallelism='[seq]') do i = advxb, advxe flux_rs${XYZ}$_vf(j, k, l, i) = 0._wp ! TODO multi-component (zero for now) @@ -3546,7 +3591,8 @@ contains end subroutine s_hlld_riemann_solver - !> Initialize the Riemann solvers module + !> The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other + !! procedures that are necessary to setup the module. impure subroutine s_initialize_riemann_solvers_module ! Allocating the variables that will be utilized to formulate the left, right, and average states of the Riemann problem, as @@ -3628,11 +3674,27 @@ contains end subroutine s_initialize_riemann_solvers_module - !> Populate the left and right Riemann state variable buffers based on boundary conditions + !> The purpose of this subroutine is to populate the buffers of the left and right Riemann states variables, depending on the + !! boundary conditions. + !! @param qL_prim_rsx_vf Left WENO-reconstructed cell-boundary values (x-dir) + !! @param qL_prim_rsy_vf Left WENO-reconstructed cell-boundary values (y-dir) + !! @param qL_prim_rsz_vf Left WENO-reconstructed cell-boundary values (z-dir) + !! @param dqL_prim_dx_vf The left WENO-reconstructed cell-boundary values of the first-order x-dir spatial derivatives + !! @param dqL_prim_dy_vf The left WENO-reconstructed cell-boundary values of the first-order y-dir spatial derivatives + !! @param dqL_prim_dz_vf The left WENO-reconstructed cell-boundary values of the first-order z-dir spatial derivatives + !! @param qR_prim_rsx_vf Right WENO-reconstructed cell-boundary values (x-dir) + !! @param qR_prim_rsy_vf Right WENO-reconstructed cell-boundary values (y-dir) + !! @param qR_prim_rsz_vf Right WENO-reconstructed cell-boundary values (z-dir) + !! @param dqR_prim_dx_vf The right WENO-reconstructed cell-boundary values of the first-order x-dir spatial derivatives + !! @param dqR_prim_dy_vf The right WENO-reconstructed cell-boundary values of the first-order y-dir spatial derivatives + !! @param dqR_prim_dz_vf The right WENO-reconstructed cell-boundary values of the first-order z-dir spatial derivatives + !! @param norm_dir Dir. splitting direction + !! @param ix Index bounds in the x-dir + !! @param iy Index bounds in the y-dir + !! @param iz Index bounds in the z-dir subroutine s_populate_riemann_states_variables_buffers(qL_prim_rsx_vf, qL_prim_rsy_vf, qL_prim_rsz_vf, dqL_prim_dx_vf, & - & dqL_prim_dy_vf, dqL_prim_dz_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_vf, dqR_prim_dy_vf, & - & dqR_prim_dz_vf, norm_dir, ix, iy, iz) + & dqR_prim_dz_vf, norm_dir, ix, iy, iz) real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: qL_prim_rsx_vf, qL_prim_rsy_vf, & & qL_prim_rsz_vf, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf @@ -3962,7 +4024,10 @@ contains end subroutine s_populate_riemann_states_variables_buffers - !> Set up the chosen Riemann solver algorithm for the current direction + !> The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other + !! procedures needed to configure the chosen Riemann solver algorithm. + !! @param flux_src_vf Intra-cell fluxes sources + !! @param norm_dir Dir. splitting direction subroutine s_initialize_riemann_solver(flux_src_vf, norm_dir) type(scalar_field), dimension(sys_size), intent(inout) :: flux_src_vf @@ -4111,9 +4176,23 @@ contains end subroutine s_initialize_riemann_solver - !> Compute cylindrical viscous source flux contributions for momentum and energy + !> @brief Computes cylindrical viscous source flux contributions for momentum and energy. Calculates Cartesian components of the + !! stress tensor using averaged velocity derivatives and cylindrical geometric factors, then updates `flux_src_vf`. Assumes + !! x-dir is axial (z_cyl), y-dir is radial (r_cyl), z-dir is azimuthal (theta_cyl for derivatives). + !! @param[in] velL_vf Left boundary velocity (\f$v_x, v_y, v_z\f$) (num_dims scalar_field). + !! @param[in] dvelL_dx_vf Left boundary \f$\partial v_i/\partial x\f$ (num_dims scalar_field). + !! @param[in] dvelL_dy_vf Left boundary \f$\partial v_i/\partial y\f$ (num_dims scalar_field). + !! @param[in] dvelL_dz_vf Left boundary \f$\partial v_i/\partial z\f$ (num_dims scalar_field). + !! @param[in] velR_vf Right boundary velocity (\f$v_x, v_y, v_z\f$) (num_dims scalar_field). + !! @param[in] dvelR_dx_vf Right boundary \f$\partial v_i/\partial x\f$ (num_dims scalar_field). + !! @param[in] dvelR_dy_vf Right boundary \f$\partial v_i/\partial y\f$ (num_dims scalar_field). + !! @param[in] dvelR_dz_vf Right boundary \f$\partial v_i/\partial z\f$ (num_dims scalar_field). + !! @param[inout] flux_src_vf Intercell source flux array to update (sys_size scalar_field). + !! @param[in] norm_dir Interface normal direction (1=x-face, 2=y-face, 3=z-face). + !! @param[in] ix Global X-direction loop bounds (int_bounds_info). + !! @param[in] iy Global Y-direction loop bounds (int_bounds_info). + !! @param[in] iz Global Z-direction loop bounds (int_bounds_info). subroutine s_compute_cylindrical_viscous_source_flux(velL_vf, dvelL_dx_vf, dvelL_dy_vf, dvelL_dz_vf, velR_vf, dvelR_dx_vf, & - & dvelR_dy_vf, dvelR_dz_vf, flux_src_vf, norm_dir, ix, iy, iz) type(scalar_field), dimension(num_dims), intent(in) :: velL_vf, velR_vf @@ -4132,18 +4211,20 @@ contains real(wp), dimension(3) :: avg_dvdy_int !< Averaged interface \f$\partial v_i/\partial y\f$ (grid dir 2). real(wp), dimension(3) :: avg_dvdz_int !< Averaged interface \f$\partial v_i/\partial z\f$ (grid dir 3). real(wp), dimension(3) :: vel_src_int !< Interface velocity (\f$v_1,v_2,v_3\f$) (grid directions) for viscous work. - - !> Shear stress vector (\f$\sigma_{N1}, \sigma_{N2}, \sigma_{N3}\f$) on N-face (grid directions). - real(wp), dimension(3) :: stress_vector_shear + real(wp), & + & dimension(3) & + & :: stress_vector_shear !!< Shear stress vector (\f$\sigma_{N1}, \sigma_{N2}, \sigma_{N3}\f$) on N-face (grid directions). #:else - real(wp), dimension(num_dims) :: avg_v_int !< Averaged interface velocity (\f$v_x, v_y, v_z\f$) (grid directions). + real(wp), & + & dimension(num_dims) :: avg_v_int !!< Averaged interface velocity (\f$v_x, v_y, v_z\f$) (grid directions). real(wp), dimension(num_dims) :: avg_dvdx_int !< Averaged interface \f$\partial v_i/\partial x\f$ (grid dir 1). real(wp), dimension(num_dims) :: avg_dvdy_int !< Averaged interface \f$\partial v_i/\partial y\f$ (grid dir 2). real(wp), dimension(num_dims) :: avg_dvdz_int !< Averaged interface \f$\partial v_i/\partial z\f$ (grid dir 3). - !> Interface velocity (\f$v_1,v_2,v_3\f$) (grid directions) for viscous work. - real(wp), dimension(num_dims) :: vel_src_int - !> Shear stress vector (\f$\sigma_{N1}, \sigma_{N2}, \sigma_{N3}\f$) on N-face (grid directions). - real(wp), dimension(num_dims) :: stress_vector_shear + real(wp), & + & dimension(num_dims) :: vel_src_int !!< Interface velocity (\f$v_1,v_2,v_3\f$) (grid directions) for viscous work. + real(wp), & + & dimension(num_dims) & + & :: stress_vector_shear !!< Shear stress vector (\f$\sigma_{N1}, \sigma_{N2}, \sigma_{N3}\f$) on N-face (grid directions). #:endif real(wp) :: stress_normal_bulk !< Normal bulk stress component \f$\sigma_{NN}\f$ on N-face. real(wp) :: Re_s, Re_b !< Effective interface shear and bulk Reynolds numbers. @@ -4282,9 +4363,17 @@ contains end subroutine s_compute_cylindrical_viscous_source_flux - !> Compute Cartesian viscous source flux contributions for momentum and energy + !> @brief Computes Cartesian viscous source flux contributions for momentum and energy. Calculates averaged velocity gradients, + !! gets Re and interface velocities, calls helpers for shear/bulk stress, then updates `flux_src_vf`. + !! @param[in] dvelL_dx_vf Left boundary d(vel)/dx (num_dims scalar_field). + !! @param[in] dvelL_dy_vf Left boundary d(vel)/dy (num_dims scalar_field). + !! @param[in] dvelL_dz_vf Left boundary d(vel)/dz (num_dims scalar_field). + !! @param[in] dvelR_dx_vf Right boundary d(vel)/dx (num_dims scalar_field). + !! @param[in] dvelR_dy_vf Right boundary d(vel)/dy (num_dims scalar_field). + !! @param[in] dvelR_dz_vf Right boundary d(vel)/dz (num_dims scalar_field). + !! @param[inout] flux_src_vf Intercell source flux array to update (sys_size scalar_field). + !! @param[in] norm_dir Interface normal direction (1=x, 2=y, 3=z). subroutine s_compute_cartesian_viscous_source_flux(dvelL_dx_vf, dvelL_dy_vf, dvelL_dz_vf, dvelR_dx_vf, dvelR_dy_vf, & - & dvelR_dz_vf, flux_src_vf, norm_dir) ! Arguments @@ -4406,7 +4495,11 @@ contains end subroutine s_compute_cartesian_viscous_source_flux - !> Compute shear stress tensor components + !> @brief Calculates shear stress tensor components. tau_ij_shear = ( (dui/dxj + duj/dxi) - (2/3)*(div_v)*delta_ij ) / Re_shear + !! @param[in] vel_grad_avg Averaged velocity gradient tensor (d(vel_i)/d(coord_j)). + !! @param[in] Re_shear Shear Reynolds number. + !! @param[in] divergence_v Velocity divergence (du/dx + dv/dy + dw/dz). + !! @param[out] tau_shear_out Calculated shear stress tensor (stress on i-face, j-direction). subroutine s_calculate_shear_stress_tensor(vel_grad_avg, Re_shear, divergence_v, tau_shear_out) $:GPU_ROUTINE(parallelism='[seq]') @@ -4425,6 +4518,7 @@ contains ! Local variables integer :: i_dim !< Loop iterator for face normal. integer :: j_dim !< Loop iterator for force component direction. + tau_shear_out = 0.0_wp do i_dim = 1, num_dims @@ -4438,7 +4532,10 @@ contains end subroutine s_calculate_shear_stress_tensor - !> Compute bulk stress tensor components (diagonal only) + !> @brief Calculates bulk stress tensor components (diagonal only). tau_ii_bulk = (div_v) / Re_bulk. Off-diagonals are zero. + !! @param[in] Re_bulk Bulk Reynolds number. + !! @param[in] divergence_v Velocity divergence (du/dx + dv/dy + dw/dz). + !! @param[out] tau_bulk_out Calculated bulk stress tensor (stress on i-face, i-direction). subroutine s_calculate_bulk_stress_tensor(Re_bulk, divergence_v, tau_bulk_out) $:GPU_ROUTINE(parallelism='[seq]') @@ -4454,6 +4551,7 @@ contains ! Local variables integer :: i_dim !< Loop iterator for diagonal components. + tau_bulk_out = 0.0_wp do i_dim = 1, num_dims @@ -4463,11 +4561,16 @@ contains end subroutine s_calculate_bulk_stress_tensor !> Deallocation and/or disassociation procedures that are needed to finalize the selected Riemann problem solver + !! @param flux_vf Intercell fluxes + !! @param flux_src_vf Intercell source fluxes + !! @param flux_gsrc_vf Intercell geometric source fluxes + !! @param norm_dir Dimensional splitting coordinate direction subroutine s_finalize_riemann_solver(flux_vf, flux_src_vf, flux_gsrc_vf, norm_dir) type(scalar_field), dimension(sys_size), intent(inout) :: flux_vf, flux_src_vf, flux_gsrc_vf integer, intent(in) :: norm_dir integer :: i, j, k, l !< Generic loop iterators + ! Reshaping Outputted Data in y-direction if (norm_dir == 2) then diff --git a/src/simulation/m_sim_helpers.fpp b/src/simulation/m_sim_helpers.fpp index e20ec982fe..b9a5b10cf8 100644 --- a/src/simulation/m_sim_helpers.fpp +++ b/src/simulation/m_sim_helpers.fpp @@ -19,6 +19,9 @@ module m_sim_helpers contains !> Computes the modified dtheta for Fourier filtering in azimuthal direction + !! @param k y coordinate index + !! @param l z coordinate index + !! @return fltr_dtheta Modified dtheta value for cylindrical coordinates function f_compute_filtered_dtheta(k, l) result(fltr_dtheta) $:GPU_ROUTINE(parallelism='[seq]') @@ -42,6 +45,12 @@ contains end function f_compute_filtered_dtheta !> Computes inviscid CFL terms for multi-dimensional cases (2D/3D only) + !! @param vel directional velocities + !! @param c mixture speed of sound + !! @param j x coordinate index + !! @param k y coordinate index + !! @param l z coordinate index + !! @return cfl_terms computed CFL terms for 2D/3D cases function f_compute_multidim_cfl_terms(vel, c, j, k, l) result(cfl_terms) $:GPU_ROUTINE(parallelism='[seq]') @@ -70,6 +79,20 @@ contains end function f_compute_multidim_cfl_terms !> Computes enthalpy + !! @param q_prim_vf cell centered primitive variables + !! @param pres mixture pressure + !! @param rho mixture density + !! @param gamma mixture gamma + !! @param pi_inf mixture pi_inf + !! @param Re mixture reynolds number + !! @param H mixture enthalpy + !! @param alpha component alphas + !! @param vel directional velocities + !! @param vel_sum squard sum of velocity components + !! @param qv Fluid reference energy + !! @param j x index + !! @param k y index + !! @param l z index subroutine s_compute_enthalpy(q_prim_vf, pres, rho, gamma, pi_inf, Re, H, alpha, vel, vel_sum, qv, j, k, l) $:GPU_ROUTINE(function_name='s_compute_enthalpy',parallelism='[seq]', cray_inline=True) @@ -138,80 +161,88 @@ contains end subroutine s_compute_enthalpy !> Computes stability criterion for a specified dt - subroutine s_compute_stability_from_dt(vel, c, rho, Re_l, j, k, l, icfl_sf, vcfl_sf, Rc_sf) + !! @param vel directional velocities + !! @param c mixture speed of sound + !! @param rho Density + !! @param Re_l mixture Reynolds number + !! @param j x index + !! @param k y index + !! @param l z index + !! @param icfl cell-centered inviscid cfl number + !! @param vcfl (optional) cell-centered viscous CFL number + !! @param Rc (optional) cell centered Rc + subroutine s_compute_stability_from_dt(vel, c, rho, Re_l, j, k, l, icfl, vcfl, Rc) $:GPU_ROUTINE(parallelism='[seq]') - real(wp), intent(in), dimension(num_vels) :: vel - real(wp), intent(in) :: c, rho - real(wp), dimension(0:m,0:n,0:p), intent(inout) :: icfl_sf - real(wp), dimension(0:m,0:n,0:p), intent(inout), optional :: vcfl_sf, Rc_sf - real(wp), dimension(2), intent(in) :: Re_l - integer, intent(in) :: j, k, l - real(wp) :: fltr_dtheta + real(wp), intent(in), dimension(num_vels) :: vel + real(wp), intent(in) :: c, rho + real(wp), intent(inout) :: icfl + real(wp), intent(inout), optional :: vcfl, Rc + real(wp), dimension(2), intent(in) :: Re_l + integer, intent(in) :: j, k, l + real(wp) :: fltr_dtheta ! Inviscid CFL calculation if (p > 0 .or. n > 0) then - ! 2D/3D - icfl_sf(j, k, l) = dt/f_compute_multidim_cfl_terms(vel, c, j, k, l) + icfl = dt/f_compute_multidim_cfl_terms(vel, c, j, k, l) else - ! 1D - icfl_sf(j, k, l) = (dt/dx(j))*(abs(vel(1)) + c) + icfl = (dt/dx(j))*(abs(vel(1)) + c) end if ! Viscous calculations if (viscous) then if (p > 0) then #:if not MFC_CASE_OPTIMIZATION or num_dims > 2 - ! 3D if (grid_geometry == 3) then fltr_dtheta = f_compute_filtered_dtheta(k, l) - vcfl_sf(j, k, l) = maxval(dt/Re_l/rho)/min(dx(j), dy(k), fltr_dtheta)**2._wp - Rc_sf(j, k, l) = min(dx(j)*(abs(vel(1)) + c), dy(k)*(abs(vel(2)) + c), & - & fltr_dtheta*(abs(vel(3)) + c))/maxval(1._wp/Re_l) + vcfl = maxval(dt/Re_l/rho)/min(dx(j), dy(k), fltr_dtheta)**2._wp + Rc = min(dx(j)*(abs(vel(1)) + c), dy(k)*(abs(vel(2)) + c), fltr_dtheta*(abs(vel(3)) + c))/maxval(1._wp/Re_l) else - vcfl_sf(j, k, l) = maxval(dt/Re_l/rho)/min(dx(j), dy(k), dz(l))**2._wp - Rc_sf(j, k, l) = min(dx(j)*(abs(vel(1)) + c), dy(k)*(abs(vel(2)) + c), & - & dz(l)*(abs(vel(3)) + c))/maxval(1._wp/Re_l) + vcfl = maxval(dt/Re_l/rho)/min(dx(j), dy(k), dz(l))**2._wp + Rc = min(dx(j)*(abs(vel(1)) + c), dy(k)*(abs(vel(2)) + c), dz(l)*(abs(vel(3)) + c))/maxval(1._wp/Re_l) end if #:endif else if (n > 0) then - ! 2D - vcfl_sf(j, k, l) = maxval(dt/Re_l/rho)/min(dx(j), dy(k))**2._wp - Rc_sf(j, k, l) = min(dx(j)*(abs(vel(1)) + c), dy(k)*(abs(vel(2)) + c))/maxval(1._wp/Re_l) + vcfl = maxval(dt/Re_l/rho)/min(dx(j), dy(k))**2._wp + Rc = min(dx(j)*(abs(vel(1)) + c), dy(k)*(abs(vel(2)) + c))/maxval(1._wp/Re_l) else - ! 1D - vcfl_sf(j, k, l) = maxval(dt/Re_l/rho)/dx(j)**2._wp - Rc_sf(j, k, l) = dx(j)*(abs(vel(1)) + c)/maxval(1._wp/Re_l) + vcfl = maxval(dt/Re_l/rho)/dx(j)**2._wp + Rc = dx(j)*(abs(vel(1)) + c)/maxval(1._wp/Re_l) end if end if end subroutine s_compute_stability_from_dt !> Computes dt for a specified CFL number + !! @param vel directional velocities + !! @param c Speed of sound + !! @param max_dt cell centered maximum dt + !! @param rho cell centered density + !! @param Re_l cell centered Reynolds number + !! @param j x coordinate + !! @param k y coordinate + !! @param l z coordinate subroutine s_compute_dt_from_cfl(vel, c, max_dt, rho, Re_l, j, k, l) $:GPU_ROUTINE(parallelism='[seq]') - real(wp), dimension(num_vels), intent(in) :: vel - real(wp), intent(in) :: c, rho - real(wp), dimension(0:m,0:n,0:p), intent(inout) :: max_dt - real(wp), dimension(2), intent(in) :: Re_l - integer, intent(in) :: j, k, l - real(wp) :: icfl_dt, vcfl_dt - real(wp) :: fltr_dtheta + real(wp), dimension(num_vels), intent(in) :: vel + real(wp), intent(in) :: c, rho + real(wp), intent(inout) :: max_dt + real(wp), dimension(2), intent(in) :: Re_l + integer, intent(in) :: j, k, l + real(wp) :: icfl_dt, vcfl_dt + real(wp) :: fltr_dtheta ! Inviscid CFL calculation if (p > 0 .or. n > 0) then - ! 2D/3D cases icfl_dt = cfl_target*f_compute_multidim_cfl_terms(vel, c, j, k, l) else - ! 1D case icfl_dt = cfl_target*(dx(j)/(abs(vel(1)) + c)) end if ! Viscous calculations if (viscous) then if (p > 0) then - ! 3D if (grid_geometry == 3) then fltr_dtheta = f_compute_filtered_dtheta(k, l) vcfl_dt = cfl_target*(min(dx(j), dy(k), fltr_dtheta)**2._wp)/maxval(1/(rho*Re_l)) @@ -219,18 +250,16 @@ contains vcfl_dt = cfl_target*(min(dx(j), dy(k), dz(l))**2._wp)/maxval(1/(rho*Re_l)) end if else if (n > 0) then - ! 2D vcfl_dt = cfl_target*(min(dx(j), dy(k))**2._wp)/maxval((1/Re_l)/rho) else - ! 1D vcfl_dt = cfl_target*(dx(j)**2._wp)/maxval(1/(rho*Re_l)) end if end if - if (any(Re_size > 0)) then - max_dt(j, k, l) = min(icfl_dt, vcfl_dt) + if (viscous) then + max_dt = min(icfl_dt, vcfl_dt) else - max_dt(j, k, l) = icfl_dt + max_dt = icfl_dt end if end subroutine s_compute_dt_from_cfl diff --git a/src/simulation/m_start_up.fpp b/src/simulation/m_start_up.fpp index c3f38ef500..b217d72d08 100644 --- a/src/simulation/m_start_up.fpp +++ b/src/simulation/m_start_up.fpp @@ -59,6 +59,7 @@ module m_start_up contains !> Read data files. Dispatch subroutine that replaces procedure pointer. + !! @param q_cons_vf Conservative variables impure subroutine s_read_data_files(q_cons_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf @@ -71,24 +72,26 @@ contains end subroutine s_read_data_files - !> Verify the input file exists and read it + !> The purpose of this procedure is to first verify that an input file has been made available by the user. Provided that this + !! is so, the input file is then read in. impure subroutine s_read_input_file + ! Relative path to the input file provided by the user character(LEN=name_len), parameter :: file_path = './simulation.inp' logical :: file_exist !< Logical used to check the existence of the input file integer :: iostatus - ! Integer to check iostat of file read + !! Integer to check iostat of file read character(len=1000) :: line + ! Namelist of the global parameters which may be specified by user + namelist /user_inputs/ case_dir, run_time_info, m, n, p, dt, & t_step_start, t_step_stop, t_step_save, t_step_print, & model_eqns, mpp_lim, time_stepper, weno_eps, & rdma_mpi, teno_CT, mp_weno, weno_avg, & riemann_solver, low_Mach, wave_speeds, avg_state, & bc_x, bc_y, bc_z, & - x_a, y_a, z_a, x_b, y_b, z_b, & - x_domain, y_domain, z_domain, & hypoelasticity, & ib, num_ibs, patch_ib, & ib_state_wrt, & @@ -112,6 +115,8 @@ contains & hyper_cleaning, hyper_cleaning_speed, hyper_cleaning_tau, alf_factor, num_igr_iters, num_igr_warm_start_iters, & & int_comp, ic_eps, ic_beta, nv_uvm_out_of_core, nv_uvm_igr_temps_on_gpu, nv_uvm_pref_gpu, down_sample, fft_wrt + ! Checking that an input file has been provided by the user. If it has, then the input file is read in, otherwise, + ! simulation exits. inquire (FILE=trim(file_path), EXIST=file_exist) if (file_exist) then @@ -131,6 +136,7 @@ contains bodyForces = .true. end if + ! Store m,n,p into global m,n,p m_glb = m n_glb = n p_glb = p @@ -139,20 +145,30 @@ contains if (cfl_adap_dt .or. cfl_const_dt) cfl_dt = .true. - if (any((/bc_x%beg, bc_x%end, bc_y%beg, bc_y%end, bc_z%beg, bc_z%end/) == -17) .or. num_bc_patches > 0) then + if (any((/bc_x%beg, bc_x%end, bc_y%beg, bc_y%end, bc_z%beg, bc_z%end/) == BC_DIRICHLET) .or. num_bc_patches > 0) then bc_io = .true. end if + + if (bc_x%beg == BC_PERIODIC .and. bc_x%end == BC_PERIODIC) periodic_bc(1) = .true. + if (bc_y%beg == BC_PERIODIC .and. bc_y%end == BC_PERIODIC) periodic_bc(2) = .true. + if (bc_z%beg == BC_PERIODIC .and. bc_z%end == BC_PERIODIC) periodic_bc(3) = .true. else call s_mpi_abort(trim(file_path) // ' is missing. Exiting.') end if end subroutine s_read_input_file - !> Validate that all user-provided inputs form a consistent simulation configuration + !> The goal of this procedure is to verify that each of the user provided inputs is valid and that their combination constitutes + !! a meaningful configuration for the simulation. impure subroutine s_check_input_file + ! Relative path to the current directory file in the case directory character(LEN=path_len) :: file_path - logical :: file_exist + + ! Logical used to check the existence of the current directory file + logical :: file_exist + + ! Logistics file_path = trim(case_dir) // '/.' @@ -167,15 +183,21 @@ contains end subroutine s_check_input_file - !> Read serial initial condition and grid data files and compute cell-width distributions + !> @brief Reads serial initial condition and grid data files and computes cell-width distributions. + !! @param q_cons_vf Cell-averaged conservative variables impure subroutine s_read_serial_data_files(q_cons_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf character(LEN=path_len + 2*name_len) :: t_step_dir !< Relative path to the starting time-step directory character(LEN=path_len + 3*name_len) :: file_path !< Relative path to the grid and conservative variables data files logical :: file_exist + ! Logical used to check the existence of the data files + integer :: i, r + ! Confirming that the directory from which the initial condition and the grid data files are to be read in exists and + ! exiting otherwise + if (cfl_dt) then write (t_step_dir, '(A,I0,A,I0)') trim(case_dir) // '/p_all/p', proc_rank, '/', n_start else @@ -195,6 +217,7 @@ contains call s_assign_default_bc_type(bc_type) end if + ! Cell-boundary Locations in x-direction file_path = trim(t_step_dir) // '/x_cb.dat' inquire (FILE=trim(file_path), EXIST=file_exist) @@ -218,6 +241,7 @@ contains end do end if + ! Cell-boundary Locations in y-direction if (n > 0) then file_path = trim(t_step_dir) // '/y_cb.dat' @@ -234,6 +258,7 @@ contains y_cc(0:n) = y_cb(-1:n - 1) + dy(0:n)/2._wp end if + ! Cell-boundary Locations in z-direction if (p > 0) then file_path = trim(t_step_dir) // '/z_cb.dat' @@ -293,7 +318,8 @@ contains end subroutine s_read_serial_data_files - !> Read parallel initial condition and grid data files via MPI I/O + !> @brief Reads parallel initial condition and grid data files via MPI I/O. + !! @param q_cons_vf Conservative variables impure subroutine s_read_parallel_data_files(q_cons_vf) type(scalar_field), dimension(sys_size), intent(inout) :: q_cons_vf @@ -321,6 +347,7 @@ contains allocate (y_cb_glb(-1:n_glb)) allocate (z_cb_glb(-1:p_glb)) + ! Read in cell boundary locations in x-direction file_loc = trim(case_dir) // '/restart_data' // trim(mpiiofs) // 'x_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_exist) @@ -343,8 +370,11 @@ contains call s_mpi_abort('File ' // trim(file_loc) // ' is missing. Exiting.') end if + ! Assigning local cell boundary locations x_cb(-1:m) = x_cb_glb((start_idx(1) - 1):(start_idx(1) + m)) + ! Computing the cell width distribution dx(0:m) = x_cb(0:m) - x_cb(-1:m - 1) + ! Computing the cell center locations x_cc(0:m) = x_cb(-1:m - 1) + dx(0:m)/2._wp if (ib) then @@ -358,6 +388,7 @@ contains end if if (n > 0) then + ! Read in cell boundary locations in y-direction file_loc = trim(case_dir) // '/restart_data' // trim(mpiiofs) // 'y_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_exist) @@ -370,11 +401,15 @@ contains call s_mpi_abort('File ' // trim(file_loc) // ' is missing. Exiting.') end if + ! Assigning local cell boundary locations y_cb(-1:n) = y_cb_glb((start_idx(2) - 1):(start_idx(2) + n)) + ! Computing the cell width distribution dy(0:n) = y_cb(0:n) - y_cb(-1:n - 1) + ! Computing the cell center locations y_cc(0:n) = y_cb(-1:n - 1) + dy(0:n)/2._wp if (p > 0) then + ! Read in cell boundary locations in z-direction file_loc = trim(case_dir) // '/restart_data' // trim(mpiiofs) // 'z_cb.dat' inquire (FILE=trim(file_loc), EXIST=file_exist) @@ -387,8 +422,11 @@ contains call s_mpi_abort('File ' // trim(file_loc) // 'is missing. Exiting.') end if + ! Assigning local cell boundary locations z_cb(-1:p) = z_cb_glb((start_idx(3) - 1):(start_idx(3) + p)) + ! Computing the cell width distribution dz(0:p) = z_cb(0:p) - z_cb(-1:p - 1) + ! Computing the cell center locations z_cc(0:p) = z_cb(-1:p - 1) + dz(0:p)/2._wp end if end if @@ -407,6 +445,7 @@ contains if (file_exist) then call MPI_FILE_OPEN(MPI_COMM_SELF, file_loc, MPI_MODE_RDONLY, mpi_info_int, ifile, ierr) + ! Initialize MPI data I/O if (down_sample) then call s_initialize_mpi_data_ds(q_cons_vf) else @@ -418,17 +457,20 @@ contains end if if (down_sample) then + ! Size of local arrays data_size = (m_ds + 3)*(n_ds + 3)*(p_ds + 3) m_glb_read = m_glb_ds + 1 n_glb_read = n_glb_ds + 1 p_glb_read = p_glb_ds + 1 else + ! Size of local arrays data_size = (m + 1)*(n + 1)*(p + 1) m_glb_read = m_glb + 1 n_glb_read = n_glb + 1 p_glb_read = p_glb + 1 end if + ! Resize some integers so MPI can read even the biggest file m_MOK = int(m_glb_read + 1, MPI_OFFSET_KIND) n_MOK = int(m_glb_read + 1, MPI_OFFSET_KIND) p_MOK = int(m_glb_read + 1, MPI_OFFSET_KIND) @@ -437,6 +479,7 @@ contains str_MOK = int(name_len, MPI_OFFSET_KIND) NVARS_MOK = int(sys_size, MPI_OFFSET_KIND) + ! Read the data for each variable if (bubbles_euler .or. elasticity) then do i = 1, sys_size ! adv_idx%end var_MOK = int(i, MPI_OFFSET_KIND) @@ -474,6 +517,7 @@ contains call s_mpi_abort('File ' // trim(file_loc) // ' is missing. Exiting.') end if else + ! Open the file to read conservative variables if (cfl_dt) then write (file_loc, '(I0,A)') n_start, '.dat' else @@ -485,14 +529,18 @@ contains if (file_exist) then call MPI_FILE_OPEN(MPI_COMM_WORLD, file_loc, MPI_MODE_RDONLY, mpi_info_int, ifile, ierr) + ! Initialize MPI data I/O + if (ib) then call s_initialize_mpi_data(q_cons_vf, ib_markers) else call s_initialize_mpi_data(q_cons_vf) end if + ! Size of local arrays data_size = (m + 1)*(n + 1)*(p + 1) + ! Resize some integers so MPI can read even the biggest file m_MOK = int(m_glb + 1, MPI_OFFSET_KIND) n_MOK = int(n_glb + 1, MPI_OFFSET_KIND) p_MOK = int(p_glb + 1, MPI_OFFSET_KIND) @@ -501,9 +549,11 @@ contains str_MOK = int(name_len, MPI_OFFSET_KIND) NVARS_MOK = int(sys_size, MPI_OFFSET_KIND) + ! Read the data for each variable if (bubbles_euler .or. elasticity) then do i = 1, sys_size ! adv_idx%end var_MOK = int(i, MPI_OFFSET_KIND) + ! Initial displacement to skip at beginning of file disp = m_MOK*max(MOK, n_MOK)*max(MOK, p_MOK)*WP_MOK*(var_MOK - 1) call MPI_FILE_SET_VIEW(ifile, disp, mpi_io_p, MPI_IO_DATA%view(i), 'native', mpi_info_int, ierr) @@ -513,6 +563,7 @@ contains if (qbmm .and. .not. polytropic) then do i = sys_size + 1, sys_size + 2*nb*nnode var_MOK = int(i, MPI_OFFSET_KIND) + ! Initial displacement to skip at beginning of file disp = m_MOK*max(MOK, n_MOK)*max(MOK, p_MOK)*WP_MOK*(var_MOK - 1) call MPI_FILE_SET_VIEW(ifile, disp, mpi_io_p, MPI_IO_DATA%view(i), 'native', mpi_info_int, ierr) @@ -523,6 +574,7 @@ contains do i = 1, sys_size var_MOK = int(i, MPI_OFFSET_KIND) + ! Initial displacement to skip at beginning of file disp = m_MOK*max(MOK, n_MOK)*max(MOK, p_MOK)*WP_MOK*(var_MOK - 1) call MPI_FILE_SET_VIEW(ifile, disp, mpi_io_p, MPI_IO_DATA%view(i), 'native', mpi_info_int, ierr) @@ -549,7 +601,9 @@ contains end subroutine s_read_parallel_data_files - !> Initialize internal-energy equations from phase mass, mixture momentum, and total energy + !> The purpose of this procedure is to initialize the values of the internal-energy equations of each phase from the mass of + !! each phase, the mixture momentum and mixture-total-energy equations. + !! @param v_vf conservative variables subroutine s_initialize_internal_energy_equations(v_vf) type(scalar_field), dimension(sys_size), intent(inout) :: v_vf @@ -606,7 +660,7 @@ contains end subroutine s_initialize_internal_energy_equations - !> Advance the simulation by one time step, handling CFL-based dt and time-stepper dispatch + !> @brief Advances the simulation by one time step, handling CFL-based dt and time-stepper dispatch. impure subroutine s_perform_time_step(t_step, time_avg) integer, intent(inout) :: t_step @@ -672,9 +726,8 @@ contains end subroutine s_perform_time_step - !> Collect per-process wall-clock times and write aggregate performance metrics to file + !> @brief Collects per-process wall-clock times and writes aggregate performance metrics to file. impure subroutine s_save_performance_metrics(time_avg, time_final, io_time_avg, io_time_final, proc_time, io_proc_time, & - & file_exists) real(wp), intent(inout) :: time_avg, time_final @@ -733,7 +786,7 @@ contains end subroutine s_save_performance_metrics - !> Save conservative variable data to disk at the current time step + !> @brief Saves conservative variable data to disk at the current time step. impure subroutine s_save_data(t_step, start, finish, io_time_avg, nt) integer, intent(inout) :: t_step @@ -796,7 +849,7 @@ contains if (bubbles_lagrange) then $:GPU_UPDATE(host='[lag_id, mtn_pos, mtn_posPrev, mtn_vel, intfc_rad, intfc_vel, bub_R0, Rmax_stats, Rmin_stats, & & bub_dphidt, gas_p, gas_mv, gas_mg, gas_betaT, gas_betaC]') - do i = 1, nBubs + do i = 1, n_el_bubs_loc if (ieee_is_nan(intfc_rad(i, 1)) .or. intfc_rad(i, 1) <= 0._wp) then call s_mpi_abort("Bubble radius is negative or NaN, please reduce dt.") end if @@ -827,7 +880,7 @@ contains end subroutine s_save_data - !> Initialize all simulation sub-modules in the required dependency order + !> @brief Initializes all simulation sub-modules in the required dependency order. impure subroutine s_initialize_modules integer :: m_ds, n_ds, p_ds @@ -888,6 +941,7 @@ contains end do end if + ! Reading in the user provided initial condition and grid data if (down_sample) then call s_read_data_files(q_cons_temp) call s_upsample_data(q_cons_ts(1)%vf, q_cons_temp) @@ -902,6 +956,7 @@ contains call s_read_data_files(q_cons_ts(1)%vf) end if + ! Populating the buffers of the grid variables using the boundary conditions call s_populate_grid_variables_buffers() if (model_eqns == 3) call s_initialize_internal_energy_equations(q_cons_ts(1)%vf) @@ -931,14 +986,13 @@ contains end if call s_initialize_derived_variables() - if (bubbles_lagrange) call s_initialize_bubbles_EL_module(q_cons_ts(1)%vf) - + if (bubbles_lagrange) call s_initialize_bubbles_EL_module(q_cons_ts(1)%vf, bc_type) if (hypoelasticity) call s_initialize_hypoelastic_module() if (hyperelasticity) call s_initialize_hyperelastic_module() end subroutine s_initialize_modules - !> Set up the MPI execution environment, bind GPUs, and decompose the computational domain + !> @brief Sets up the MPI execution environment, binds GPUs, and decomposes the computational domain. impure subroutine s_initialize_mpi_domain integer :: ierr @@ -955,8 +1009,11 @@ contains #endif #endif + ! Initializing MPI execution environment + call s_mpi_initialize() + ! Bind GPUs if OpenACC is enabled #ifdef MFC_GPU #ifndef MFC_MPI local_size = 1 @@ -979,6 +1036,9 @@ contains #endif #endif + ! The rank 0 processor assigns default values to the user inputs prior to reading them in from the input file. Next, the + ! user inputs are read and their consistency is checked. The identification of any inconsistencies will result in the + ! termination of the simulation. if (proc_rank == 0) then call s_assign_default_values_to_user_inputs() call s_read_input_file() @@ -1000,6 +1060,9 @@ contains #endif end if + ! Broadcasting the user inputs to all of the processors and performing the parallel computational domain decomposition. + ! Neither procedure has to be carried out if the simulation is in fact not truly executed in parallel. + call s_mpi_bcast_user_inputs() call s_initialize_parallel_io() @@ -1008,10 +1071,11 @@ contains end subroutine s_initialize_mpi_domain - !> Transfer initial conservative variable and model parameter data to the GPU device + !> @brief Transfers initial conservative variable and model parameter data to the GPU device. subroutine s_initialize_gpu_vars integer :: i + ! Update GPU DATA if (.not. down_sample) then do i = 1, sys_size @@ -1078,7 +1142,7 @@ contains end subroutine s_initialize_gpu_vars - !> Finalize and deallocate all simulation sub-modules in reverse initialization order + !> @brief Finalizes and deallocates all simulation sub-modules in reverse initialization order. impure subroutine s_finalize_modules call s_finalize_time_steppers_module() @@ -1113,6 +1177,7 @@ contains if (surface_tension) call s_finalize_surface_tension_module() if (bodyForces) call s_finalize_body_forces_module() + ! Terminating MPI execution environment call s_mpi_finalize() end subroutine s_finalize_modules diff --git a/src/simulation/m_surface_tension.fpp b/src/simulation/m_surface_tension.fpp index 4ceb4038ba..f2ba76c1a7 100644 --- a/src/simulation/m_surface_tension.fpp +++ b/src/simulation/m_surface_tension.fpp @@ -40,7 +40,6 @@ module m_surface_tension contains - !> Allocate and initialize surface tension module arrays impure subroutine s_initialize_surface_tension_module integer :: j @@ -67,7 +66,7 @@ contains end subroutine s_initialize_surface_tension_module - !> Compute the capillary source flux from reconstructed color-gradient fields + !> @brief Computes the capillary (surface-tension) source flux from reconstructed color-gradient fields. subroutine s_compute_capillary_source_flux(vSrc_rsx_vf, vSrc_rsy_vf, vSrc_rsz_vf, flux_src_vf, id, isx, isy, isz) real(wp), dimension(-1:,0:,0:,1:), intent(in) :: vSrc_rsx_vf @@ -119,7 +118,6 @@ contains & l, i) end do - ! Continuum surface force capillary stress, Schmidmayer et al. JCP (2017) flux_src_vf(E_idx)%sf(j, k, l) = flux_src_vf(E_idx)%sf(j, k, l) + sigma*c_divs(num_dims + 1)%sf(j, k, & & l)*vSrc_rsx_vf(j, k, l, 1) end if @@ -215,7 +213,7 @@ contains end subroutine s_compute_capillary_source_flux - !> Compute color-function gradients and reconstruct them at cell boundaries + !> @brief Computes color-function gradients and their norms, then reconstructs them at cell boundaries. impure subroutine s_get_capillary(q_prim_vf, bc_type) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -274,7 +272,7 @@ contains do i = 1, num_dims c_divs(num_dims + 1)%sf(j, k, l) = c_divs(num_dims + 1)%sf(j, k, l) + c_divs(i)%sf(j, k, l)**2._wp end do - + ! c_divs(num_dims + 1)%sf(j, k, l) = & sqrt(c_divs(num_dims + 1)%sf(j, k, l)) c_divs(num_dims + 1)%sf(j, k, l) = sqrt(real(c_divs(num_dims + 1)%sf(j, k, l), kind=wp)) end do end do @@ -292,7 +290,7 @@ contains end subroutine s_get_capillary - !> Reconstruct left and right cell-boundary values of capillary variables + !> @brief Reconstructs left and right cell-boundary values of capillary (color-gradient) variables using WENO or MUSCL. subroutine s_reconstruct_cell_boundary_values_capillary(v_vf, vL_x, vL_y, vL_z, vR_x, vR_y, vR_z, norm_dir) type(scalar_field), dimension(iv%beg:iv%end), intent(in) :: v_vf @@ -367,7 +365,7 @@ contains end subroutine s_reconstruct_cell_boundary_values_capillary - !> Finalize the surface tension module + !> @brief Deallocates the color-gradient divergence and reconstructed boundary arrays for surface tension. impure subroutine s_finalize_surface_tension_module integer :: j diff --git a/src/simulation/m_time_steppers.fpp b/src/simulation/m_time_steppers.fpp index 4a741a4068..a9b4af0577 100644 --- a/src/simulation/m_time_steppers.fpp +++ b/src/simulation/m_time_steppers.fpp @@ -33,18 +33,18 @@ module m_time_steppers type(scalar_field), allocatable, dimension(:) :: q_prim_vf !< Cell-average primitive variables at the current time-stage type(scalar_field), allocatable, dimension(:) :: rhs_vf !< Cell-average RHS variables at the current time-stage type(integer_field), allocatable, dimension(:,:) :: bc_type !< Boundary condition identifiers + !> Cell-average primitive variables at consecutive TIMESTEPS type(vector_field), allocatable, dimension(:) :: q_prim_ts1, q_prim_ts2 real(wp), allocatable, dimension(:,:,:,:,:) :: rhs_pb type(scalar_field) :: q_T_sf !< Cell-average temperature variables at the current time-stage real(wp), allocatable, dimension(:,:,:,:,:) :: rhs_mv - real(wp), allocatable, dimension(:,:,:) :: max_dt integer, private :: num_ts !< Number of time stages in the time-stepping scheme integer :: stor !< storage index real(wp), allocatable, dimension(:,:) :: rk_coef integer, private :: num_probe_ts - $:GPU_DECLARE(create='[q_cons_ts, q_prim_vf, q_T_sf, rhs_vf, q_prim_ts1, q_prim_ts2, rhs_mv, rhs_pb, max_dt, rk_coef, stor, bc_type]') + $:GPU_DECLARE(create='[q_cons_ts, q_prim_vf, q_T_sf, rhs_vf, q_prim_ts1, q_prim_ts2, rhs_mv, rhs_pb, rk_coef, stor, bc_type]') !> @cond #if defined(__NVCOMPILER_GPU_UNIFIED_MEM) @@ -59,7 +59,8 @@ module m_time_steppers contains - !> Initialize the time steppers module + !> The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other + !! procedures that are necessary to setup the module. impure subroutine s_initialize_time_steppers_module #ifdef FRONTIER_UNIFIED @@ -71,8 +72,8 @@ contains #endif #endif integer :: i, j !< Generic loop iterators - ! Setting number of time-stages for selected time-stepping scheme + ! Setting number of time-stages for selected time-stepping scheme if (time_stepper == 1) then num_ts = 1 else if (any(time_stepper == (/2, 3/))) then @@ -399,10 +400,6 @@ contains call s_open_ib_state_file() end if - if (cfl_dt) then - @:ALLOCATE(max_dt(0:m, 0:n, 0:p)) - end if - ! Allocating arrays to store the bc types @:ALLOCATE(bc_type(1:num_dims,1:2)) @@ -452,7 +449,7 @@ contains end subroutine s_initialize_time_steppers_module - !> Advance the solution one full step using a TVD Runge-Kutta time integrator + !> @brief Advances the solution one full step using a TVD Runge-Kutta time integrator. impure subroutine s_tvd_rk(t_step, time_avg, nstage) #ifdef _CRAYFTN @@ -497,7 +494,7 @@ contains end if end if - if (bubbles_lagrange .and. .not. adap_dt) call s_update_lagrange_tdv_rk(stage=s) + if (bubbles_lagrange .and. .not. adap_dt) call s_update_lagrange_tdv_rk(q_prim_vf, bc_type, stage=s) $:GPU_PARALLEL_LOOP(collapse=4) do i = 1, sys_size do l = 0, p @@ -596,34 +593,34 @@ contains end subroutine s_tvd_rk !> Bubble source part in Strang operator splitting scheme + !! @param stage Current time-stage impure subroutine s_adaptive_dt_bubble(stage) integer, intent(in) :: stage type(vector_field) :: gm_alpha_qp - call s_convert_conservative_to_primitive_variables(q_cons_ts(1)%vf, q_T_sf, q_prim_vf, idwint) + call s_convert_conservative_to_primitive_variables(q_cons_ts(1)%vf, q_T_sf, q_prim_vf, idwbuff) if (bubbles_euler) then call s_compute_bubble_EE_source(q_cons_ts(1)%vf, q_prim_vf, rhs_vf, divu) call s_comp_alpha_from_n(q_cons_ts(1)%vf) else if (bubbles_lagrange) then call s_populate_variables_buffers(bc_type, q_prim_vf, pb_ts(1)%sf, mv_ts(1)%sf) - call s_compute_bubble_EL_dynamics(q_prim_vf, stage) - call s_transfer_data_to_tmp() - call s_smear_voidfraction() + call s_compute_bubble_EL_dynamics(q_prim_vf, bc_type, stage) + if (stage == 3) then if (lag_params%write_bubbles_stats) call s_calculate_lag_bubble_stats() if (lag_params%write_bubbles) then $:GPU_UPDATE(host='[gas_p, gas_mv, intfc_rad, intfc_vel]') - call s_write_lag_particles(mytime) + call s_write_lag_bubble_evol(mytime) end if - call s_write_void_evol(mytime) + if (lag_params%write_void_evol) call s_write_void_evol(mytime) end if end if end subroutine s_adaptive_dt_bubble - !> Compute the global time step size from CFL stability constraints across all cells + !> @brief Computes the global time step size from CFL stability constraints across all cells. impure subroutine s_compute_dt() real(wp) :: rho !< Cell-avg. density @@ -644,6 +641,7 @@ contains real(wp) :: H !< Cell-avg. enthalpy real(wp), dimension(2) :: Re !< Cell-avg. Reynolds numbers type(vector_field) :: gm_alpha_qp + real(wp) :: max_dt real(wp) :: dt_local integer :: j, k, l !< Generic loop iterators @@ -651,7 +649,9 @@ contains call s_convert_conservative_to_primitive_variables(q_cons_ts(1)%vf, q_T_sf, q_prim_vf, idwint) end if - $:GPU_PARALLEL_LOOP(collapse=3, private='[vel, alpha, Re, rho, vel_sum, pres, gamma, pi_inf, c, H, qv]') + dt_local = huge(1.0_wp) + $:GPU_PARALLEL_LOOP(collapse=3, private='[vel, alpha, Re, rho, vel_sum, pres, gamma, pi_inf, c, H, qv]', & + & reduction='[[dt_local]]', reductionOp='[min]') do l = 0, p do k = 0, n do j = 0, m @@ -665,15 +665,13 @@ contains call s_compute_speed_of_sound(pres, rho, gamma, pi_inf, H, alpha, vel_sum, 0._wp, c, qv) call s_compute_dt_from_cfl(vel, c, max_dt, rho, Re, j, k, l) + + dt_local = min(dt_local, max_dt) end do end do end do $:END_GPU_PARALLEL_LOOP() - #:call GPU_PARALLEL(copyout='[dt_local]', copyin='[max_dt]') - dt_local = minval(max_dt) - #:endcall GPU_PARALLEL - if (num_procs == 1) then dt = dt_local else @@ -684,7 +682,10 @@ contains end subroutine s_compute_dt - !> Apply the body forces source term at each Runge-Kutta stage + !> This subroutine applies the body forces source term at each Runge-Kutta stage + !! @param q_cons_vf Conservative variables + !! @param q_prim_vf_in Primitive variables + !! @param rhs_vf_in Right-hand side variables subroutine s_apply_bodyforces(q_cons_vf, q_prim_vf_in, rhs_vf_in, ldt) type(scalar_field), dimension(1:sys_size), intent(inout) :: q_cons_vf @@ -712,7 +713,7 @@ contains end subroutine s_apply_bodyforces - !> Update immersed boundary positions and velocities at the current Runge-Kutta stage + !> @brief Updates immersed boundary positions and velocities at the current Runge-Kutta stage. subroutine s_propagate_immersed_boundaries(s) integer, intent(in) :: s @@ -754,8 +755,9 @@ contains ! update the angular velocity with the torque value patch_ib(i)%angular_vel = (patch_ib(i)%angular_vel*patch_ib(i)%moment) + (rk_coef(s, & & 3)*dt*patch_ib(i)%torque/rk_coef(s, 4)) ! add the torque to the angular momentum - call s_compute_moment_of_inertia(i, patch_ib(i)%angular_vel) - ! update the moment of inertia to be based on the direction of the angular momentum + call s_compute_moment_of_inertia(i, & + & patch_ib(i)%angular_vel) & + & ! update the moment of inertia to be based on the direction of the angular momentum patch_ib(i)%angular_vel = patch_ib(i)%angular_vel/patch_ib(i) & & %moment ! convert back to angular velocity with the new moment of inertia end if @@ -780,7 +782,8 @@ contains end subroutine s_propagate_immersed_boundaries - !> Save the temporary q_prim_vf vector into q_prim_ts for use in p_main + !> This subroutine saves the temporary q_prim_vf vector into the q_prim_ts vector that is then used in p_main + !! @param t_step current time-step subroutine s_time_step_cycling(t_step) integer, intent(in) :: t_step @@ -862,6 +865,7 @@ contains use hipfort_check #endif integer :: i, j !< Generic loop iterators + ! Deallocating the cell-average conservative variables #if defined(__NVCOMPILER_GPU_UNIFIED_MEM) do j = 1, sys_size diff --git a/src/simulation/m_viscous.fpp b/src/simulation/m_viscous.fpp index 5f7022714f..1607739158 100644 --- a/src/simulation/m_viscous.fpp +++ b/src/simulation/m_viscous.fpp @@ -26,7 +26,7 @@ module m_viscous contains - !> Initialize the viscous module + !> @brief Allocates and populates the viscous Reynolds number arrays and transfers data to the GPU. impure subroutine s_initialize_viscous_module integer :: i, j !< generic loop iterators @@ -43,7 +43,11 @@ contains end subroutine s_initialize_viscous_module - !> Compute viscous stress tensor near cylindrical axis, avoiding 1/r singularity at y_cb(-1)=0 + !> The purpose of this subroutine is to compute the viscous + ! stress tensor for the cells directly next to the axis in cylindrical coordinates. This is necessary to avoid the 1/r + ! singularity that arises at the cell boundary coinciding with the axis, i.e., y_cb(-1) = 0. @param q_prim_vf Cell-average + ! primitive variables @param grad_x_vf Cell-average primitive variable derivatives, x-dir @param grad_y_vf Cell-average + ! primitive variable derivatives, y-dir @param grad_z_vf Cell-average primitive variable derivatives, z-dir subroutine s_compute_viscous_stress_cylindrical_boundary(q_prim_vf, grad_x_vf, grad_y_vf, grad_z_vf, tau_Re_vf, ix, iy, iz) type(scalar_field), dimension(sys_size), intent(in) :: q_prim_vf @@ -162,12 +166,10 @@ contains end if end if - ! Shear stress near cylindrical axis: includes v/r hoop term tau_Re(2, 1) = (grad_y_vf(1)%sf(j, k, l) + grad_x_vf(2)%sf(j, k, l))/Re_visc(1) tau_Re(2, 2) = (4._wp*grad_y_vf(2)%sf(j, k, l) - 2._wp*grad_x_vf(1)%sf(j, k, & & l) - 2._wp*q_prim_vf(momxb + 1)%sf(j, k, l)/y_cc(k))/(3._wp*Re_visc(1)) - ! Viscous flux contribution to momentum and energy equations $:GPU_LOOP(parallelism='[seq]') do i = 1, 2 tau_Re_vf(contxe + i)%sf(j, k, l) = tau_Re_vf(contxe + i)%sf(j, k, l) - tau_Re(2, i) @@ -476,10 +478,30 @@ contains end subroutine s_compute_viscous_stress_cylindrical_boundary !> Computes viscous terms + !! @param qL_prim_rsx_vf Left reconstructed primitive variables in x + !! @param qL_prim_rsy_vf Left reconstructed primitive variables in y + !! @param qL_prim_rsz_vf Left reconstructed primitive variables in z + !! @param dqL_prim_dx_n Left primitive x-derivative + !! @param dqL_prim_dy_n Left primitive y-derivative + !! @param dqL_prim_dz_n Left primitive z-derivative + !! @param qL_prim Left cell-boundary primitive variables + !! @param qR_prim_rsx_vf Right reconstructed primitive variables in x + !! @param qR_prim_rsy_vf Right reconstructed primitive variables in y + !! @param qR_prim_rsz_vf Right reconstructed primitive variables in z + !! @param dqR_prim_dx_n Right primitive x-derivative + !! @param dqR_prim_dy_n Right primitive y-derivative + !! @param dqR_prim_dz_n Right primitive z-derivative + !! @param qR_prim Right cell-boundary primitive variables + !! @param q_prim_qp Cell-averaged primitive variables + !! @param dq_prim_dx_qp Cell-averaged primitive x-derivative + !! @param dq_prim_dy_qp Cell-averaged primitive y-derivative + !! @param dq_prim_dz_qp Cell-averaged primitive z-derivative + !! @param ix Index bounds in the x-direction + !! @param iy Index bounds in the y-direction + !! @param iz Index bounds in the z-direction subroutine s_get_viscous(qL_prim_rsx_vf, qL_prim_rsy_vf, qL_prim_rsz_vf, dqL_prim_dx_n, dqL_prim_dy_n, dqL_prim_dz_n, & - - & qL_prim, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_n, dqR_prim_dy_n, dqR_prim_dz_n, qR_prim, & - & q_prim_qp, dq_prim_dx_qp, dq_prim_dy_qp, dq_prim_dz_qp, ix, iy, iz) + & qL_prim, qR_prim_rsx_vf, qR_prim_rsy_vf, qR_prim_rsz_vf, dqR_prim_dx_n, dqR_prim_dy_n, & + & dqR_prim_dz_n, qR_prim, q_prim_qp, dq_prim_dx_qp, dq_prim_dy_qp, dq_prim_dz_qp, ix, iy, iz) real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: qL_prim_rsx_vf, qR_prim_rsx_vf, & & qL_prim_rsy_vf, qR_prim_rsy_vf, qL_prim_rsz_vf, qR_prim_rsz_vf @@ -504,7 +526,7 @@ contains end do if (weno_Re_flux) then - ! Compute velocity gradients via divergence theorem on cell-boundary reconstructed values + ! Compute velocity gradient at cell centers using scalar divergence theorem do i = 1, num_dims if (i == 1) then call s_apply_scalar_divergence_theorem(qL_prim(i)%vf(iv%beg:iv%end), qR_prim(i)%vf(iv%beg:iv%end), & @@ -845,9 +867,8 @@ contains end subroutine s_get_viscous - !> Reconstruct left and right cell-boundary values of viscous primitive variables + !> @brief Reconstructs left and right cell-boundary values of viscous primitive variables using WENO or MUSCL. subroutine s_reconstruct_cell_boundary_values_visc(v_vf, vL_x, vL_y, vL_z, vR_x, vR_y, vR_z, norm_dir, vL_prim_vf, & - & vR_prim_vf, ix, iy, iz) type(scalar_field), dimension(iv%beg:iv%end), intent(in) :: v_vf @@ -942,9 +963,8 @@ contains end subroutine s_reconstruct_cell_boundary_values_visc - !> Reconstruct left and right cell-boundary values of viscous primitive variable derivatives + !> @brief Reconstructs left and right cell-boundary values of viscous primitive variable derivatives using WENO or MUSCL. subroutine s_reconstruct_cell_boundary_values_visc_deriv(v_vf, vL_x, vL_y, vL_z, vR_x, vR_y, vR_z, norm_dir, vL_prim_vf, & - & vR_prim_vf, ix, iy, iz) type(scalar_field), dimension(iv%beg:iv%end), intent(in) :: v_vf real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,iv%beg:), intent(inout) :: vL_x, vL_y, vL_z, vR_x, & @@ -1038,7 +1058,20 @@ contains end subroutine s_reconstruct_cell_boundary_values_visc_deriv - !> Compute cell-average spatial derivatives via the scalar divergence theorem + !> The purpose of this subroutine is to employ the inputted left and right cell-boundary integral-averaged variables to compute + !! the relevant cell-average first-order spatial derivatives in the x-, y- or z-direction by means of the scalar divergence + !! theorem. + !! @param vL_vf Left cell-boundary integral averages + !! @param vR_vf Right cell-boundary integral averages + !! @param dv_ds_vf Cell-average first-order spatial derivatives + !! @param norm_dir Splitting coordinate direction + !! @param ix Index bounds in the x-direction + !! @param iy Index bounds in the y-direction + !! @param iz Index bounds in the z-direction + !! @param iv_in Variable index bounds + !! @param dL Cell width array + !! @param dim Dimension size + !! @param buff_size_in Buffer layer size subroutine s_apply_scalar_divergence_theorem(vL_vf, vR_vf, dv_ds_vf, norm_dir, ix, iy, iz, iv_in, dL, dim, buff_size_in) ! arrays of cell widths @@ -1126,6 +1159,10 @@ contains end subroutine s_apply_scalar_divergence_theorem !> Computes the scalar gradient fields via finite differences + !! @param var Variable to compute derivative of + !! @param grad_x First coordinate direction component of the derivative + !! @param grad_y Second coordinate direction component of the derivative + !! @param grad_z Third coordinate direction component of the derivative subroutine s_compute_fd_gradient(var, grad_x, grad_y, grad_z) type(scalar_field), intent(in) :: var @@ -1288,7 +1325,7 @@ contains end subroutine s_compute_fd_gradient - !> Compute the viscous stress tensor at a single grid cell using finite-difference velocity gradients + !> @brief Computes the viscous stress tensor at a single grid cell using finite-difference velocity gradients. subroutine s_compute_viscous_stress_tensor(viscous_stress_tensor, q_prim_vf, dynamic_viscosity, i, j, k) $:GPU_ROUTINE(parallelism='[seq]') @@ -1332,14 +1369,14 @@ contains divergence = divergence + velocity_gradient_tensor(l, l) end do - ! Viscous stress tensor: tau_ij = mu * (du_i/dx_j + du_j/dx_i) - 2/3 * mu * div(u) * delta_ij + ! set up the shear stress tensor do l = 1, num_dims do q = 1, num_dims viscous_stress_tensor(l, q) = dynamic_viscosity*(velocity_gradient_tensor(l, q) + velocity_gradient_tensor(q, l)) end do end do - ! Subtract isotropic bulk viscosity term (Stokes hypothesis) + ! populate the viscous_stress_tensor do l = 1, num_dims viscous_stress_tensor(l, l) = viscous_stress_tensor(l, l) - 2._wp*divergence*dynamic_viscosity/3._wp end do @@ -1353,7 +1390,7 @@ contains end subroutine s_compute_viscous_stress_tensor - !> Finalize the viscous module + !> @brief Deallocates the viscous Reynolds number arrays. impure subroutine s_finalize_viscous_module() @:DEALLOCATE(Res_viscous) diff --git a/src/simulation/m_weno.fpp b/src/simulation/m_weno.fpp index c2b1cc5ac7..6d7c87546f 100644 --- a/src/simulation/m_weno.fpp +++ b/src/simulation/m_weno.fpp @@ -10,10 +10,12 @@ module m_weno use m_derived_types use m_global_parameters use m_variables_conversion + ! $:USE_GPU_MODULE() use m_mpi_proxy use m_muscl + private; public :: s_initialize_weno_module, s_initialize_weno, s_finalize_weno_module, s_weno !> @name The cell-average variables that will be WENO-reconstructed. Formerly, they are stored in v_vf. However, they are @@ -82,7 +84,8 @@ module m_weno contains - !> Initialize the WENO module + !> The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other + !! procedures that are necessary to setup the module. impure subroutine s_initialize_weno_module if (weno_order == 1) return @@ -169,11 +172,12 @@ contains end subroutine s_initialize_weno_module - !> Compute WENO polynomial coefficients, ideal weights, and smoothness indicators for a given direction + !> The purpose of this subroutine is to compute the grid dependent coefficients of the WENO polynomials, ideal weights and + !! smoothness indicators, provided the order, the coordinate direction and the location of the WENO reconstruction. + !! @param weno_dir Coordinate direction of the WENO reconstruction + !! @param is Index bounds in the s-direction subroutine s_compute_weno_coefficients(weno_dir, is) - ! Compute WENO coefficients for a given coordinate direction. Shu (1997) - integer, intent(in) :: weno_dir type(int_bounds_info), intent(in) :: is integer :: s @@ -183,7 +187,8 @@ contains real(wp) :: w(1:8) !< Intermediate var for ideal weights: s_cb across overall stencil real(wp) :: y(1:4) !< Intermediate var for poly & beta: diff(s_cb) across sub-stencil - ! Determine cell count, boundary locations, and BCs for selected WENO direction + ! Determining the number of cells, the cell-boundary locations and the boundary conditions in the coordinate direction + ! selected for the WENO reconstruction if (weno_dir == 1) then s = m; s_cb => x_cb; bc_s = bc_x @@ -198,21 +203,18 @@ contains if (weno_dir == ${WENO_DIR}$) then if (weno_order == 3) then do i = is%beg - 1 + weno_polyn, is%end - 1 - weno_polyn - ! Polynomial reconstruction coefficients poly_coef_cbR_${XYZ}$ (i + 1, 0, 0) = (s_cb(i) - s_cb(i + 1))/(s_cb(i) - s_cb(i + 2)) poly_coef_cbR_${XYZ}$ (i + 1, 1, 0) = (s_cb(i) - s_cb(i + 1))/(s_cb(i - 1) - s_cb(i + 1)) poly_coef_cbL_${XYZ}$ (i + 1, 0, 0) = -poly_coef_cbR_${XYZ}$ (i + 1, 0, 0) poly_coef_cbL_${XYZ}$ (i + 1, 1, 0) = -poly_coef_cbR_${XYZ}$ (i + 1, 1, 0) - ! Ideal (linear) weights d_cbR_${XYZ}$ (0, i + 1) = (s_cb(i - 1) - s_cb(i + 1))/(s_cb(i - 1) - s_cb(i + 2)) d_cbL_${XYZ}$ (0, i + 1) = (s_cb(i - 1) - s_cb(i))/(s_cb(i - 1) - s_cb(i + 2)) d_cbR_${XYZ}$ (1, i + 1) = 1._wp - d_cbR_${XYZ}$ (0, i + 1) d_cbL_${XYZ}$ (1, i + 1) = 1._wp - d_cbL_${XYZ}$ (0, i + 1) - ! Smoothness indicator coefficients beta_coef_${XYZ}$ (i + 1, 0, 0) = 4._wp*(s_cb(i) - s_cb(i + 1))**2._wp/(s_cb(i) - s_cb(i + 2))**2._wp beta_coef_${XYZ}$ (i + 1, 1, 0) = 4._wp*(s_cb(i) - s_cb(i + 1))**2._wp/(s_cb(i - 1) - s_cb(i + 1))**2._wp end do @@ -235,7 +237,6 @@ contains ! Computing WENO5 Coefficients else if (weno_order == 5) then do i = is%beg - 1 + weno_polyn, is%end - 1 - weno_polyn - ! Polynomial reconstruction coefficients poly_coef_cbR_${XYZ}$ (i + 1, 0, & & 0) = ((s_cb(i) - s_cb(i + 1))*(s_cb(i + 1) - s_cb(i + 2)))/((s_cb(i) - s_cb(i & & + 3))*(s_cb(i + 3) - s_cb(i + 1))) @@ -274,7 +275,6 @@ contains & 0) = ((s_cb(i - 2) - s_cb(i)) + (s_cb(i - 1) - s_cb(i + 1)))/((s_cb(i - 2) & & - s_cb(i + 1))*(s_cb(i + 1) - s_cb(i - 1)))*((s_cb(i) - s_cb(i + 1))) - ! Ideal (linear) weights d_cbR_${XYZ}$ (0, & & i + 1) = ((s_cb(i - 2) - s_cb(i + 1))*(s_cb(i + 1) - s_cb(i - 1)))/((s_cb(i - 2) & & - s_cb(i + 3))*(s_cb(i + 3) - s_cb(i - 1))) @@ -291,7 +291,6 @@ contains d_cbR_${XYZ}$ (1, i + 1) = 1._wp - d_cbR_${XYZ}$ (0, i + 1) - d_cbR_${XYZ}$ (2, i + 1) d_cbL_${XYZ}$ (1, i + 1) = 1._wp - d_cbL_${XYZ}$ (0, i + 1) - d_cbL_${XYZ}$ (2, i + 1) - ! Smoothness indicator coefficients beta_coef_${XYZ}$ (i + 1, 0, & & 0) = 4._wp*(s_cb(i) - s_cb(i + 1))**2._wp*(10._wp*(s_cb(i + 1) - s_cb(i))**2._wp & & + (s_cb(i + 1) - s_cb(i))*(s_cb(i + 2) - s_cb(i + 1)) + (s_cb(i + 2) - s_cb(i + 1)) & @@ -856,10 +855,9 @@ contains end subroutine s_compute_weno_coefficients - !> Perform WENO reconstruction of left and right cell-boundary values from cell-averaged variables + !> @brief Performs WENO reconstruction of left and right cell-boundary values from cell-averaged variables. subroutine s_weno(v_vf, vL_rs_vf_x, vL_rs_vf_y, vL_rs_vf_z, vR_rs_vf_x, vR_rs_vf_y, vR_rs_vf_z, weno_dir, is1_weno_d, & - - & is2_weno_d, is3_weno_d) + & is2_weno_d, is3_weno_d) type(scalar_field), dimension(1:), intent(in) :: v_vf real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(inout) :: vL_rs_vf_x, vL_rs_vf_y, vL_rs_vf_z @@ -1075,8 +1073,9 @@ contains tau = abs(beta(2) - beta(0)) ! Equation 25 $:GPU_LOOP(parallelism='[seq]') do q = 0, weno_num_stencils - alpha(q) = d_cbL_${XYZ}$ (q, j)*(1._wp + (tau/beta(q))) - ! Equation 28 (note: weno_eps was already added to beta) + alpha(q) = d_cbL_${XYZ}$ (q, & + & j)*(1._wp + (tau/beta(q))) & + & ! Equation 28 (note: weno_eps was already added to beta) end do else if (teno) then ! Fu, et al. (2016) Fu''s code: https://dx.doi.org/10.13140/RG.2.2.36250.34247 @@ -1373,21 +1372,26 @@ contains #:endif end if - if (int_comp) then + if (int_comp .and. v_size >= advxe) then call s_interface_compression(vL_rs_vf_x, vL_rs_vf_y, vL_rs_vf_z, vR_rs_vf_x, vR_rs_vf_y, vR_rs_vf_z, weno_dir, & & is1_weno_d, is2_weno_d, is3_weno_d) end if end subroutine s_weno - !> Set up the WENO reconstruction for a given direction + !> The computation of parameters, the allocation of memory, the association of pointers and/or the execution of any other + !! procedures that are required for the setup of the WENO reconstruction. + !! @param v_vf Cell-averaged variables + !! @param weno_dir Coordinate direction of the WENO reconstruction subroutine s_initialize_weno(v_vf, weno_dir) type(scalar_field), dimension(:), intent(in) :: v_vf integer, intent(in) :: weno_dir integer :: j, k, l, q - ! Determine WENO-reconstructed variables and map coordinate directions + ! Determining the number of cell-average variables which will be WENO-reconstructed and mapping their indical bounds in the + ! x-, y- and z-directions to those in the s1-, s2- and s3-directions as to reshape the inputted data in the coordinate + ! direction of the WENO reconstruction v_size = ubound(v_vf, 1) $:GPU_UPDATE(device='[v_size]') @@ -1442,7 +1446,12 @@ contains end subroutine s_initialize_weno - !> Enforce monotonicity-preserving bounds on the WENO reconstruction + !> The goal of this subroutine is to ensure that the WENO reconstruction is monotonic. The latter is achieved by enforcing + !! monotonicity preserving bounds of Suresh and Huynh (1997). The resulting MPWENO reconstruction, see Balsara and Shu (2000), + !! ensures that the reconstructed values do not reside outside the range spanned by WENO stencil. + !! @param v_rs_ws Reshaped cell-averaged variables + !! @param vL_rs_vf Left WENO reconstructed cell-boundary values + !! @param vR_rs_vf Right WENO reconstructed cell-boundary values subroutine s_preserve_monotonicity(v_rs_ws, vL_rs_vf, vR_rs_vf) real(wp), dimension(idwbuff(1)%beg:,idwbuff(2)%beg:,idwbuff(3)%beg:,1:), intent(in) :: v_rs_ws @@ -1450,6 +1459,7 @@ contains integer :: i, j, k, l real(wp), dimension(-1:1) :: d !< Curvature measures at the zone centers real(wp) :: d_MD, d_LC !< Median (md) curvature and large curvature (LC) measures + ! The left and right upper bounds (UL), medians, large curvatures, minima, and maxima of the WENO-reconstructed values of ! the cell- average variables. real(wp) :: vL_UL, vR_UL @@ -1457,8 +1467,13 @@ contains real(wp) :: vL_LC, vR_LC real(wp) :: vL_min, vR_min real(wp) :: vL_max, vR_max - ! Monotonicity-preserving bounds, Suresh & Huynh JCP (1997) - real(wp), parameter :: alpha = 2._wp !< Max CFL stability parameter (CFL < 1/(1+alpha)) + !> Max CFL stability parameter (CFL < 1/(1+alpha)) Determines the maximum Courant-Friedrichs-Lewy (CFL) number that may be + !! utilized with the scheme. In theory, for stability, a CFL number less than 1/(1+alpha) is necessary. The default value + !! for alpha is 2. + real(wp), parameter :: alpha = 2._wp + + !> Determines the amount of freedom available from utilizing a large value for the local curvature. The default value for + !! beta is 4/3. real(wp), parameter :: beta = 4._wp/3._wp !< Local curvature freedom parameter real(wp), parameter :: alpha_mp = 2._wp real(wp), parameter :: beta_mp = 4._wp/3._wp @@ -1468,12 +1483,10 @@ contains do k = is2_weno%beg, is2_weno%end do j = is1_weno%beg, is1_weno%end do i = 1, v_size - ! Second-order undivided differences for curvature estimation d(-1) = v_rs_ws(j, k, l, i) + v_rs_ws(j - 2, k, l, i) - v_rs_ws(j - 1, k, l, i)*2._wp d(0) = v_rs_ws(j + 1, k, l, i) + v_rs_ws(j - 1, k, l, i) - v_rs_ws(j, k, l, i)*2._wp d(1) = v_rs_ws(j + 2, k, l, i) + v_rs_ws(j, k, l, i) - v_rs_ws(j + 1, k, l, i)*2._wp - ! Median function for oscillation detection d_MD = (sign(1._wp, 4._wp*d(-1) - d(0)) + sign(1._wp, 4._wp*d(0) - d(-1)))*abs((sign(1._wp, & & 4._wp*d(-1) - d(0)) + sign(1._wp, d(-1)))*(sign(1._wp, 4._wp*d(-1) - d(0)) + sign(1._wp, & & d(0))))*min(abs(4._wp*d(-1) - d(0)), abs(d(-1)), abs(4._wp*d(0) - d(-1)), abs(d(0)))/8._wp @@ -1543,6 +1556,7 @@ contains ! Deallocating the WENO-stencil of the WENO-reconstructed variables + ! deallocate(vL_rs_vf_x, vR_rs_vf_x) @:DEALLOCATE(v_rs_ws_x) ! Deallocating WENO coefficients in x-direction @@ -1553,6 +1567,7 @@ contains ! Deallocating WENO coefficients in y-direction if (n == 0) return + ! deallocate(vL_rs_vf_y, vR_rs_vf_y) @:DEALLOCATE(v_rs_ws_y) @:DEALLOCATE(poly_coef_cbL_y, poly_coef_cbR_y) @@ -1562,6 +1577,7 @@ contains ! Deallocating WENO coefficients in z-direction if (p == 0) return + ! deallocate(vL_rs_vf_z, vR_rs_vf_z) @:DEALLOCATE(v_rs_ws_z) @:DEALLOCATE(poly_coef_cbL_z, poly_coef_cbR_z) diff --git a/tests/016C1B8B/golden-metadata.txt b/tests/016C1B8B/golden-metadata.txt index 4f3db90efb..c44c549346 100644 --- a/tests/016C1B8B/golden-metadata.txt +++ b/tests/016C1B8B/golden-metadata.txt @@ -1,16 +1,84 @@ -This file was created on 2026-02-25 22:34:58.244740. +This file was created on 2026-03-15 15:32:55.552143. mfc.sh: - Invocation: test --generate --only 016C1B8B -j 8 --no-build -- -c phoenix + Invocation: test --generate --only CE7B0BC7 016C1B8B -j 4 Lock: mpi=Yes & gpu=No & debug=No & gcov=No & unified=No & single=No & mixed=No & fastmath=No - Git: 0ce91cc551508e01d2fc4127caeb9ac010cfa258 on fix/time-stepping-order (dirty) + Git: 37668dcbdbf4d7402b2fc086a4b9767034ffb45a on moving-bubbles (dirty) + +pre_process: + + CMake Configuration: + + CMake v3.26.5 on atl1-1-02-002-28-2.pace.gatech.edu + + C : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc) + Fortran : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran) + + PRE_PROCESS : ON + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : OFF + + Fypp : /storage/scratch1/6/sbryngelson3/MFC-ruff/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : /usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc + CXX : /usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/g++ + FC : /usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +documentation: + + CMake Configuration: + + CMake v3.26.5 on atl1-1-02-002-23-1.pace.gatech.edu + + C : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc) + Fortran : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : ON + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : OFF + + Fypp : /storage/home/hcoda1/6/sbryngelson3/scratch/MFC-ruff/build/venv/bin/fypp + Doxygen : /storage/home/hcoda1/6/sbryngelson3/.local/bin/doxygen + + Build Type : Release + + Configuration Environment: + + CC : /usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc + CXX : /usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/g++ + FC : /usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran + OMPI_CC : + OMPI_CXX : + OMPI_FC : simulation: CMake Configuration: - CMake v3.26.5 on atl1-1-02-007-5-2.pace.gatech.edu + CMake v3.26.5 on atl1-1-02-002-28-2.pace.gatech.edu C : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc) Fortran : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran) @@ -26,7 +94,7 @@ simulation: OpenACC : OFF OpenMP : OFF - Fypp : /storage/home/hcoda1/6/sbryngelson3/scratch/MFC-prs/build/venv/bin/fypp + Fypp : /storage/scratch1/6/sbryngelson3/MFC-ruff/build/venv/bin/fypp Doxygen : Build Type : Release @@ -44,7 +112,7 @@ syscheck: CMake Configuration: - CMake v3.26.5 on atl1-1-02-007-5-2.pace.gatech.edu + CMake v3.26.5 on atl1-1-02-002-23-1.pace.gatech.edu C : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc) Fortran : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran) @@ -60,7 +128,7 @@ syscheck: OpenACC : OFF OpenMP : OFF - Fypp : /storage/home/hcoda1/6/sbryngelson3/scratch/MFC-prs/build/venv/bin/fypp + Fypp : /storage/home/hcoda1/6/sbryngelson3/scratch/MFC-ruff/build/venv/bin/fypp Doxygen : Build Type : Release @@ -74,18 +142,18 @@ syscheck: OMPI_CXX : OMPI_FC : -pre_process: +post_process: CMake Configuration: - CMake v3.26.5 on atl1-1-02-007-5-2.pace.gatech.edu + CMake v3.26.5 on atl1-1-02-002-28-2.pace.gatech.edu C : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc) Fortran : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran) - PRE_PROCESS : ON + PRE_PROCESS : OFF SIMULATION : OFF - POST_PROCESS : OFF + POST_PROCESS : ON SYSCHECK : OFF DOCUMENTATION : OFF ALL : OFF @@ -94,7 +162,7 @@ pre_process: OpenACC : OFF OpenMP : OFF - Fypp : /storage/home/hcoda1/6/sbryngelson3/scratch/MFC-prs/build/venv/bin/fypp + Fypp : /storage/scratch1/6/sbryngelson3/MFC-ruff/build/venv/bin/fypp Doxygen : Build Type : Release @@ -126,7 +194,7 @@ CPU: Core(s) per socket: 12 Socket(s): 2 Stepping: 7 - CPU(s) scaling MHz: 86% + CPU(s) scaling MHz: 93% CPU max MHz: 2700.0000 CPU min MHz: 1200.0000 BogoMIPS: 5400.00 diff --git a/tests/016C1B8B/golden.txt b/tests/016C1B8B/golden.txt index 29eca83b98..e44a2ae8c7 100644 --- a/tests/016C1B8B/golden.txt +++ b/tests/016C1B8B/golden.txt @@ -1,4 +1,4 @@ -D/beta.9.00.000050.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999999708435 0.9999999644801 0.99999984081087 0.99999973754149 0.99999984081087 0.9999999644801 0.99999999708435 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067933 0.99999680260076 0.99999806067933 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067933 0.99999130856774 0.99998567025075 0.99999130856774 0.99999806067933 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754149 0.99999680260076 0.99998567025075 0.99997637423761 0.99998567025075 0.99999680260076 0.99999973754149 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067933 0.99999130856774 0.99998567025075 0.99999130856774 0.99999806067933 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067933 0.99999680260076 0.99999806067933 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999999708435 0.9999999644801 0.99999984081087 0.99999973754149 0.99999984081087 0.9999999644801 0.99999999708435 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067933 0.99999680260076 0.99999806067933 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956727907 0.99999472837985 0.99997637423761 0.99996104770302 0.99997637423761 0.99999472837985 0.99999956727907 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067933 0.99997637423761 0.99989411667893 0.99982542791634 0.99989411667893 0.99997637423761 0.99999806067933 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680260076 0.99996104770302 0.99982542791634 0.9997121792924 0.99982542791634 0.99996104770302 0.99999680260076 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067933 0.99997637423761 0.99989411667893 0.99982542791634 0.99989411667893 0.99997637423761 0.99999806067933 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956727907 0.99999472837985 0.99997637423761 0.99996104770302 0.99997637423761 0.99999472837985 0.99999956727907 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067933 0.99999680260076 0.99999806067933 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067933 0.99999130856774 0.99998567025075 0.99999130856774 0.99999806067933 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067933 0.99997637423761 0.99989411667893 0.99982542791634 0.99989411667893 0.99997637423761 0.99999806067933 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130856774 0.99989411667893 0.99952546387724 0.99921762220069 0.99952546387724 0.99989411667893 0.99999130856774 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567025075 0.99982542791634 0.99921762220069 0.99871007708055 0.99921762220069 0.99982542791634 0.99998567025075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130856774 0.99989411667893 0.99952546387724 0.99921762220069 0.99952546387724 0.99989411667893 0.99999130856774 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067933 0.99997637423761 0.99989411667893 0.99982542791634 0.99989411667893 0.99997637423761 0.99999806067933 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067933 0.99999130856774 0.99998567025075 0.99999130856774 0.99999806067933 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754149 0.99999680260076 0.99998567025075 0.99997637423761 0.99998567025075 0.99999680260076 0.99999973754149 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680260076 0.99996104770302 0.99982542791634 0.9997121792924 0.99982542791634 0.99996104770302 0.99999680260076 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567025075 0.99982542791634 0.99921762220069 0.99871007708055 0.99921762220069 0.99982542791634 0.99998567025075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99997637423761 0.9997121792924 0.99871007708055 0.99787327664514 0.99871007708055 0.9997121792924 0.99997637423761 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567025075 0.99982542791634 0.99921762220069 0.99871007708055 0.99921762220069 0.99982542791634 0.99998567025075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680260076 0.99996104770302 0.99982542791634 0.9997121792924 0.99982542791634 0.99996104770302 0.99999680260076 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754149 0.99999680260076 0.99998567025075 0.99997637423761 0.99998567025075 0.99999680260076 0.99999973754149 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067933 0.99999130856774 0.99998567025075 0.99999130856774 0.99999806067933 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067933 0.99997637423761 0.99989411667893 0.99982542791634 0.99989411667893 0.99997637423761 0.99999806067933 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130856774 0.99989411667893 0.99952546387724 0.99921762220069 0.99952546387724 0.99989411667893 0.99999130856774 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567025075 0.99982542791634 0.99921762220069 0.99871007708055 0.99921762220069 0.99982542791634 0.99998567025075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130856774 0.99989411667893 0.99952546387724 0.99921762220069 0.99952546387724 0.99989411667893 0.99999130856774 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067933 0.99997637423761 0.99989411667893 0.99982542791634 0.99989411667893 0.99997637423761 0.99999806067933 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067933 0.99999130856774 0.99998567025075 0.99999130856774 0.99999806067933 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067933 0.99999680260076 0.99999806067933 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956727907 0.99999472837985 0.99997637423761 0.99996104770302 0.99997637423761 0.99999472837985 0.99999956727907 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067933 0.99997637423761 0.99989411667893 0.99982542791634 0.99989411667893 0.99997637423761 0.99999806067933 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680260076 0.99996104770302 0.99982542791634 0.9997121792924 0.99982542791634 0.99996104770302 0.99999680260076 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067933 0.99997637423761 0.99989411667893 0.99982542791634 0.99989411667893 0.99997637423761 0.99999806067933 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956727907 0.99999472837985 0.99997637423761 0.99996104770302 0.99997637423761 0.99999472837985 0.99999956727907 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067933 0.99999680260076 0.99999806067933 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999999708435 0.9999999644801 0.99999984081087 0.99999973754149 0.99999984081087 0.9999999644801 0.99999999708435 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067933 0.99999680260076 0.99999806067933 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067933 0.99999130856774 0.99998567025075 0.99999130856774 0.99999806067933 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754149 0.99999680260076 0.99998567025075 0.99997637423761 0.99998567025075 0.99999680260076 0.99999973754149 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067933 0.99999130856774 0.99998567025075 0.99999130856774 0.99999806067933 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067933 0.99999680260076 0.99999806067933 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999999708435 0.9999999644801 0.99999984081087 0.99999973754149 0.99999984081087 0.9999999644801 0.99999999708435 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 +D/beta.9.00.000050.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999970844 0.99999996448075 0.99999984081375 0.99999973754625 0.99999984081375 0.99999996448075 0.9999999970844 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728691 0.9999980607145 0.99999680265874 0.9999980607145 0.99999956728691 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872535 0.99998567051061 0.99999130872535 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754625 0.99999680265874 0.99998567051061 0.99997637466605 0.99998567051061 0.99999680265874 0.99999973754625 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872535 0.99998567051061 0.99999130872535 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728691 0.9999980607145 0.99999680265874 0.9999980607145 0.99999956728691 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999970844 0.99999996448075 0.99999984081375 0.99999973754625 0.99999984081375 0.99999996448075 0.9999999970844 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728691 0.9999980607145 0.99999680265874 0.9999980607145 0.99999956728691 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956728691 0.99999472847545 0.99997637466605 0.99996104840939 0.99997637466605 0.99999472847545 0.99999956728691 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466605 0.99989411859905 0.99982543108208 0.99989411859905 0.99997637466605 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680265874 0.99996104840939 0.99982543108208 0.99971218451182 0.99982543108208 0.99996104840939 0.99999680265874 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466605 0.99989411859905 0.99982543108208 0.99989411859905 0.99997637466605 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956728691 0.99999472847545 0.99997637466605 0.99996104840939 0.99997637466605 0.99999472847545 0.99999956728691 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728691 0.9999980607145 0.99999680265874 0.9999980607145 0.99999956728691 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872535 0.99998567051061 0.99999130872535 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466605 0.99989411859905 0.99982543108208 0.99989411859905 0.99997637466605 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130872535 0.99989411859905 0.9995254724826 0.99921763638853 0.9995254724826 0.99989411859905 0.99999130872535 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567051061 0.99982543108208 0.99921763638853 0.99871010047234 0.99921763638853 0.99982543108208 0.99998567051061 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130872535 0.99989411859905 0.9995254724826 0.99921763638853 0.9995254724826 0.99989411859905 0.99999130872535 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466605 0.99989411859905 0.99982543108208 0.99989411859905 0.99997637466605 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872535 0.99998567051061 0.99999130872535 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754625 0.99999680265874 0.99998567051061 0.99997637466605 0.99998567051061 0.99999680265874 0.99999973754625 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680265874 0.99996104840939 0.99982543108208 0.99971218451182 0.99982543108208 0.99996104840939 0.99999680265874 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567051061 0.99982543108208 0.99921763638853 0.99871010047234 0.99921763638853 0.99982543108208 0.99998567051061 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99997637466605 0.99971218451182 0.99871010047234 0.99787331521169 0.99871010047234 0.99971218451182 0.99997637466605 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567051061 0.99982543108208 0.99921763638853 0.99871010047234 0.99921763638853 0.99982543108208 0.99998567051061 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680265874 0.99996104840939 0.99982543108208 0.99971218451182 0.99982543108208 0.99996104840939 0.99999680265874 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754625 0.99999680265874 0.99998567051061 0.99997637466605 0.99998567051061 0.99999680265874 0.99999973754625 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872535 0.99998567051061 0.99999130872535 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466605 0.99989411859905 0.99982543108208 0.99989411859905 0.99997637466605 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130872535 0.99989411859905 0.9995254724826 0.99921763638853 0.9995254724826 0.99989411859905 0.99999130872535 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567051061 0.99982543108208 0.99921763638853 0.99871010047234 0.99921763638853 0.99982543108208 0.99998567051061 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130872535 0.99989411859905 0.9995254724826 0.99921763638853 0.9995254724826 0.99989411859905 0.99999130872535 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466605 0.99989411859905 0.99982543108208 0.99989411859905 0.99997637466605 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872535 0.99998567051061 0.99999130872535 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728691 0.9999980607145 0.99999680265874 0.9999980607145 0.99999956728691 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956728691 0.99999472847545 0.99997637466605 0.99996104840939 0.99997637466605 0.99999472847545 0.99999956728691 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466605 0.99989411859905 0.99982543108208 0.99989411859905 0.99997637466605 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680265874 0.99996104840939 0.99982543108208 0.99971218451182 0.99982543108208 0.99996104840939 0.99999680265874 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466605 0.99989411859905 0.99982543108208 0.99989411859905 0.99997637466605 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956728691 0.99999472847545 0.99997637466605 0.99996104840939 0.99997637466605 0.99999472847545 0.99999956728691 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728691 0.9999980607145 0.99999680265874 0.9999980607145 0.99999956728691 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999970844 0.99999996448075 0.99999984081375 0.99999973754625 0.99999984081375 0.99999996448075 0.9999999970844 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728691 0.9999980607145 0.99999680265874 0.9999980607145 0.99999956728691 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872535 0.99998567051061 0.99999130872535 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754625 0.99999680265874 0.99998567051061 0.99997637466605 0.99998567051061 0.99999680265874 0.99999973754625 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872535 0.99998567051061 0.99999130872535 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728691 0.9999980607145 0.99999680265874 0.9999980607145 0.99999956728691 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999970844 0.99999996448075 0.99999984081375 0.99999973754625 0.99999984081375 0.99999996448075 0.9999999970844 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 D/cons.1.00.000000.dat 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 D/cons.1.00.000050.dat 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032882 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372716 0.96000000372717 0.96000000372717 0.96000000372717 0.96000000372716 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634422 0.96000002634425 0.96000002634436 0.96000002634445 0.96000002634436 0.96000002634425 0.96000002634422 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528782 0.96000000528781 0.96000000528782 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790201 0.96000000790195 0.96000000790189 0.96000000790195 0.96000000790201 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059136 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.96000071824781 0.96000071824783 0.96000071824785 0.96000071824783 0.96000071824781 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896674 0.96000023896695 0.96000023896772 0.96000023896835 0.96000023896772 0.96000023896695 0.96000023896674 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485765 0.96000168486045 0.9600016848708 0.9600016848794 0.9600016848708 0.96000168486045 0.96000168485765 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977213 0.96000038977162 0.96000038976971 0.96000038976812 0.96000038976971 0.96000038977162 0.96000038977213 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.9600005869103 0.96000058690856 0.96000058690212 0.96000058689677 0.96000058690212 0.96000058690856 0.9600005869103 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194925 0.96000005194915 0.96000005194908 0.96000005194915 0.96000005194925 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110091 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210075 0.96000025210075 0.96000025210074 0.96000025210075 0.96000025210075 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888138 0.96000388888123 0.9600038888807 0.96000388888026 0.9600038888807 0.96000388888123 0.96000388888138 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.9600376242231 0.96003762422213 0.96003762421858 0.96003762421563 0.96003762421858 0.96003762422213 0.9600376242231 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938299 0.96024757937889 0.96024757936384 0.96024757935133 0.96024757936384 0.96024757937889 0.96024757938299 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152838 0.96002715152368 0.96002715147466 0.96002715129448 0.96002715114453 0.96002715129448 0.96002715147466 0.96002715152368 0.96002715152838 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249453 0.96003089248229 0.96003089235395 0.96003089188122 0.96003089148813 0.96003089188122 0.96003089235395 0.96003089248229 0.96003089249453 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.9600037503694 0.96000375036924 0.96000375036749 0.96000375036112 0.96000375035583 0.96000375036112 0.96000375036749 0.96000375036924 0.9600037503694 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693804 0.96000008693792 0.96000008693746 0.96000008693709 0.96000008693746 0.96000008693792 0.96000008693804 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244291 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513634 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.9600015365866 0.96000153658648 0.96000153658605 0.96000153658568 0.96000153658605 0.96000153658648 0.9600015365866 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964952 0.96001782964798 0.96001782963141 0.96001782956971 0.96001782951832 0.96001782956971 0.96001782963141 0.96001782964798 0.96001782964952 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338407 0.96013299336664 0.96013299317938 0.96013299248152 0.9601329919003 0.96013299248152 0.96013299317938 0.96013299336664 0.96013299338407 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731696 0.96063533724286 0.96063533644612 0.96063533347361 0.96063533099909 0.96063533347361 0.96063533644612 0.96063533724286 0.96063533731696 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351631 0.96190052351633 0.96190052351558 0.9619005233962 0.9619005221108 0.96190051731369 0.96190051332184 0.96190051731369 0.9619005221108 0.9619005233962 0.96190052351558 0.96190052351633 0.96190052351631 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.9637463179113 0.96374631785162 0.9637463172047 0.96374631478143 0.96374631276272 0.96374631478143 0.9637463172047 0.96374631785162 0.9637463179113 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957094 0.96026255955942 0.96026255943523 0.96026255897133 0.96026255858468 0.96026255897133 0.96026255943523 0.96026255955942 0.96026255957094 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586266 0.96000700586123 0.96000700584591 0.96000700578881 0.96000700574126 0.96000700578881 0.96000700584591 0.96000700586123 0.96000700586266 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245934 0.96000019245924 0.96000019245887 0.96000019245857 0.96000019245887 0.96000019245924 0.96000019245934 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.96000000270779 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403109 0.96000057403102 0.96000057403097 0.96000057403102 0.96000057403109 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.96000780246127 0.96000780245992 0.96000780245496 0.96000780245084 0.96000780245496 0.96000780245992 0.96000780246127 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884267 0.96006802882497 0.96006802863493 0.96006802792686 0.96006802733718 0.96006802792686 0.96006802863493 0.96006802882497 0.96006802884267 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379851 0.96038137379854 0.96038137379712 0.96038137359152 0.96038137137588 0.96038136311132 0.96038135623538 0.96038136311132 0.96038137137588 0.96038137359152 0.96038137379712 0.96038137379854 0.96038137379851 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643733 0.96137903643076 0.96137903552684 0.96137902576482 0.96137898935413 0.96137895906936 0.96137898935413 0.96137902576482 0.96137903552684 0.96137903643076 0.96137903643733 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680895 0.96321014680885 0.96321014679832 0.96321014529002 0.96321012899152 0.96321006817364 0.9632100175864 0.96321006817364 0.96321012899152 0.96321014529002 0.96321014679832 0.96321014680885 0.96321014680895 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360736 0.96472448360735 0.96472448360078 0.96472448266336 0.96472447252939 0.96472443470448 0.96472440324446 0.96472443470448 0.96472447252939 0.96472448266336 0.96472448360078 0.96472448360735 0.96472448360736 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319372 0.96430483319207 0.96430483296631 0.96430483053594 0.96430482147442 0.96430481393844 0.96430482147442 0.96430483053594 0.96430483296631 0.96430483319207 0.96430483319372 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432576 0.96019082431475 0.96019082419333 0.96019082373483 0.96019082335182 0.96019082373483 0.96019082419333 0.96019082431475 0.96019082432576 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467127 0.96000932467156 0.96000932467266 0.96000932467357 0.96000932467266 0.96000932467156 0.96000932467127 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529279 0.96000014529278 0.96000014529279 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.9600002022534 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281142 0.9600032528113 0.96000325281087 0.96000325281052 0.96000325281087 0.9600032528113 0.96000325281142 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088233 0.9600329808758 0.96003298085173 0.96003298083173 0.96003298085173 0.9600329808758 0.96003298088233 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301387 0.96021653293621 0.96021653210171 0.96021652898977 0.96021652639943 0.96021652898977 0.96021653210171 0.96021653293621 0.96021653301387 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.96091476576991 0.96091476576336 0.96091476486061 0.96091475511009 0.96091471874159 0.96091468849072 0.96091471874159 0.96091475511009 0.96091476486061 0.96091476576336 0.96091476576991 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243186 0.96249799243194 0.96249799243145 0.96249799240347 0.96249798832948 0.96249794431262 0.96249778003937 0.96249764334349 0.96249778003937 0.96249794431262 0.96249798832948 0.96249799240347 0.96249799243145 0.96249799243194 0.96249799243186 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.96433432204598 0.96433432204609 0.96433432204522 0.96433432200005 0.96433431519141 0.96433424156069 0.9643339665361 0.96433373757564 0.9643339665361 0.96433424156069 0.96433431519141 0.96433432200005 0.96433432204522 0.96433432204609 0.96433432204598 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179924 0.96481258179932 0.96481258179879 0.96481258177069 0.96481257753645 0.96481253174495 0.9648123607406 0.96481221843602 0.9648123607406 0.96481253174495 0.96481257753645 0.96481258177069 0.96481258179879 0.96481258179932 0.96481258179924 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759079908 0.96336758987471 0.96336757987429 0.96336754253673 0.96336751147799 0.96336754253673 0.96336757987429 0.96336758987471 0.96336759079908 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361266 0.96143584354588 0.96143584282501 0.96143584013045 0.9614358378864 0.96143584013045 0.96143584282501 0.96143584354588 0.96143584361266 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864197 0.96040089864318 0.96040089865577 0.96040089870198 0.9604008987403 0.96040089870198 0.96040089865577 0.96040089864318 0.96040089864197 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925368 0.96000697925236 0.96000697924749 0.96000697924345 0.96000697924749 0.96000697925236 0.96000697925368 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362104 0.96000011362101 0.96000011362098 0.96000011362101 0.96000011362104 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419277 0.96000003419276 0.96000003419274 0.96000003419276 0.96000003419277 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.96001498855937 0.96001498855903 0.96001498855777 0.96001498855672 0.96001498855777 0.96001498855903 0.96001498855937 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398764 0.96011618398599 0.96011618396883 0.96011618390582 0.96011618385351 0.96011618390582 0.96011618396883 0.96011618398599 0.96011618398764 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899635 0.96057389899636 0.96057389899562 0.96057389887514 0.96057389757742 0.96057389273422 0.96057388870364 0.96057389273422 0.96057389757742 0.96057389887514 0.96057389899562 0.96057389899636 0.96057389899635 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361122 0.96183629361124 0.96183629361116 0.96183629360059 0.96183629211335 0.96183627604931 0.96183621612527 0.96183616628099 0.96183621612527 0.96183627604931 0.96183629211335 0.96183629360059 0.96183629361116 0.96183629361124 0.96183629361122 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553677 0.96374953553688 0.96374953553603 0.96374953549077 0.9637495287244 0.96374945556744 0.96374918235336 0.96374895490264 0.96374918235336 0.96374945556744 0.9637495287244 0.96374953549077 0.96374953553603 0.96374953553688 0.96374953553677 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647846 0.96487828647859 0.96487828647723 0.9648782864029 0.96487827506076 0.9648781523473 0.96487769368186 0.96487731156637 0.96487769368186 0.9648781523473 0.96487827506076 0.9648782864029 0.96487828647723 0.96487828647859 0.96487828647846 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353407 0.96403753353418 0.96403753353333 0.96403753348892 0.96403752666429 0.96403745281019 0.96403717686123 0.96403694710762 0.96403717686123 0.96403745281019 0.96403752666429 0.96403753348892 0.96403753353333 0.96403753353418 0.96403753353407 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.9621307146299 0.96213071462992 0.96213071462984 0.96213071461969 0.96213071311423 0.96213069682395 0.96213063599922 0.96213058539482 0.96213063599922 0.96213069682395 0.96213071311423 0.96213071461969 0.96213071462984 0.96213071462992 0.9621307146299 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797523 0.96071011797456 0.96071011785818 0.96071011660284 0.96071011191419 0.96071010801161 0.96071011191419 0.96071011660284 0.96071011785818 0.96071011797456 0.96071011797523 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.96015084347909 0.96015084347783 0.96015084346476 0.96015084341687 0.96015084337711 0.96015084341687 0.96015084346476 0.96015084347783 0.96015084347909 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.96001962484607 0.96001962484575 0.9600196248446 0.96001962484365 0.9600196248446 0.96001962484575 0.96001962484607 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744423 0.96000036744422 0.96000036744423 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363187 0.96000001363183 0.9600000136318 0.96000001363183 0.96000001363187 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210588 0.96000111210575 0.96000111210433 0.96000111209908 0.96000111209473 0.96000111209908 0.96000111210433 0.96000111210575 0.96000111210588 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617125 0.96033224617226 0.96033224618278 0.96033224622142 0.96033224625347 0.96033224622142 0.96033224618278 0.96033224617226 0.96033224617125 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110787 0.96126932110788 0.96126932110752 0.96126932104009 0.96126932031355 0.96126931760025 0.961269315341 0.96126931760025 0.96126932031355 0.96126932104009 0.96126932110752 0.96126932110788 0.96126932110787 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909786 0.96305949909787 0.96305949909786 0.96305949909115 0.96305949816147 0.96305948812066 0.96305945066439 0.96305941951215 0.96305945066439 0.96305948812066 0.96305949816147 0.96305949909115 0.96305949909786 0.96305949909787 0.96305949909786 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.9646688349035 0.96466883490349 0.96466883490357 0.96466883490304 0.96466883487489 0.96466883066562 0.9646687851556 0.96466861522582 0.96466847382042 0.96466861522582 0.9646687851556 0.96466883066562 0.96466883487489 0.96466883490304 0.96466883490357 0.96466883490349 0.9646688349035 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864476 0.96456048864487 0.96456048864401 0.96456048859914 0.96456048174206 0.96456040755388 0.96456013037967 0.96455989961608 0.96456013037967 0.96456040755388 0.96456048174206 0.96456048859914 0.96456048864401 0.96456048864487 0.96456048864476 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353145 0.96281609353152 0.96281609353106 0.96281609350432 0.96281608939444 0.96281604490869 0.96281587872987 0.96281574041835 0.96281587872987 0.96281604490869 0.96281608939444 0.96281609350432 0.96281609353106 0.96281609353152 0.96281609353145 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786875 0.96111125786243 0.96111125695906 0.96111124718917 0.96111121072379 0.96111118038786 0.96111121072379 0.96111124718917 0.96111125695906 0.96111125786243 0.96111125786875 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.9602747107428 0.96027471066573 0.96027470983716 0.9602747067466 0.96027470417394 0.9602747067466 0.96027470983716 0.96027471066573 0.9602747107428 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.9600445927734 0.96004459277274 0.96004459276578 0.96004459274017 0.96004459271889 0.96004459274017 0.96004459276578 0.96004459277274 0.9600445927734 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233932 0.96000499233918 0.96000499233868 0.96000499233826 0.96000499233868 0.96000499233918 0.96000499233932 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117461 0.96000031117461 0.96000031117461 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.96000000196499 0.96000000196499 0.96000000196499 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611271 0.96000015611266 0.96000015611262 0.96000015611266 0.96000015611271 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480942 0.96001764480884 0.96001764480673 0.96001764480496 0.96001764480673 0.96001764480884 0.96001764480942 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164581 0.96006279163295 0.96006279149437 0.96006279097683 0.96006279054534 0.96006279097683 0.96006279149437 0.96006279163295 0.96006279164581 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035801 0.96400989035804 0.96400989035652 0.96400989013945 0.96400988779989 0.96400987907136 0.96400987181106 0.96400987907136 0.96400988779989 0.96400989013945 0.96400989035652 0.96400989035804 0.96400989035801 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976478 0.96485606976476 0.96485606975791 0.96485606879102 0.96485605834299 0.96485601935399 0.96485598692712 0.96485601935399 0.96485605834299 0.96485606879102 0.96485606975791 0.96485606976476 0.96485606976478 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793837 0.96351313793839 0.9635131379383 0.96351313792819 0.96351313641333 0.96351312001869 0.963513058795 0.96351300786241 0.963513058795 0.96351312001869 0.96351313641333 0.96351313792819 0.9635131379383 0.96351313793839 0.96351313793837 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558383 0.96163554558384 0.96163554558385 0.96163554557755 0.96163554466832 0.96163553483201 0.96163549811157 0.96163546756308 0.96163549811157 0.96163553483201 0.96163554466832 0.96163554557755 0.96163554558385 0.96163554558384 0.96163554558383 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292961 0.96047642292822 0.96047642272307 0.96047642051116 0.96047641225836 0.96047640539179 0.96047641225836 0.96047642051116 0.96047642272307 0.96047642292822 0.96047642292961 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136461 0.96008951362844 0.9600895134387 0.96008951273172 0.96008951214295 0.96008951273172 0.9600895134387 0.96008951362844 0.9600895136461 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432276 0.96001112432141 0.96001112431642 0.96001112431228 0.96001112431642 0.96001112432141 0.96001112432276 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493655 0.96000091493648 0.96000091493643 0.96000091493648 0.96000091493655 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380411 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333306 0.96000000333306 0.96000000333306 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143278 0.96000032143268 0.96000032143232 0.96000032143201 0.96000032143232 0.96000032143268 0.96000032143278 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149916 0.96000308149917 0.96000308149916 0.96000308149771 0.96000308148218 0.96000308142432 0.96000308137613 0.96000308142432 0.96000308148218 0.96000308149771 0.96000308149916 0.96000308149917 0.96000308149916 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993357 0.96017194992391 0.96017194981823 0.96017194942076 0.96017194908906 0.96017194942076 0.96017194981823 0.96017194992391 0.96017194993357 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244324 0.96391155239908 0.9639115519151 0.96391155009172 0.9639115485704 0.96391155009172 0.9639115519151 0.96391155239908 0.96391155244324 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853403 0.96224311853335 0.96224311841748 0.96224311716783 0.9622431125003 0.96224310861581 0.9622431125003 0.96224311716783 0.96224311841748 0.96224311853335 0.96224311853403 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.9607838066696 0.96078380659643 0.96078380580856 0.96078380286718 0.9607838004182 0.96078380286718 0.96078380580856 0.96078380659643 0.9607838066696 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.96017050796461 0.96017050794711 0.96017050775915 0.96017050705865 0.96017050647523 0.96017050705865 0.96017050775915 0.96017050794711 0.96017050796461 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093766 0.96002464093612 0.96002464091957 0.96002464085794 0.96002464080663 0.96002464085794 0.96002464091957 0.96002464093612 0.96002464093766 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110584 0.96000234110572 0.96000234110529 0.96000234110492 0.96000234110529 0.96000234110572 0.96000234110584 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892105 0.96000014892105 0.96000014892105 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.9600000047133 0.9600000047133 0.9600000047133 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639195 0.96000009639181 0.9600000963913 0.96000009639088 0.9600000963913 0.96000009639181 0.96000009639195 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376078 0.96000622376058 0.96000622375841 0.9600062237505 0.96000622374392 0.9600062237505 0.96000622375841 0.96000622376058 0.96000622376078 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588308 0.96013879587095 0.96013879574464 0.96013879528095 0.96013879489543 0.96013879528095 0.96013879574464 0.96013879587095 0.96013879588308 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986392 0.96006476985413 0.96006476975191 0.96006476937608 0.96006476906349 0.96006476937608 0.96006476975191 0.96006476985413 0.96006476986392 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928145 0.96027520927704 0.96027520926098 0.96027520924764 0.96027520926098 0.96027520927704 0.96027520928145 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775717 0.96005494775593 0.96005494775135 0.96005494774755 0.96005494775135 0.96005494775593 0.96005494775717 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977411 0.96000571977396 0.96000571977341 0.96000571977296 0.96000571977341 0.96000571977396 0.96000571977411 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848692 0.96000041848692 0.96000041848691 0.96000041848692 0.96000041848692 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142374 0.96000000142374 0.96000000142373 0.96000000142374 0.96000000142374 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370673 0.9600000937067 0.9600000937066 0.96000009370651 0.9600000937066 0.9600000937067 0.96000009370673 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523842 0.9600025452363 0.96000254522849 0.96000254522198 0.96000254522849 0.9600025452363 0.96000254523842 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610752 0.96000117610631 0.96000117610187 0.96000117609818 0.96000117610187 0.96000117610631 0.96000117610752 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478493 0.96000524478429 0.96000524478192 0.96000524477994 0.96000524478192 0.96000524478429 0.96000524478493 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.9600008757375 0.96000087573786 0.9600008757392 0.96000087574031 0.9600008757392 0.96000087573786 0.9600008757375 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120186 0.96000085120185 0.96000085120184 0.96000085120185 0.96000085120186 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114057 0.96000000114057 0.96000000114057 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.96000003187519 0.96000003187517 0.9600000318751 0.96000003187504 0.9600000318751 0.96000003187517 0.96000003187519 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538586 0.96000001538582 0.96000001538579 0.96000001538582 0.96000001538586 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339362 0.96000008339361 0.96000008339362 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383395 0.96000001383396 0.96000001383397 0.96000001383396 0.96000001383395 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 D/cons.2.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 @@ -17,4 +17,4 @@ D/cons.8.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 D/cons.8.00.000050.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 D/lag_bubble_evol_0.dat 0.0 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093882 0.008 0.0 1.0001782913460961 0.0 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093882 0.008 0.0 1.0001782913460961 1e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093882 0.0079999999991335 -2.5998347812e-06 1.000178291800741 2e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298809388 0.0079999999922017 -1.29983238775e-05 1.0001782954379947 3e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093872 0.0079999999688074 -3.63926994597e-05 1.000178307713318 4e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093845 0.0079999999133575 -7.79781479331e-05 1.0001783368087096 5e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298809378 0.0079999998050647 -0.0001429472756538 1.0001783936314923 6e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093644 0.0079999996179508 -0.0002364894691138 1.0001784918127927 7e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093391 0.00799999932085 -0.0003637901198454 1.0001786477056553 8e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298809296 0.0079999988774137 -0.0005300296841069 1.0001788803827116 9e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988092268 0.0079999982461156 -0.000740382547164 1.0001792116333146 1e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988091214 0.0079999973802587 -0.0010000156616928 1.0001796659600262 1.1e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988089671 0.0079999962279833 -0.0013140869294889 1.0001802705743383 1.2e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988087485 0.0079999947322772 -0.0016877432952982 1.0001810553914838 1.3e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988084475 0.0079999928309878 -0.0021261185211773 1.0001820530241825 1.4e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988080425 0.007999990456836 -0.002634330609384 1.0001832987751504 1.5e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988075089 0.0079999875374341 -0.0032174788413769 1.0001848306281818 1.6e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988068183 0.0079999839953059 -0.0038806404001024 1.0001866892375992 1.7e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988059382 0.0079999797479105 -0.0046288665423713 1.0001889179158479 1.8e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988048322 0.0079999747076704 -0.0054671782877993 1.0001915626189932 1.9e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988034595 0.0079999687820044 -0.0064005615905186 1.0001946719298669 2e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988017745 0.007999961873365 -0.007433961959695 1.0001982970385817 2.1e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987997269 0.0079999538792819 -0.0085722784948069 1.000202491720126 2.2e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987972612 0.0079999446924115 -0.0098203573017131 1.0002073123087254 2.3e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987943166 0.0079999342005938 -0.0111829842557531 1.000212817668644 2.4e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987908266 0.007999922286916 -0.0126648770785396 1.0002190691610786 2.5e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987867191 0.0079999088297855 -0.0142706766957323 1.000226130606784 2.6e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987819157 0.007999893703011 -0.0160049378439864 1.0002340682440483 2.7e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298776332 0.0079998767758937 -0.0178721188962179 1.000242950681623 2.8e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298769877 0.007999857913329 -0.0198765708761419 1.0002528488461935 2.9e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987624529 0.0079998369759201 -0.0220225256346343 1.0002638359239637 3e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987539553 0.007999813820103 -0.0243140831627582 1.000275987295915 3.1e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987442724 0.0079997882982854 -0.0267551980189568 1.0002893804662816 3.2e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987332854 0.007999760258999 -0.0293496648510724 1.0003040949837791 3.3e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987208677 0.0079997295470672 -0.0321011029972354 1.0003202123551105 3.4e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987068853 0.0079996960037885 -0.0350129401543523 1.0003378159502636 3.5e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832986911963 0.0079996594671366 -0.0380883951075977 1.0003569908991143 3.6e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832986736509 0.0079996197719785 -0.041330459519923 1.0003778239788415 3.7e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298654091 0.0079995767503109 -0.0447418787855614 1.0004004034916618 3.8e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832986323505 0.0079995302315166 -0.0483251319566073 1.000424819132395 3.9e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832986082548 0.0079994800426413 -0.0520824107647706 1.0004511618453742 4e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832985816207 0.0079994260086914 -0.0560155977723029 1.0004795236702335 4.1e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832985522566 0.0079993679529551 -0.0601262436835033 1.0005099975761178 4.2e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832985199623 0.0079993056973452 -0.0644155438558731 1.0005426772838766 4.3e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832984845287 0.0079992390627669 -0.0688843140513614 1.0005776570758202 4.4e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832984457381 0.00799916786951 -0.0735329655284826 1.0006150315926565 4.5e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832984033639 0.0079990919376656 -0.0783614795576986 1.0006548956172674 4.6e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298357171 0.0079990110875694 -0.0833693814493191 1.0006973438450313 4.7e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832983069152 0.0079989251402707 -0.0885557141955299 1.000742470640441 4.8e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832982523439 0.0079988339180279 -0.0939190118482383 1.000790369779823 4.9e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832981931958 0.0079987372448311 -0.0994572727784473 1.0008411341800327 D/stats_lag_bubbles_0.dat 0.0 1.0 0.5 0.5 0.5 1.0 0.9998421556038835 -D/voidfraction.dat 2.1429198e-06 2.1429198e-06 2.1429198e-06 2.1429198e-06 2.1429197e-06 2.1429197e-06 2.1429196e-06 2.1429195e-06 2.1429193e-06 2.142919e-06 2.1429186e-06 2.142918e-06 2.1429172e-06 2.1429161e-06 2.1429148e-06 2.142913e-06 2.1429109e-06 2.1429083e-06 2.1429052e-06 2.1429015e-06 2.1428971e-06 2.1428919e-06 2.1428859e-06 2.142879e-06 2.1428711e-06 2.1428621e-06 2.1428519e-06 2.1428404e-06 2.1428275e-06 2.1428132e-06 2.1427972e-06 2.1427795e-06 2.1427599e-06 2.1427384e-06 2.1427148e-06 2.142689e-06 2.1426608e-06 2.1426302e-06 2.142597e-06 2.142561e-06 2.1425221e-06 2.1424803e-06 2.1424352e-06 2.1423869e-06 2.1423351e-06 2.1422797e-06 2.1422206e-06 2.1421577e-06 2.1420907e-06 2.1420195e-06 2.141944e-06 \ No newline at end of file +D/voidfraction.dat 2.1429198e-06 2.1429198e-06 2.1429198e-06 2.1429198e-06 2.1429197e-06 2.1429197e-06 2.1429196e-06 2.1429195e-06 2.1429192e-06 2.1429189e-06 2.1429183e-06 2.1429177e-06 2.1429167e-06 2.1429155e-06 2.142914e-06 2.1429121e-06 2.1429097e-06 2.1429069e-06 2.1429035e-06 2.1428994e-06 2.1428947e-06 2.1428891e-06 2.1428827e-06 2.1428753e-06 2.1428669e-06 2.1428573e-06 2.1428465e-06 2.1428343e-06 2.1428207e-06 2.1428056e-06 2.1427888e-06 2.1427701e-06 2.1427496e-06 2.1427271e-06 2.1427024e-06 2.1426755e-06 2.1426461e-06 2.1426142e-06 2.1425797e-06 2.1425423e-06 2.142502e-06 2.1424585e-06 2.1424119e-06 2.1423619e-06 2.1423083e-06 2.1422511e-06 2.1421901e-06 2.1421252e-06 2.1420561e-06 2.1419828e-06 2.1419052e-06 \ No newline at end of file diff --git a/tests/2EE0C3AA/golden-metadata.txt b/tests/2EE0C3AA/golden-metadata.txt index 9665f07409..e80b4d4d2e 100644 --- a/tests/2EE0C3AA/golden-metadata.txt +++ b/tests/2EE0C3AA/golden-metadata.txt @@ -1,24 +1,24 @@ -This file was created on 2026-02-28 19:06:40.945427. +This file was created on 2026-03-04 16:01:02.157542. mfc.sh: - Invocation: test --only 2EE0C3AA --generate --no-gpu -j 8 --no-build + Invocation: test --generate -o 2EE0C3AA Lock: mpi=Yes & gpu=No & debug=No & gcov=No & unified=No & single=No & mixed=No & fastmath=No - Git: 53ebfb7c2c1e94dc6b01b6c191eaa4bb11d1adc3 on gpu-optimizations (dirty) + Git: 6ebc84435f0cd9c9ca2161ede72683409650cde2 on MovingBubblesFresh-clean (dirty) -syscheck: +post_process: CMake Configuration: - CMake v3.28.3 on schwarzschild + CMake v3.30.3 on wingtip-gpu3.cc.gatech.edu - C : NVHPC v23.11.0 (/opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc) - Fortran : NVHPC v23.11.0 (/opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvfortran) + C : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc) + Fortran : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvfortran) PRE_PROCESS : OFF SIMULATION : OFF - POST_PROCESS : OFF - SYSCHECK : ON + POST_PROCESS : ON + SYSCHECK : OFF DOCUMENTATION : OFF ALL : OFF @@ -26,16 +26,16 @@ syscheck: OpenACC : OFF OpenMP : OFF - Fypp : /home/dan/Documents/repos/MFC/build/venv/bin/fypp + Fypp : /fastscratch/bwilfong3/software/MFC-Wilfong/build/venv/bin/fypp Doxygen : Build Type : Release Configuration Environment: - CC : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc - CXX : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc++ - FC : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvfortran + CC : /fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc + CXX : /fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc++ + FC : /fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvfortran OMPI_CC : OMPI_CXX : OMPI_FC : @@ -44,10 +44,10 @@ simulation: CMake Configuration: - CMake v3.28.3 on schwarzschild + CMake v3.30.3 on wingtip-gpu3.cc.gatech.edu - C : NVHPC v23.11.0 (/opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc) - Fortran : NVHPC v23.11.0 (/opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvfortran) + C : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc) + Fortran : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvfortran) PRE_PROCESS : OFF SIMULATION : ON @@ -60,16 +60,16 @@ simulation: OpenACC : OFF OpenMP : OFF - Fypp : /home/dan/Documents/repos/MFC/build/venv/bin/fypp + Fypp : /fastscratch/bwilfong3/software/MFC-Wilfong/build/venv/bin/fypp Doxygen : Build Type : Release Configuration Environment: - CC : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc - CXX : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc++ - FC : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvfortran + CC : /fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc + CXX : /fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc++ + FC : /fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvfortran OMPI_CC : OMPI_CXX : OMPI_FC : @@ -78,10 +78,10 @@ pre_process: CMake Configuration: - CMake v3.28.3 on schwarzschild + CMake v3.30.3 on wingtip-gpu3.cc.gatech.edu - C : NVHPC v23.11.0 (/opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc) - Fortran : NVHPC v23.11.0 (/opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvfortran) + C : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc) + Fortran : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvfortran) PRE_PROCESS : ON SIMULATION : OFF @@ -94,16 +94,50 @@ pre_process: OpenACC : OFF OpenMP : OFF - Fypp : /home/dan/Documents/repos/MFC/build/venv/bin/fypp + Fypp : /fastscratch/bwilfong3/software/MFC-Wilfong/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : + CXX : + FC : + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +syscheck: + + CMake Configuration: + + CMake v3.30.3 on wingtip-gpu3.cc.gatech.edu + + C : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc) + Fortran : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvfortran) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : ON + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : OFF + + Fypp : /fastscratch/bwilfong3/software/MFC-Wilfong/build/venv/bin/fypp Doxygen : Build Type : Release Configuration Environment: - CC : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc - CXX : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc++ - FC : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvfortran + CC : + CXX : + FC : OMPI_CC : OMPI_CXX : OMPI_FC : @@ -112,49 +146,46 @@ CPU: CPU Info: From lscpu - Architecture: x86_64 - CPU op-mode(s): 32-bit, 64-bit - Address sizes: 46 bits physical, 48 bits virtual - Byte Order: Little Endian - CPU(s): 20 - On-line CPU(s) list: 0-19 - Vendor ID: GenuineIntel - Model name: 12th Gen Intel(R) Core(TM) i7-12700K - CPU family: 6 - Model: 151 - Thread(s) per core: 2 - Core(s) per socket: 12 - Socket(s): 1 - Stepping: 2 - CPU(s) scaling MHz: 24% - CPU max MHz: 5100.0000 - CPU min MHz: 800.0000 - BogoMIPS: 7219.20 - Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault cat_l2 cdp_l2 ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid rdt_a rdseed adx smap clflushopt clwb intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves split_lock_detect user_shstk avx_vnni dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp hwp_pkg_req hfi vnmi umip pku ospke waitpkg gfni vaes vpclmulqdq rdpid movdiri movdir64b fsrm md_clear serialize pconfig arch_lbr ibt flush_l1d arch_capabilities - Virtualization: VT-x - L1d cache: 512 KiB (12 instances) - L1i cache: 512 KiB (12 instances) - L2 cache: 12 MiB (9 instances) - L3 cache: 25 MiB (1 instance) - NUMA node(s): 1 - NUMA node0 CPU(s): 0-19 - Vulnerability Gather data sampling: Not affected - Vulnerability Ghostwrite: Not affected - Vulnerability Indirect target selection: Not affected - Vulnerability Itlb multihit: Not affected - Vulnerability L1tf: Not affected - Vulnerability Mds: Not affected - Vulnerability Meltdown: Not affected - Vulnerability Mmio stale data: Not affected - Vulnerability Old microcode: Not affected - Vulnerability Reg file data sampling: Mitigation; Clear Register File - Vulnerability Retbleed: Not affected - Vulnerability Spec rstack overflow: Not affected - Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl - Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization - Vulnerability Spectre v2: Mitigation; Enhanced / Automatic IBRS; IBPB conditional; PBRSB-eIBRS SW sequence; BHI BHI_DIS_S - Vulnerability Srbds: Not affected - Vulnerability Tsa: Not affected - Vulnerability Tsx async abort: Not affected - Vulnerability Vmscape: Mitigation; IBPB before exit to userspace + Architecture: x86_64 + CPU op-mode(s): 32-bit, 64-bit + Address sizes: 52 bits physical, 57 bits virtual + Byte Order: Little Endian + CPU(s): 128 + On-line CPU(s) list: 0-127 + Vendor ID: GenuineIntel + Model name: Intel(R) Xeon(R) Gold 6338 CPU @ 2.00GHz + CPU family: 6 + Model: 106 + Thread(s) per core: 2 + Core(s) per socket: 32 + Socket(s): 2 + Stepping: 6 + CPU(s) scaling MHz: 40% + CPU max MHz: 3200.0000 + CPU min MHz: 800.0000 + BogoMIPS: 4000.00 + Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm rdt_a avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb intel_pt avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local split_lock_detect wbnoinvd dtherm ida arat pln pts vnmi avx512vbmi umip pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg tme avx512_vpopcntdq la57 rdpid fsrm md_clear pconfig flush_l1d arch_capabilities + Virtualization: VT-x + L1d cache: 3 MiB (64 instances) + L1i cache: 2 MiB (64 instances) + L2 cache: 80 MiB (64 instances) + L3 cache: 96 MiB (2 instances) + NUMA node(s): 2 + NUMA node0 CPU(s): 0-31,64-95 + NUMA node1 CPU(s): 32-63,96-127 + Vulnerability Gather data sampling: Mitigation; Microcode + Vulnerability Itlb multihit: Not affected + Vulnerability L1tf: Not affected + Vulnerability Mds: Not affected + Vulnerability Meltdown: Not affected + Vulnerability Mmio stale data: Mitigation; Clear CPU buffers; SMT vulnerable + Vulnerability Reg file data sampling: Not affected + Vulnerability Retbleed: Not affected + Vulnerability Spec rstack overflow: Not affected + Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl + Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization + Vulnerability Spectre v2: Mitigation; Enhanced / Automatic IBRS; IBPB conditional; RSB filling; PBRSB-eIBRS SW sequence; BHI SW loop, KVM SW loop + Vulnerability Srbds: Not affected + Vulnerability Tsx async abort: Not affected + Vulnerability Vmscape: Not affected diff --git a/tests/2EE0C3AA/golden.txt b/tests/2EE0C3AA/golden.txt index d900ad6f6e..5233cf042e 100644 --- a/tests/2EE0C3AA/golden.txt +++ b/tests/2EE0C3AA/golden.txt @@ -1,14 +1,14 @@ D/cons.1.00.000000.dat 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.81 0.81 0.81 0.81 0.81 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 0.08 -D/cons.1.00.000050.dat 0.81 0.25519735697917 0.25462644269077 0.27489591511187 0.33063650264582 0.26749190593621 0.2571560724576 0.25141083852954 0.25018476156389 0.25001979547556 0.25000174625902 0.25000013072532 0.25000000848295 0.25000000045608 0.24999999997526 0.24999999999258 0.25000000000554 0.2500000000003 0.24999999999971 0.25000000000002 0.25000000000001 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.2499995963654 0.24999455000644 0.24993780798379 0.2494195444654 0.24578641151002 0.2245903425384 0.17194992628504 0.13027872976624 0.12107486420005 0.09492494868361 0.0818609282129 0.0801746494299 0.08016362513661 0.08135416534872 0.09351331828085 0.10696502902716 0.08 0.76974562362404 0.39688317436863 0.32612040346652 0.35557615324074 0.35188185444069 0.27879835840472 0.26317934511791 0.25341389415671 0.25043660038712 0.25004828865489 0.25000433922054 0.25000032929838 0.2500000215542 0.25000000121351 0.25000000002965 0.24999999997911 0.25000000000566 0.25000000000139 0.24999999999965 0.24999999999998 0.25000000000002 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636542 0.24999455000673 0.24993780798783 0.24941954448234 0.24578641003287 0.22459031083626 0.17194962937353 0.13027982694437 0.12107255126353 0.0949024663641 0.08186011126274 0.08019917013852 0.08015116264846 0.08031090558284 0.08116178234819 0.08029476728869 0.22080598813752 0.73171123975255 0.73722125477257 0.65489634453304 0.58516082230443 0.5745515017694 0.36639798110313 0.28334809850702 0.26016263113012 0.25129925413754 0.25014082750805 0.25001240998115 0.25000092451259 0.25000005976847 0.25000000344564 0.25000000016179 0.24999999996681 0.25000000000232 0.25000000000325 0.24999999999976 0.24999999999988 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.2499999740929 0.24999959636548 0.24999455000797 0.24993780800832 0.24941954477003 0.24578641360172 0.22459034823393 0.17194951378055 0.13028007686315 0.12107193798121 0.09490785976292 0.08184802956086 0.08019867289987 0.07999425919406 0.08000874380183 0.0801659632092 0.08273555364025 0.19326027952706 0.74065193584139 0.77641694991117 0.74295176151906 0.67009562101246 0.60709727581757 0.37899372700662 0.29041959148686 0.26225803294199 0.25157449438465 0.2501694892775 0.25001480775463 0.250001093803 0.25000007016325 0.25000000401122 0.25000000018836 0.24999999996635 0.25000000000152 0.25000000000352 0.24999999999978 0.24999999999986 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636539 0.24999455000625 0.24993780798096 0.24941954442228 0.24578641055071 0.22459032752995 0.17194977547463 0.13027924286082 0.12107263284739 0.09491595516458 0.08185791037281 0.08019964569626 0.07999060108936 0.08054290304209 0.08253935059368 0.10987255121882 0.28231058455196 0.75340166922336 0.75776274106975 0.79218741608067 0.73563435942958 0.65791970797367 0.39876481952682 0.29298247771005 0.26184017777901 0.25149920175233 0.25016237367954 0.25001421694001 0.2500010531317 0.25000006776889 0.25000000387605 0.25000000018074 0.24999999996619 0.25000000000185 0.25000000000345 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636536 0.24999455000559 0.24993780796994 0.24941954427898 0.24578640942508 0.22459032190697 0.17195005162539 0.13027848953127 0.12107656282873 0.09493052519051 0.08185348998924 0.08016619297944 0.08017355241667 0.08134356768442 0.08722455869755 0.15016989525838 0.33885872988875 0.56485541589155 0.73918219927816 0.77830190280163 0.75053631678078 0.67074160597033 0.39996018340561 0.29309063465071 0.26162613888335 0.25147394299112 0.25015998984481 0.25001403603411 0.25000104164172 0.25000006709255 0.25000000383375 0.25000000017878 0.24999999996625 0.2500000000019 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000546 0.24993780796832 0.24941954423518 0.24578640706294 0.22459027789953 0.17194962740284 0.13028041153906 0.12107829116384 0.09491672232951 0.08181681588244 0.08028444959372 0.08025740641923 0.08332524290312 0.10563834697674 0.18529742779138 0.34246155676229 0.53411849380521 0.72992099949941 0.77630110582776 0.7542768095866 0.6727544804008 0.40005536537373 0.29300607435455 0.26156084962515 0.25146741748134 0.25015944373071 0.25001399859256 0.25000103937888 0.2500000669682 0.25000000382922 0.25000000017868 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000544 0.24993780796792 0.24941954422572 0.24578640669687 0.22459027121339 0.17194958554143 0.13028057223834 0.12107873746801 0.09491507541321 0.08181313775924 0.08030117776319 0.08028182224191 0.08368103665827 0.10832259068735 0.18664861654808 0.33802358250401 0.52248116046183 0.72746493816782 0.77588813818133 0.75479967358976 0.67301167526526 0.40004555517149 0.29298438135777 0.2615521689354 0.25146664026826 0.25015938355226 0.25001399464984 0.25000103919179 0.25000006696793 0.25000000382985 0.25000000017872 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796784 0.24941954422441 0.24578640666923 0.22459027062975 0.17194958210626 0.13028058135244 0.12107879498313 0.09491480539446 0.08181277165617 0.08030400488839 0.08028559915253 0.08374417050465 0.10873281985125 0.18652501598584 0.33375389843124 0.52092646635473 0.72714230982176 0.77584391664019 0.75485926617255 0.67303752964759 0.40004324891541 0.29298193830801 0.2615512840754 0.25146656792365 0.25015937830109 0.25001399433955 0.25000103919564 0.25000006696811 0.25000000382981 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666502 0.22459027060095 0.17194958189855 0.13028058162166 0.12107880127351 0.09491478864071 0.08181274716329 0.08030420974251 0.08028597409563 0.08375032899863 0.10877015717584 0.18645474546472 0.33296522439281 0.52076111885305 0.72710873183106 0.77584000706473 0.75486477192437 0.67303965749045 0.40004294788209 0.29298170762497 0.26155121145839 0.25146656240737 0.25015937792146 0.25001399435005 0.25000103919429 0.25000006696756 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422425 0.24578640666495 0.22459027060052 0.17194958186454 0.13028058162869 0.12107880180936 0.09491478772977 0.08181274562969 0.08030422284135 0.08028600420485 0.08375082298443 0.10877304768899 0.1864435149408 0.33287475338582 0.52074705267365 0.72710591796015 0.77583971874036 0.75486519767653 0.67303980503068 0.40004291900331 0.29298168991575 0.26155120644226 0.25146656203951 0.25015937793483 0.25001399435006 0.25000103919291 0.25000006696748 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422425 0.24578640666492 0.22459027059911 0.17194958185966 0.13028058164738 0.12107880182313 0.09491478770139 0.08181274556405 0.08030422352667 0.08028600623947 0.08375085634041 0.10877323742949 0.18644224690383 0.33286629530794 0.52074605128723 0.72710572006643 0.77583970044752 0.75486522584565 0.67303981393746 0.40004291672935 0.29298168871812 0.26155120611943 0.25146656205698 0.25015937793754 0.25001399434786 0.2500010391929 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.2245902705989 0.17194958186225 0.13028058164554 0.12107880181017 0.09491478771713 0.08181274557549 0.08030422352812 0.08028600631898 0.08375085829534 0.10877324820145 0.1864421357263 0.33286564330578 0.52074598989769 0.72710570800951 0.77583969927987 0.75486522760697 0.67303981454495 0.40004291657839 0.29298168865766 0.26155120614477 0.25146656206064 0.25015937793472 0.25001399434786 0.25000103919294 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186225 0.1302805816441 0.12107880181366 0.09491478771512 0.08181274557213 0.08030422351852 0.08028600630116 0.08375085836052 0.10877324867395 0.1864421276071 0.33286560053806 0.52074598651225 0.72710570726444 0.77583969931109 0.75486522765995 0.67303981446245 0.40004291659851 0.29298168868833 0.2615512061503 0.25146656205763 0.25015937793465 0.25001399434792 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.2457864066649 0.22459027059891 0.17194958186212 0.13028058164424 0.12107880181451 0.09491478771409 0.08181274557114 0.08030422352265 0.08028600630484 0.08375085834611 0.10877324867306 0.18644212711242 0.33286559805951 0.52074598632346 0.72710570732104 0.77583969933243 0.75486522761712 0.6730398144528 0.40004291659906 0.29298168868463 0.26155120614671 0.25146656205753 0.25015937793474 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.1302805816443 0.1210788018143 0.09491478771421 0.08181274557136 0.08030422352309 0.0802860063065 0.08375085835061 0.10877324866612 0.18644212712424 0.33286559792779 0.52074598638237 0.7271057073337 0.77583969932421 0.7548652276252 0.67303981446149 0.40004291659695 0.29298168868246 0.26155120614649 0.25146656205764 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164429 0.12107880181428 0.09491478771424 0.08181274557138 0.08030422352287 0.08028600630624 0.08375085835169 0.10877324867003 0.1864421271362 0.33286559797644 0.52074598637781 0.72710570732619 0.77583969932327 0.75486522762775 0.67303981446171 0.40004291659697 0.29298168868275 0.26155120614665 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.1210788018143 0.09491478771423 0.08181274557136 0.08030422352288 0.08028600630619 0.0837508583514 0.10877324867002 0.18644212713163 0.33286559797118 0.52074598637366 0.72710570732575 0.77583969932365 0.7548652276272 0.67303981446128 0.40004291659706 0.29298168868283 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.1210788018143 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835137 0.10877324866982 0.18644212713092 0.33286559796774 0.52074598637407 0.72710570732608 0.77583969932365 0.75486522762715 0.67303981446132 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.0837508583514 0.10877324866985 0.18644212713116 0.33286559796821 0.52074598637421 0.72710570732606 0.77583969932363 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866986 0.18644212713118 0.33286559796832 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637421 0.72710570732607 0.77583969932363 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713118 0.33286559796832 0.52074598637405 0.72710570732609 0.77583969932367 0.75486522762715 0.67303981446133 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866986 0.18644212713117 0.33286559796818 0.52074598637365 0.72710570732563 0.77583969932366 0.7548652276272 0.67303981446133 0.40004291659707 0.29298168868283 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.0837508583514 0.1087732486698 0.18644212713085 0.33286559796776 0.52074598637831 0.72710570732641 0.77583969932306 0.75486522762769 0.67303981446145 0.40004291659687 0.29298168868276 0.26155120614666 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352288 0.08028600630622 0.0837508583514 0.1087732486699 0.18644212713185 0.33286559797169 0.52074598638206 0.72710570733537 0.77583969932491 0.75486522762561 0.67303981446137 0.40004291659698 0.29298168868242 0.26155120614653 0.25146656205764 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.1210788018143 0.09491478771424 0.08181274557137 0.08030422352288 0.08028600630621 0.08375085835135 0.10877324867075 0.18644212713732 0.33286559797587 0.52074598631895 0.72710570731528 0.77583969933484 0.75486522761783 0.67303981445861 0.40004291660135 0.29298168868435 0.26155120614651 0.25146656205755 0.25015937793474 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164429 0.12107880181429 0.09491478771424 0.08181274557138 0.08030422352298 0.08028600630614 0.08375085835158 0.10877324866776 0.18644212711944 0.33286559792422 0.52074598654457 0.72710570727496 0.77583969929978 0.75486522765405 0.67303981445991 0.40004291659758 0.29298168868904 0.26155120614953 0.25146656205751 0.25015937793467 0.25001399434792 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.2457864066649 0.22459027059891 0.17194958186213 0.13028058164429 0.12107880181428 0.09491478771408 0.08181274557124 0.08030422352293 0.08028600630638 0.08375085835111 0.10877324866343 0.1864421271254 0.33286559808565 0.52074599041727 0.72710570827109 0.77583969931145 0.75486522763433 0.67303981449936 0.40004291655694 0.2929816886609 0.2615512061487 0.2514665620601 0.25015937793462 0.25001399434786 0.25000103919294 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.2457864066649 0.22459027059892 0.17194958186217 0.13028058164417 0.1210788018144 0.09491478771465 0.08181274557141 0.08030422352021 0.08028600630578 0.08375085835127 0.10877324871115 0.186442127851 0.33286560094829 0.52074605931517 0.72710572426879 0.77583970103457 0.75486522627641 0.67303981426693 0.40004291686697 0.2929816886963 0.2615512061157 0.25146656205945 0.25015937793715 0.2500139943478 0.2500010391929 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059886 0.1719495818623 0.13028058164466 0.12107880181365 0.09491478771772 0.08181274557447 0.08030422352415 0.08028600630794 0.08375085834417 0.10877324888475 0.18644213961816 0.33286564951694 0.52074716030417 0.72710597834583 0.77583972802896 0.75486520568535 0.67303980960376 0.40004292053349 0.2929816896994 0.26155120630872 0.25146656203355 0.25015937793651 0.25001399434988 0.25000103919287 0.25000006696748 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.2457864066649 0.22459027059894 0.17194958186148 0.13028058164706 0.12107880181334 0.09491478770575 0.08181274556579 0.08030422354152 0.08028600631519 0.08375085774796 0.10877324688405 0.1864422970016 0.33286637649579 0.52076231435172 0.72710947010728 0.77584013399555 0.7548648944335 0.67303971879033 0.40004296918704 0.29298170489467 0.26155120965885 0.25146656226633 0.25015937791514 0.25001399435075 0.25000103919428 0.25000006696755 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422425 0.24578640666498 0.22459027060004 0.17194958186097 0.13028058163457 0.1210788018288 0.09491478773207 0.08181274557118 0.08030422324419 0.08028600589368 0.08375084187823 0.10877315556377 0.18644406478401 0.33287563289469 0.52093698516298 0.72714975718024 0.77584535912724 0.75486080049189 0.67303823305096 0.40004350088617 0.29298191227264 0.26155126285678 0.25146656614101 0.25015937817788 0.25001399433439 0.25000103919584 0.25000006696815 0.25000000382981 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422422 0.24578640666465 0.22459027059869 0.17194958188244 0.13028058163028 0.12107880174224 0.09491478860189 0.0818127464098 0.08030421555836 0.08028599407678 0.08375054220565 0.10877120925561 0.18646065896712 0.3329728991316 0.52255005330691 0.72752334675293 0.77590126585473 0.75481487073517 0.6730183663037 0.40004784185992 0.29298422708628 0.26155197095692 0.25146662191766 0.25015938219147 0.2500139945684 0.25000103918732 0.25000006696792 0.25000000382986 0.25000000017872 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796781 0.24941954422405 0.24578640666483 0.22459027060063 0.17194958206937 0.13028058152537 0.12107880007514 0.09491480533287 0.08181276615922 0.080304074041 0.0802857873644 0.08374607385788 0.10874008141473 0.18655816521801 0.3338079137592 0.53445953915439 0.73027464888599 0.77639631425737 0.75438813981363 0.67280702198473 0.4000745170771 0.29300492061077 0.26155948448957 0.25146727611752 0.25015943242878 0.25001399786941 0.25000103934002 0.25000006696587 0.25000000382913 0.25000000017868 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.2494195442247 0.24578640668564 0.2245902710163 0.1719495858211 0.13028057503551 0.12107877837064 0.09491507868178 0.08181311771677 0.08030188168518 0.08028317028521 0.08369431289296 0.10835909103529 0.18678200967823 0.33822739457309 0.56509804930323 0.73963122651044 0.77871479472273 0.75108215562254 0.67111739872193 0.40010159162153 0.29312164069861 0.26162293144625 0.25147345000595 0.25015994114557 0.25001403257611 0.25000104144976 0.2500000670816 0.25000000383308 0.25000000017875 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000545 0.24993780796813 0.24941954423273 0.24578640696582 0.22459027574065 0.17194962307515 0.13028044837214 0.12107854037092 0.09491701461105 0.08181669382118 0.08028745427604 0.08026304287216 0.08336989131035 0.10571710513544 0.1854699485584 0.34272734913075 0.75389271766202 0.75827847936538 0.79304190470975 0.73644568929578 0.6600928693058 0.40003933733924 0.29322961510311 0.26186300584657 0.25150079418991 0.25016249586954 0.25001422520564 0.2500010536775 0.25000006780299 0.2500000038777 0.25000000018079 0.24999999996619 0.25000000000185 0.25000000000346 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000538 0.24993780796683 0.24941954423858 0.24578640883183 0.22459031418851 0.17195004320215 0.1302786273737 0.12107744703077 0.09493163254343 0.08184999935865 0.0801738105826 0.08018232633173 0.0814038621147 0.08732687830424 0.15030856778209 0.33912014223095 0.74100108431256 0.7768064521836 0.74371959739328 0.67429099496566 0.61577901569113 0.38359683380794 0.29179307739894 0.26242758026869 0.25158815357034 0.25017075663693 0.25001489744996 0.25000109946775 0.25000007048326 0.25000000402831 0.25000000018912 0.24999999996634 0.2500000000015 0.25000000000352 0.24999999999979 0.24999999999986 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636532 0.24999455000482 0.24993780795726 0.24941954409213 0.24578640650736 0.22459028556407 0.17194981609243 0.13027913838724 0.12107311056476 0.09491230252401 0.08186198755406 0.08020652825778 0.08002110642218 0.08058055659613 0.08260176233764 0.10995195923351 0.28249557758317 0.73178319612072 0.73747203498238 0.65697338897285 0.59378869015643 0.58683029572656 0.37425047865585 0.2843996803848 0.26001591648468 0.25128440659357 0.25014066516588 0.25001246865599 0.25000093310414 0.25000006050462 0.25000000349163 0.25000000016476 0.24999999996679 0.2500000000022 0.25000000000327 0.24999999999976 0.24999999999988 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409288 0.24999959636521 0.24999455000279 0.24993780792565 0.24941954366517 0.24578640113599 0.22459022699618 0.17194979376969 0.13027916111821 0.12107151285104 0.09489414908113 0.08187613049969 0.08019146831599 0.08006285775269 0.08003868340375 0.08017442153682 0.08275530187249 0.19330208125084 0.76975653334217 0.39701549532285 0.32825762653642 0.36243293144105 0.35387153278297 0.27582308414669 0.26244193181823 0.25328784092154 0.2504149947315 0.25004530212744 0.25000403663062 0.25000030489015 0.25000001998456 0.2500000011298 0.25000000002454 0.24999999998031 0.25000000000565 0.25000000000128 0.24999999999966 0.24999999999998 0.25000000000002 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636529 0.2499945500043 0.24993780794877 0.24941954396041 0.2457864042797 0.22459025540917 0.1719497230817 0.13027942070635 0.12107246498811 0.0948980908688 0.08186806065284 0.08019779991802 0.08016216527887 0.08030649391728 0.08116601221463 0.08029757492042 0.22082766327957 0.81 0.25149507417092 0.25360630879849 0.25917897984458 0.26235382321713 0.26235327673602 0.25460126804249 0.25106523743048 0.2501269385684 0.25001305803327 0.25000113008556 0.25000008415464 0.25000000547674 0.25000000028449 0.24999999996271 0.24999999999818 0.250000000005 0.24999999999995 0.24999999999976 0.25000000000003 0.25000000000001 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636537 0.2499945500058 0.24993780797315 0.24941954432047 0.24578640997493 0.22459032933965 0.17194996708147 0.13027855906925 0.12107516233463 0.0949254930024 0.08186177846808 0.08017276725363 0.08016402021904 0.08148487599308 0.09349221242904 0.10742067660486 0.08 +D/cons.1.00.000050.dat 0.81 0.25519735697917 0.25462644269077 0.27489591511187 0.33063650264582 0.26749190593621 0.2571560724576 0.25141083852954 0.25018476156389 0.25001979547556 0.25000174625902 0.25000013072532 0.25000000848295 0.25000000045608 0.24999999997526 0.24999999999258 0.25000000000554 0.2500000000003 0.24999999999971 0.25000000000002 0.25000000000001 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.2499995963654 0.24999455000644 0.24993780798379 0.2494195444654 0.24578641151002 0.2245903425384 0.17194992628504 0.13027872976624 0.12107486420005 0.09492494868361 0.0818609282129 0.0801746494299 0.08016362513661 0.08135416534872 0.09351331828085 0.10696502902716 0.08 0.76974562362404 0.39688317436863 0.32612040346652 0.35557615324074 0.35188185444069 0.27879835840472 0.26317934511791 0.25341389415671 0.25043660038712 0.25004828865489 0.25000433922054 0.25000032929838 0.2500000215542 0.25000000121351 0.25000000002965 0.24999999997911 0.25000000000566 0.25000000000139 0.24999999999965 0.24999999999998 0.25000000000002 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636542 0.24999455000673 0.24993780798783 0.24941954448234 0.24578641003287 0.22459031083626 0.17194962937353 0.13027982694437 0.12107255126353 0.0949024663641 0.08186011126274 0.08019917013852 0.08015116264846 0.08031090558284 0.08116178234819 0.08029476728869 0.22080598813752 0.73171123975255 0.73722125477257 0.65489634453304 0.58516082230443 0.5745515017694 0.36639798110313 0.28334809850702 0.26016263113012 0.25129925413754 0.25014082750805 0.25001240998115 0.25000092451259 0.25000005976847 0.25000000344564 0.25000000016179 0.24999999996681 0.25000000000232 0.25000000000325 0.24999999999976 0.24999999999988 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.2499999740929 0.24999959636548 0.24999455000797 0.24993780800832 0.24941954477003 0.24578641360172 0.22459034823393 0.17194951378055 0.13028007686315 0.12107193798121 0.09490785976292 0.08184802956086 0.08019867289987 0.07999425919406 0.08000874380183 0.0801659632092 0.08273555364025 0.19326027952706 0.74065193584139 0.77641694991117 0.74295176151906 0.67009562101246 0.60709727581757 0.37899372700662 0.29041959148686 0.26225803294199 0.25157449438465 0.2501694892775 0.25001480775463 0.250001093803 0.25000007016325 0.25000000401122 0.25000000018836 0.24999999996635 0.25000000000152 0.25000000000352 0.24999999999978 0.24999999999986 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636539 0.24999455000625 0.24993780798096 0.24941954442228 0.24578641055071 0.22459032752995 0.17194977547463 0.13027924286082 0.12107263284739 0.09491595516458 0.08185791037281 0.08019964569626 0.07999060108936 0.08054290304209 0.08253935059368 0.10987255121882 0.28231058455196 0.75340166922336 0.75776274106975 0.79218741608067 0.73563435942958 0.65791970797367 0.39876481952682 0.29298247771005 0.26184017777901 0.25149920175233 0.25016237367954 0.25001421694001 0.2500010531317 0.25000006776889 0.25000000387605 0.25000000018074 0.24999999996619 0.25000000000185 0.25000000000345 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636536 0.24999455000559 0.24993780796994 0.24941954427898 0.24578640942508 0.22459032190697 0.17195005162539 0.13027848953127 0.12107656282873 0.09493052519051 0.08185348998924 0.08016619297944 0.08017355241667 0.08134356768442 0.08722455869755 0.15016989525838 0.33885872988875 0.56485541589155 0.73918219927816 0.77830190280163 0.75053631678078 0.67074160597033 0.39996018340561 0.29309063465071 0.26162613888335 0.25147394299112 0.25015998984481 0.25001403603411 0.25000104164172 0.25000006709255 0.25000000383375 0.25000000017878 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000546 0.24993780796832 0.24941954423518 0.24578640706294 0.22459027789953 0.17194962740284 0.13028041153906 0.12107829116384 0.09491672232951 0.08181681588244 0.08028444959372 0.08025740641923 0.08332524290312 0.10563834697674 0.18529742779138 0.34246155676229 0.53411849380521 0.72992099949941 0.77630110582776 0.7542768095866 0.6727544804008 0.40005536537373 0.29300607435455 0.26156084962515 0.25146741748134 0.25015944373071 0.25001399859256 0.25000103937888 0.2500000669682 0.25000000382922 0.25000000017868 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000544 0.24993780796792 0.24941954422572 0.24578640669687 0.22459027121339 0.17194958554143 0.13028057223834 0.12107873746801 0.09491507541321 0.08181313775924 0.08030117776319 0.08028182224191 0.08368103665827 0.10832259068735 0.18664861654808 0.33802358250401 0.52248116046183 0.72746493816782 0.77588813818133 0.75479967358976 0.67301167526526 0.40004555517149 0.29298438135777 0.2615521689354 0.25146664026826 0.25015938355226 0.25001399464984 0.25000103919179 0.25000006696793 0.25000000382985 0.25000000017872 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796784 0.24941954422441 0.24578640666923 0.22459027062975 0.17194958210626 0.13028058135244 0.12107879498313 0.09491480539446 0.08181277165617 0.08030400488839 0.08028559915253 0.08374417050465 0.10873281985125 0.18652501598584 0.33375389843124 0.52092646635473 0.72714230982176 0.77584391664019 0.75485926617255 0.67303752964759 0.40004324891541 0.29298193830801 0.2615512840754 0.25146656792365 0.25015937830109 0.25001399433955 0.25000103919564 0.25000006696811 0.25000000382981 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666502 0.22459027060095 0.17194958189855 0.13028058162166 0.12107880127351 0.09491478864071 0.08181274716329 0.08030420974251 0.08028597409563 0.08375032899863 0.10877015717584 0.18645474546472 0.33296522439281 0.52076111885305 0.72710873183106 0.77584000706473 0.75486477192437 0.67303965749045 0.40004294788209 0.29298170762497 0.26155121145839 0.25146656240737 0.25015937792146 0.25001399435005 0.25000103919429 0.25000006696756 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422425 0.24578640666495 0.22459027060052 0.17194958186454 0.13028058162869 0.12107880180936 0.09491478772977 0.08181274562969 0.08030422284135 0.08028600420485 0.08375082298443 0.10877304768899 0.1864435149408 0.33287475338582 0.52074705267365 0.72710591796015 0.77583971874036 0.75486519767653 0.67303980503068 0.40004291900331 0.29298168991575 0.26155120644226 0.25146656203951 0.25015937793483 0.25001399435006 0.25000103919291 0.25000006696748 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422425 0.24578640666492 0.22459027059911 0.17194958185966 0.13028058164738 0.12107880182313 0.09491478770139 0.08181274556405 0.08030422352667 0.08028600623947 0.08375085634041 0.10877323742949 0.18644224690383 0.33286629530794 0.52074605128723 0.72710572006643 0.77583970044752 0.75486522584565 0.67303981393746 0.40004291672935 0.29298168871812 0.26155120611943 0.25146656205698 0.25015937793754 0.25001399434786 0.2500010391929 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.2245902705989 0.17194958186225 0.13028058164554 0.12107880181017 0.09491478771713 0.08181274557549 0.08030422352812 0.08028600631898 0.08375085829534 0.10877324820145 0.1864421357263 0.33286564330578 0.52074598989769 0.7271057080095 0.77583969927987 0.75486522760697 0.67303981454495 0.40004291657839 0.29298168865766 0.26155120614477 0.25146656206064 0.25015937793472 0.25001399434786 0.25000103919294 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186225 0.1302805816441 0.12107880181366 0.09491478771512 0.08181274557213 0.08030422351852 0.08028600630116 0.08375085836052 0.10877324867395 0.1864421276071 0.33286560053806 0.52074598651225 0.72710570726444 0.77583969931109 0.75486522765995 0.67303981446245 0.40004291659851 0.29298168868833 0.2615512061503 0.25146656205763 0.25015937793465 0.25001399434792 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.2457864066649 0.22459027059891 0.17194958186212 0.13028058164424 0.12107880181451 0.09491478771409 0.08181274557114 0.08030422352265 0.08028600630484 0.08375085834611 0.10877324867306 0.18644212711242 0.33286559805951 0.52074598632346 0.72710570732104 0.77583969933243 0.75486522761711 0.6730398144528 0.40004291659906 0.29298168868463 0.26155120614671 0.25146656205753 0.25015937793474 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.1302805816443 0.1210788018143 0.09491478771421 0.08181274557136 0.08030422352309 0.0802860063065 0.08375085835061 0.10877324866612 0.18644212712424 0.33286559792779 0.52074598638237 0.7271057073337 0.77583969932421 0.7548652276252 0.67303981446149 0.40004291659695 0.29298168868246 0.26155120614649 0.25146656205764 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164429 0.12107880181428 0.09491478771424 0.08181274557138 0.08030422352287 0.08028600630624 0.08375085835169 0.10877324867003 0.1864421271362 0.33286559797644 0.52074598637781 0.72710570732619 0.77583969932326 0.75486522762775 0.67303981446171 0.40004291659697 0.29298168868275 0.26155120614665 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.1210788018143 0.09491478771423 0.08181274557136 0.08030422352288 0.08028600630619 0.0837508583514 0.10877324867002 0.18644212713163 0.33286559797118 0.52074598637366 0.72710570732575 0.77583969932365 0.7548652276272 0.67303981446128 0.40004291659706 0.29298168868283 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.1210788018143 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835137 0.10877324866982 0.18644212713092 0.33286559796774 0.52074598637407 0.72710570732608 0.77583969932365 0.75486522762715 0.67303981446132 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.0837508583514 0.10877324866985 0.18644212713116 0.33286559796821 0.52074598637421 0.72710570732606 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866986 0.18644212713118 0.33286559796832 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.2457864066649 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637417 0.72710570732605 0.77583969932364 0.75486522762718 0.67303981446134 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713116 0.33286559796828 0.52074598637421 0.72710570732607 0.77583969932363 0.75486522762718 0.67303981446134 0.40004291659704 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866985 0.18644212713118 0.33286559796832 0.52074598637405 0.72710570732609 0.77583969932367 0.75486522762715 0.67303981446133 0.40004291659705 0.2929816886828 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.08375085835139 0.10877324866986 0.18644212713117 0.33286559796818 0.52074598637365 0.72710570732563 0.77583969932366 0.7548652276272 0.67303981446133 0.40004291659707 0.29298168868283 0.26155120614664 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352289 0.08028600630621 0.0837508583514 0.1087732486698 0.18644212713085 0.33286559796776 0.52074598637831 0.72710570732641 0.77583969932306 0.75486522762769 0.67303981446145 0.40004291659687 0.29298168868276 0.26155120614666 0.25146656205762 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.12107880181429 0.09491478771423 0.08181274557136 0.08030422352288 0.08028600630622 0.0837508583514 0.1087732486699 0.18644212713185 0.33286559797169 0.52074598638206 0.72710570733537 0.77583969932491 0.75486522762561 0.67303981446137 0.40004291659698 0.29298168868242 0.26155120614653 0.25146656205764 0.25015937793473 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164428 0.1210788018143 0.09491478771424 0.08181274557137 0.08030422352288 0.08028600630621 0.08375085835135 0.10877324867075 0.18644212713732 0.33286559797587 0.52074598631895 0.72710570731528 0.77583969933484 0.75486522761783 0.67303981445861 0.40004291660135 0.29298168868435 0.26155120614651 0.25146656205755 0.25015937793474 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186214 0.13028058164429 0.12107880181429 0.09491478771424 0.08181274557138 0.08030422352298 0.08028600630614 0.08375085835158 0.10877324866776 0.18644212711944 0.33286559792422 0.52074598654457 0.72710570727496 0.77583969929978 0.75486522765405 0.67303981445991 0.40004291659758 0.29298168868904 0.26155120614953 0.25146656205751 0.25015937793467 0.25001399434792 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059891 0.17194958186213 0.13028058164429 0.12107880181428 0.09491478771408 0.08181274557124 0.08030422352293 0.08028600630638 0.08375085835111 0.10877324866343 0.1864421271254 0.33286559808565 0.52074599041727 0.72710570827109 0.77583969931145 0.75486522763433 0.67303981449936 0.40004291655694 0.2929816886609 0.2615512061487 0.2514665620601 0.25015937793462 0.25001399434786 0.25000103919294 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.2457864066649 0.22459027059892 0.17194958186217 0.13028058164417 0.1210788018144 0.09491478771465 0.08181274557141 0.08030422352021 0.08028600630578 0.08375085835127 0.10877324871115 0.186442127851 0.33286560094829 0.52074605931517 0.72710572426879 0.77583970103457 0.75486522627641 0.67303981426693 0.40004291686697 0.2929816886963 0.2615512061157 0.25146656205945 0.25015937793715 0.2500139943478 0.2500010391929 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.24578640666489 0.22459027059886 0.1719495818623 0.13028058164466 0.12107880181365 0.09491478771772 0.08181274557447 0.08030422352415 0.08028600630794 0.08375085834417 0.10877324888475 0.18644213961816 0.33286564951694 0.52074716030417 0.72710597834583 0.77583972802896 0.75486520568535 0.67303980960376 0.40004292053349 0.2929816896994 0.26155120630872 0.25146656203355 0.25015937793651 0.25001399434988 0.25000103919287 0.25000006696748 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422424 0.2457864066649 0.22459027059894 0.17194958186148 0.13028058164706 0.12107880181334 0.09491478770575 0.08181274556579 0.08030422354152 0.08028600631519 0.08375085774796 0.10877324688405 0.1864422970016 0.33286637649579 0.52076231435172 0.72710947010728 0.77584013399555 0.7548648944335 0.67303971879033 0.40004296918704 0.29298170489467 0.26155120965885 0.25146656226633 0.25015937791514 0.25001399435075 0.25000103919428 0.25000006696755 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422425 0.24578640666498 0.22459027060004 0.17194958186097 0.13028058163457 0.1210788018288 0.09491478773207 0.08181274557118 0.08030422324419 0.08028600589368 0.08375084187823 0.10877315556377 0.18644406478401 0.33287563289469 0.52093698516298 0.72714975718024 0.77584535912724 0.75486080049189 0.67303823305096 0.40004350088617 0.29298191227264 0.26155126285678 0.25146656614101 0.25015937817788 0.25001399433439 0.25000103919584 0.25000006696815 0.25000000382981 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422422 0.24578640666465 0.22459027059869 0.17194958188244 0.13028058163028 0.12107880174224 0.09491478860189 0.0818127464098 0.08030421555836 0.08028599407678 0.08375054220565 0.10877120925561 0.18646065896712 0.3329728991316 0.52255005330691 0.72752334675293 0.77590126585473 0.75481487073517 0.6730183663037 0.40004784185992 0.29298422708628 0.26155197095692 0.25146662191766 0.25015938219147 0.2500139945684 0.25000103918732 0.25000006696792 0.25000000382986 0.25000000017872 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796781 0.24941954422405 0.24578640666483 0.22459027060063 0.17194958206937 0.13028058152537 0.12107880007514 0.09491480533287 0.08181276615922 0.080304074041 0.0802857873644 0.08374607385788 0.10874008141473 0.18655816521801 0.3338079137592 0.53445953915439 0.73027464888599 0.77639631425737 0.75438813981363 0.67280702198473 0.4000745170771 0.29300492061077 0.26155948448957 0.25146727611752 0.25015943242878 0.25001399786941 0.25000103934002 0.25000006696587 0.25000000382913 0.25000000017868 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.2494195442247 0.24578640668564 0.2245902710163 0.1719495858211 0.13028057503551 0.12107877837064 0.09491507868178 0.08181311771677 0.08030188168518 0.08028317028521 0.08369431289296 0.10835909103529 0.18678200967823 0.33822739457309 0.56509804930323 0.73963122651044 0.77871479472273 0.75108215562254 0.67111739872193 0.40010159162153 0.29312164069861 0.26162293144625 0.25147345000595 0.25015994114557 0.25001403257611 0.25000104144976 0.2500000670816 0.25000000383308 0.25000000017875 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000545 0.24993780796813 0.24941954423273 0.24578640696582 0.22459027574065 0.17194962307515 0.13028044837214 0.12107854037092 0.09491701461105 0.08181669382118 0.08028745427604 0.08026304287216 0.08336989131035 0.10571710513544 0.1854699485584 0.34272734913075 0.75389271766202 0.75827847936538 0.79304190470975 0.73644568929578 0.6600928693058 0.40003933733924 0.29322961510311 0.26186300584657 0.25150079418991 0.25016249586954 0.25001422520564 0.2500010536775 0.25000006780299 0.2500000038777 0.25000000018079 0.24999999996619 0.25000000000185 0.25000000000345 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000538 0.24993780796683 0.24941954423858 0.24578640883183 0.22459031418851 0.17195004320215 0.1302786273737 0.12107744703077 0.09493163254343 0.08184999935865 0.0801738105826 0.08018232633173 0.0814038621147 0.08732687830424 0.15030856778209 0.33912014223095 0.74100108431256 0.7768064521836 0.74371959739328 0.67429099496566 0.61577901569113 0.38359683380794 0.29179307739894 0.26242758026869 0.25158815357034 0.25017075663693 0.25001489744996 0.25000109946775 0.25000007048326 0.25000000402831 0.25000000018912 0.24999999996634 0.2500000000015 0.25000000000352 0.24999999999979 0.24999999999986 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636532 0.24999455000482 0.24993780795726 0.24941954409213 0.24578640650736 0.22459028556407 0.17194981609243 0.13027913838724 0.12107311056476 0.09491230252401 0.08186198755406 0.08020652825778 0.08002110642218 0.08058055659613 0.08260176233764 0.10995195923351 0.28249557758317 0.73178319612072 0.73747203498238 0.65697338897285 0.59378869015643 0.58683029572656 0.37425047865585 0.2843996803848 0.26001591648468 0.25128440659357 0.25014066516588 0.25001246865599 0.25000093310414 0.25000006050462 0.25000000349163 0.25000000016476 0.24999999996679 0.2500000000022 0.25000000000327 0.24999999999976 0.24999999999988 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409288 0.24999959636521 0.24999455000279 0.24993780792565 0.24941954366517 0.24578640113599 0.22459022699618 0.17194979376969 0.13027916111821 0.12107151285104 0.09489414908113 0.08187613049969 0.08019146831599 0.08006285775269 0.08003868340375 0.08017442153682 0.08275530187249 0.19330208125084 0.76975653334217 0.39701549532285 0.32825762653642 0.36243293144105 0.35387153278297 0.27582308414669 0.26244193181823 0.25328784092154 0.2504149947315 0.25004530212744 0.25000403663062 0.25000030489015 0.25000001998456 0.2500000011298 0.25000000002454 0.24999999998031 0.25000000000565 0.25000000000128 0.24999999999966 0.24999999999998 0.25000000000002 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636529 0.2499945500043 0.24993780794877 0.24941954396041 0.2457864042797 0.22459025540917 0.1719497230817 0.13027942070635 0.12107246498811 0.0948980908688 0.08186806065284 0.08019779991802 0.08016216527887 0.08030649391728 0.08116601221463 0.08029757492042 0.22082766327957 0.81 0.25149507417092 0.25360630879849 0.25917897984458 0.26235382321713 0.26235327673602 0.25460126804249 0.25106523743048 0.2501269385684 0.25001305803327 0.25000113008556 0.25000008415464 0.25000000547674 0.25000000028449 0.24999999996271 0.24999999999818 0.250000000005 0.24999999999995 0.24999999999976 0.25000000000003 0.25000000000001 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636537 0.2499945500058 0.24993780797315 0.24941954432047 0.24578640997493 0.22459032933965 0.17194996708147 0.13027855906925 0.12107516233463 0.0949254930024 0.08186177846808 0.08017276725363 0.08016402021904 0.08148487599308 0.09349221242904 0.10742067660486 0.08 D/cons.2.00.000000.dat 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.19 0.19 0.19 0.19 0.19 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.25 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 0.0225 -D/cons.2.00.000050.dat 0.19 0.2552208436096 0.25452999304654 0.26263009638661 0.24380638426214 0.2631715684653 0.25713253374367 0.25141241936026 0.25018475874456 0.2500197954756 0.25000174625902 0.25000013072532 0.25000000848295 0.25000000045608 0.24999999997526 0.24999999999258 0.25000000000554 0.2500000000003 0.24999999999971 0.25000000000002 0.25000000000001 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.2499995963654 0.24999455000644 0.24993780798379 0.24941954446554 0.24578641836326 0.224518891862 0.1750454792715 0.10254428276082 0.04291411692753 0.02676299736433 0.02302504636431 0.02254912078853 0.02254602010636 0.02288204989281 0.02635681697677 0.03423352975896 0.0225 0.1805572859672 0.24944197324291 0.26773402720492 0.23823522342245 0.23491514696768 0.26504798523279 0.2629962334623 0.25342837514063 0.2504365967241 0.25004828865626 0.25000433922054 0.25000032929838 0.2500000215542 0.25000000121351 0.25000000002965 0.24999999997911 0.25000000000566 0.25000000000139 0.24999999999965 0.24999999999998 0.25000000000002 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636542 0.24999455000673 0.24993780798783 0.24941954448248 0.2457864168858 0.22451886131485 0.17504518499227 0.10254515853762 0.04291340824477 0.02675636752571 0.02302484690138 0.02255601731127 0.0225425149927 0.0225875680626 0.0228277369542 0.02258293079796 0.05602070548185 0.17163367047563 0.17280749890114 0.15594562976503 0.15098234950374 0.1379973218688 0.23354511856216 0.27826989460349 0.26021212375348 0.2512992867511 0.25014082750364 0.25001240998114 0.25000092451259 0.25000005976847 0.25000000344564 0.25000000016179 0.24999999996681 0.25000000000232 0.25000000000325 0.24999999999976 0.24999999999988 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.2499999740929 0.24999959636548 0.24999455000797 0.24993780800832 0.24941954477016 0.24578642045433 0.2245189005626 0.17504509105882 0.10254515559642 0.04291312866481 0.02675810400578 0.02302143970173 0.02255587746577 0.02249838539866 0.02250245924702 0.0225466770159 0.02326792705623 0.05034450078984 0.17373282563648 0.18212264995216 0.17427767458393 0.15709443746136 0.14232604615753 0.23842973683663 0.28428598668229 0.26236866393965 0.25157458132993 0.25016948929534 0.25001480775463 0.250001093803 0.25000007016325 0.25000000401122 0.25000000018836 0.24999999996635 0.25000000000152 0.25000000000352 0.24999999999978 0.24999999999986 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636539 0.24999455000625 0.24993780798096 0.24941954442242 0.24578641740381 0.22451887731014 0.17504533193229 0.10254463916733 0.04291349638867 0.02676037441037 0.02302420862686 0.02255615100613 0.02249735655551 0.02265267041772 0.02320873806533 0.03058177165107 0.06878241217105 0.17672593328875 0.1777486788669 0.18582227162687 0.17256193894377 0.15402415014781 0.24681389055537 0.28691490809582 0.26198225944108 0.25149907887133 0.25016237374022 0.25001421694 0.2500010531317 0.25000006776889 0.25000000387605 0.25000000018074 0.24999999996619 0.25000000000185 0.25000000000345 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636536 0.24999455000559 0.24993780796994 0.24941954427912 0.24578641627858 0.22451886970988 0.17504558994498 0.10254420461609 0.04291455751773 0.02676460535281 0.02302294283358 0.02254674238107 0.02254881145916 0.02287782027125 0.02450858955138 0.04011108594757 0.08054264541941 0.13232534466556 0.17339123025241 0.1825647516134 0.17605924908538 0.15675171113725 0.24849786480597 0.28705651250704 0.26177135908704 0.25147380260584 0.25015998990809 0.25001403603411 0.25000104164172 0.25000006709255 0.25000000383375 0.25000000017878 0.24999999996625 0.2500000000019 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000546 0.24993780796832 0.24941954423532 0.24578641391607 0.22451882743485 0.17504517866077 0.10254560761555 0.04291451066098 0.02676063667611 0.02301262470689 0.02258000209657 0.02257239445827 0.02343327191813 0.02958845023307 0.04863518558331 0.08127545109449 0.12507472555109 0.17121441463878 0.18209537827551 0.17693678968583 0.15714816124178 0.2487138021526 0.28698597918238 0.26170576882037 0.2514672749311 0.25015944379431 0.25001399859255 0.25000103937888 0.2500000669682 0.25000000382922 0.25000000017868 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000544 0.24993780796792 0.24941954422586 0.24578641354998 0.22451882082658 0.17504513732694 0.10254575740388 0.04291462414961 0.02676016191968 0.02301158832787 0.02258470688751 0.02257926125709 0.02353322347426 0.03034582200371 0.04901493160242 0.08031463657436 0.12234650379249 0.17063719639159 0.18199851712886 0.1770595627048 0.15719796849352 0.24873300503761 0.28696581933089 0.2616970008627 0.25146649761311 0.25015938361589 0.25001399464983 0.25000103919179 0.25000006696793 0.25000000382985 0.25000000017872 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796784 0.24941954422455 0.24578641352233 0.22451882023588 0.1750451340501 0.1025457676675 0.04291464075071 0.0267600838973 0.0230114851081 0.02258550201583 0.02258032349655 0.02355093837281 0.03046620244114 0.0489990958989 0.07930800368037 0.12198247709188 0.17056142480975 0.18198814538627 0.17707355966448 0.15720298906388 0.24873410535828 0.28696351136976 0.26169610586386 0.25146642525927 0.25015937836472 0.25001399433955 0.25000103919564 0.25000006696811 0.25000000382981 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.24578641351812 0.22451882020687 0.17504513385657 0.10254576813931 0.04291464263544 0.02676007904437 0.02301147819921 0.02258555963099 0.02258042894761 0.02355266301382 0.03047744995002 0.04898277581396 0.07912014127225 0.12194377886622 0.17055354085081 0.1819872284631 0.17707485303707 0.15720340335229 0.24873412493506 0.28696329126192 0.26169603231337 0.25146641974277 0.25015937798509 0.25001399435005 0.25000103919429 0.25000006696756 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422439 0.24578641351806 0.22451882020674 0.1750451338239 0.10254576815553 0.04291464280213 0.02676007878023 0.0230114777665 0.02258556331515 0.02258043741576 0.02355280126401 0.03047833468126 0.04898002910857 0.07909854688397 0.12194048728163 0.1705528802863 0.18198716084339 0.17707495305635 0.15720343212773 0.2487341212037 0.2869632742629 0.2616960272299 0.25146641937494 0.25015937799846 0.25001399435006 0.25000103919291 0.25000006696748 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.24578641351803 0.22451882020535 0.17504513381888 0.10254576816752 0.04291464280679 0.02676007877257 0.023011477748 0.02258556350781 0.02258043798798 0.02355281059834 0.03047839353434 0.04897971296489 0.07909652642722 0.12194025295823 0.17055283383656 0.18198715655322 0.17707495967393 0.1572034338691 0.24873412062036 0.28696327311005 0.26169602690233 0.2514664193924 0.25015937800117 0.25001399434786 0.2500010391929 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020511 0.17504513382143 0.10254576816657 0.04291464280208 0.02676007877712 0.0230114777512 0.02258556350821 0.02258043801028 0.02355281114545 0.03047839692068 0.0489796849593 0.07909637064281 0.12194023859271 0.17055283100678 0.18198715627943 0.17707496008764 0.1572034339911 0.24873412059431 0.28696327305227 0.26169602692743 0.25146641939607 0.25015937799835 0.25001399434786 0.25000103919294 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020511 0.17504513382144 0.10254576816576 0.04291464280321 0.0267600787765 0.02301147775025 0.02258556350551 0.02258043800529 0.02355281116362 0.03047839707334 0.04897968289944 0.07909636042514 0.12194023780039 0.17055283083201 0.18198715628678 0.17707496010008 0.1572034339725 0.24873412061063 0.28696327308179 0.26169602693315 0.25146641939306 0.25015937799828 0.25001399434792 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382131 0.10254576816584 0.04291464280351 0.0267600787762 0.02301147774997 0.02258556350667 0.02258043800632 0.02355281115957 0.03047839707425 0.04897968277325 0.07909635983307 0.12194023775634 0.17055283084528 0.18198715629178 0.17707496009004 0.15720343397058 0.24873412060813 0.28696327307817 0.26169602692954 0.25146641939295 0.25015937799837 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816588 0.04291464280344 0.02676007877623 0.02301147775003 0.0225855635068 0.02258043800679 0.02355281116083 0.03047839707247 0.04897968277625 0.07909635980175 0.1219402377701 0.17055283084825 0.18198715628985 0.17707496009194 0.15720343397246 0.24873412060691 0.28696327307607 0.26169602692931 0.25146641939306 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382133 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116113 0.03047839707351 0.04897968277934 0.07909635981337 0.12194023776903 0.17055283084649 0.18198715628963 0.17707496009254 0.1572034339725 0.24873412060706 0.28696327307636 0.26169602692947 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.0225804380067 0.02355281116105 0.03047839707351 0.04897968277817 0.0790963598121 0.12194023776806 0.17055283084639 0.18198715628972 0.17707496009241 0.15720343397241 0.2487341206071 0.28696327307643 0.26169602692946 0.25146641939304 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116104 0.03047839707345 0.04897968277799 0.07909635981128 0.12194023776816 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397241 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981139 0.12194023776819 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707347 0.04897968277805 0.07909635981142 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776819 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707347 0.04897968277806 0.07909635981142 0.12194023776816 0.17055283084647 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707347 0.04897968277805 0.07909635981139 0.12194023776806 0.17055283084636 0.18198715628972 0.17707496009241 0.15720343397242 0.24873412060711 0.28696327307643 0.26169602692946 0.25146641939304 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707345 0.04897968277797 0.07909635981128 0.12194023776915 0.17055283084654 0.18198715628958 0.17707496009252 0.15720343397244 0.24873412060699 0.28696327307637 0.26169602692947 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707347 0.04897968277823 0.07909635981222 0.12194023777003 0.17055283084864 0.18198715629002 0.17707496009203 0.15720343397243 0.24873412060698 0.28696327307604 0.26169602692935 0.25146641939306 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116104 0.03047839707372 0.04897968277964 0.07909635981323 0.12194023775527 0.17055283084393 0.18198715629235 0.17707496009021 0.15720343397198 0.24873412060941 0.2869632730779 0.26169602692934 0.25146641939298 0.25015937799837 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350677 0.02258043800669 0.0235528111611 0.03047839707292 0.04897968277503 0.07909635980087 0.12194023780808 0.17055283083449 0.18198715628412 0.17707496009872 0.15720343397208 0.24873412060883 0.28696327308234 0.2616960269324 0.25146641939293 0.2501593779983 0.25001399434792 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382131 0.10254576816587 0.04291464280344 0.0267600787762 0.02301147775 0.02258556350675 0.02258043800675 0.02355281116097 0.03047839707157 0.04897968277663 0.07909635983941 0.12194023871402 0.17055283106822 0.18198715628687 0.17707496009397 0.15720343397976 0.24873412058289 0.28696327305538 0.26169602693137 0.25146641939552 0.25015937799825 0.25001399434786 0.25000103919294 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382135 0.10254576816579 0.04291464280348 0.02676007877636 0.02301147775005 0.02258556350599 0.02258043800658 0.02355281116102 0.03047839708394 0.048979682963 0.07909636052253 0.1219402548373 0.17055283482212 0.18198715669088 0.17707495977469 0.15720343394602 0.2487341207098 0.28696327309024 0.2616960268984 0.25146641939487 0.25015937800078 0.25001399434779 0.2500010391929 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020507 0.17504513382149 0.10254576816614 0.04291464280316 0.02676007877725 0.02301147775091 0.0225855635071 0.02258043800719 0.02355281115897 0.03047839711572 0.04897968597485 0.07909637211845 0.1219405124758 0.17055289445287 0.18198716302144 0.17707495493038 0.1572034331935 0.24873412211057 0.28696327405395 0.26169602709638 0.25146641936897 0.25015937800014 0.25001399434987 0.25000103919287 0.25000006696748 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.24578641351801 0.22451882020516 0.17504513382066 0.10254576816769 0.04291464280318 0.02676007877386 0.02301147774847 0.02258556351198 0.02258043800923 0.02355281099188 0.0304783962322 0.04897972603928 0.07909654570452 0.1219440587453 0.17055371405147 0.18198725823044 0.1770748817057 0.15720341741614 0.24873413798849 0.28696328862102 0.26169603051382 0.25146641960168 0.25015937797877 0.25001399435075 0.25000103919428 0.25000006696755 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422439 0.24578641351809 0.22451882020628 0.17504513382015 0.10254576815901 0.04291464280841 0.02676007878118 0.02301147775001 0.02258556342834 0.02258043789067 0.02355280655324 0.03047836538403 0.04898017240972 0.07909875564504 0.12198494038067 0.17056317194642 0.18198848367396 0.17707391877365 0.15720314744586 0.24873426759852 0.28696348650951 0.26169608466668 0.25146642347591 0.25015937824151 0.25001399433439 0.25000103919584 0.25000006696815 0.25000000382981 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422436 0.24578641351776 0.22451882020472 0.17504513384132 0.10254576815527 0.042914642775 0.02676007903083 0.02301147798641 0.02258556126703 0.02258043456743 0.02355272263155 0.03047775225452 0.04898431846663 0.07912195730133 0.12236264678738 0.17065089793965 0.18200159582682 0.17706312007272 0.1571994412005 0.24873454696117 0.28696567619018 0.26169680384032 0.25146647925477 0.2501593822551 0.25001399456839 0.25000103918732 0.25000006696792 0.25000000382986 0.25000000017872 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796781 0.24941954422419 0.24578641351794 0.22451882020603 0.17504513401711 0.10254576797525 0.04291464221414 0.02676008384057 0.02301148355318 0.02258552146488 0.02258037642982 0.02355147190307 0.03046826969619 0.04900767472146 0.07932078862139 0.12515469337358 0.17129735221374 0.1821177071434 0.17696284744377 0.15715953518144 0.24872670854273 0.28698498656592 0.26170441293486 0.25146713354174 0.2501594324924 0.2500139978694 0.25000103934002 0.25000006696587 0.25000000382913 0.25000000017868 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422484 0.24578641353875 0.22451882061406 0.17504513759201 0.10254576115543 0.04291463546013 0.02676016243657 0.02301158262355 0.02258490486527 0.02257964038416 0.02353694996583 0.03035617022177 0.04904936586964 0.08036233453287 0.13238171910142 0.17349649772843 0.18266159245192 0.17618726067254 0.15683362073734 0.24859267765731 0.28708799755228 0.2617684614083 0.25147330899953 0.25015994120902 0.25001403257611 0.25000104144976 0.2500000670816 0.25000000383308 0.25000000017875 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000545 0.24993780796813 0.24941954423287 0.24578641381896 0.2245188252106 0.17504517364117 0.10254564133688 0.04291456841505 0.02676071968442 0.02301259004152 0.02258084716131 0.02257397967226 0.02344582154213 0.02961047686602 0.04867872551469 0.081337721805 0.17684109227897 0.17786964325622 0.18602284872288 0.1727518350878 0.1545463536078 0.2474694405446 0.28713697228158 0.2620074851595 0.25150066725486 0.25016249593139 0.25001422520564 0.2500010536775 0.25000006780299 0.2500000038777 0.25000000018079 0.24999999996619 0.25000000000185 0.25000000000346 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000538 0.24993780796683 0.24941954423872 0.24578641568536 0.22451886179991 0.17504557932746 0.10254431811255 0.04291471376983 0.02676494336857 0.02302195780073 0.02254888483764 0.02255127908177 0.02289477761374 0.02453729175557 0.04014708081492 0.0806039656806 0.17381470146265 0.1822140040957 0.17445746365574 0.15808777345243 0.14438051421487 0.24015334388181 0.28549433261155 0.26255148976694 0.25158818085677 0.25017075667104 0.25001489744996 0.25000109946775 0.25000007048326 0.25000000402831 0.25000000018912 0.24999999996634 0.2500000000015 0.25000000000352 0.24999999999979 0.24999999999986 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636532 0.24999455000482 0.24993780795726 0.24941954409227 0.24578641336075 0.22451883418119 0.17504536366859 0.10254468919642 0.04291365902379 0.02675924526388 0.02302535904933 0.02255808672752 0.02250593617926 0.02266326030643 0.0232262820961 0.03060375098148 0.06882688384951 0.17165054886759 0.17286560088104 0.15644859094318 0.15299922561646 0.14115554804605 0.23290680512437 0.27889331266522 0.26006958070619 0.25128434571861 0.25014066517787 0.25001246865599 0.25000093310414 0.25000006050462 0.25000000349163 0.25000000016476 0.24999999996679 0.2500000000022 0.25000000000327 0.24999999999976 0.24999999999988 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409288 0.24999959636521 0.24999455000279 0.24993780792565 0.24941954366531 0.24578640798965 0.22451877449029 0.17504533014258 0.10254491847989 0.04291339117372 0.02675376658879 0.02302936486975 0.0225538511482 0.02251767874297 0.02251087975836 0.0225490558838 0.02327347608134 0.05035517600038 0.18055984486024 0.24953167009488 0.26891121696206 0.23756683948766 0.23270325515651 0.26063316342068 0.26223529277413 0.25330321172956 0.25041500448807 0.25004530212903 0.25000403663062 0.25000030489015 0.25000001998456 0.2500000011298 0.25000000002454 0.24999999998031 0.25000000000565 0.25000000000128 0.24999999999966 0.24999999999998 0.25000000000002 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636529 0.2499945500043 0.24993780794877 0.24941954396055 0.24578641113309 0.22451880410574 0.17504526730014 0.10254501044335 0.04291353561054 0.02675499896086 0.02302708807961 0.02255563193197 0.02254560947446 0.02258632831236 0.02282892791406 0.02258372043984 0.05602616191664 0.19 0.25150064756164 0.25360859309762 0.25778526825266 0.26143847044409 0.26168815549714 0.25459756405541 0.2510652567836 0.25012693848997 0.25001305803327 0.25000113008556 0.25000008415464 0.25000000547674 0.25000000028449 0.24999999996271 0.24999999999818 0.250000000005 0.24999999999995 0.24999999999976 0.25000000000003 0.25000000000001 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636537 0.2499945500058 0.24993780797315 0.24941954432061 0.24578641682832 0.22451887814885 0.17504551751981 0.1025441956673 0.04291424349001 0.02676314328288 0.02302528401925 0.02254859142523 0.0225461312361 0.02291892992748 0.02635068309367 0.03451089332715 0.0225 +D/cons.2.00.000050.dat 0.19 0.2552208436096 0.25452999304654 0.26263009638661 0.24380638426214 0.2631715684653 0.25713253374367 0.25141241936026 0.25018475874456 0.2500197954756 0.25000174625902 0.25000013072532 0.25000000848295 0.25000000045608 0.24999999997526 0.24999999999258 0.25000000000554 0.2500000000003 0.24999999999971 0.25000000000002 0.25000000000001 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.2499995963654 0.24999455000644 0.24993780798379 0.24941954446554 0.24578641836326 0.224518891862 0.1750454792715 0.10254428276082 0.04291411692753 0.02676299736433 0.02302504636431 0.02254912078853 0.02254602010636 0.02288204989281 0.02635681697677 0.03423352975896 0.0225 0.1805572859672 0.24944197324291 0.26773402720492 0.23823522342245 0.23491514696768 0.26504798523279 0.2629962334623 0.25342837514063 0.2504365967241 0.25004828865626 0.25000433922054 0.25000032929838 0.2500000215542 0.25000000121351 0.25000000002965 0.24999999997911 0.25000000000566 0.25000000000139 0.24999999999965 0.24999999999998 0.25000000000002 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636542 0.24999455000673 0.24993780798783 0.24941954448248 0.2457864168858 0.22451886131485 0.17504518499227 0.10254515853762 0.04291340824477 0.02675636752571 0.02302484690138 0.02255601731127 0.0225425149927 0.0225875680626 0.0228277369542 0.02258293079796 0.05602070548185 0.17163367047563 0.17280749890114 0.15594562976503 0.15098234950374 0.1379973218688 0.23354511856216 0.27826989460349 0.26021212375348 0.2512992867511 0.25014082750364 0.25001240998114 0.25000092451259 0.25000005976847 0.25000000344564 0.25000000016179 0.24999999996681 0.25000000000232 0.25000000000325 0.24999999999976 0.24999999999988 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.2499999740929 0.24999959636548 0.24999455000797 0.24993780800832 0.24941954477016 0.24578642045433 0.2245189005626 0.17504509105882 0.10254515559642 0.04291312866481 0.02675810400578 0.02302143970173 0.02255587746577 0.02249838539866 0.02250245924702 0.0225466770159 0.02326792705623 0.05034450078984 0.17373282563648 0.18212264995216 0.17427767458393 0.15709443746136 0.14232604615753 0.23842973683663 0.28428598668229 0.26236866393965 0.25157458132993 0.25016948929534 0.25001480775463 0.250001093803 0.25000007016325 0.25000000401122 0.25000000018836 0.24999999996635 0.25000000000152 0.25000000000352 0.24999999999978 0.24999999999986 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636539 0.24999455000625 0.24993780798096 0.24941954442242 0.24578641740381 0.22451887731014 0.17504533193229 0.10254463916733 0.04291349638867 0.02676037441037 0.02302420862686 0.02255615100613 0.02249735655551 0.02265267041772 0.02320873806533 0.03058177165107 0.06878241217105 0.17672593328875 0.1777486788669 0.18582227162687 0.17256193894377 0.15402415014781 0.24681389055537 0.28691490809582 0.26198225944108 0.25149907887133 0.25016237374022 0.25001421694 0.2500010531317 0.25000006776889 0.25000000387605 0.25000000018074 0.24999999996619 0.25000000000185 0.25000000000345 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636536 0.24999455000559 0.24993780796994 0.24941954427912 0.24578641627858 0.22451886970988 0.17504558994498 0.10254420461609 0.04291455751773 0.02676460535281 0.02302294283358 0.02254674238107 0.02254881145916 0.02287782027125 0.02450858955138 0.04011108594757 0.08054264541941 0.13232534466556 0.17339123025241 0.1825647516134 0.17605924908538 0.15675171113725 0.24849786480597 0.28705651250704 0.26177135908704 0.25147380260584 0.25015998990809 0.25001403603411 0.25000104164172 0.25000006709255 0.25000000383375 0.25000000017878 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000546 0.24993780796832 0.24941954423531 0.24578641391607 0.22451882743485 0.17504517866077 0.10254560761555 0.04291451066098 0.02676063667611 0.02301262470689 0.02258000209657 0.02257239445827 0.02343327191813 0.02958845023307 0.04863518558331 0.08127545109449 0.12507472555109 0.17121441463878 0.18209537827551 0.17693678968583 0.15714816124178 0.2487138021526 0.28698597918238 0.26170576882037 0.2514672749311 0.25015944379431 0.25001399859255 0.25000103937888 0.2500000669682 0.25000000382922 0.25000000017868 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000544 0.24993780796792 0.24941954422586 0.24578641354998 0.22451882082658 0.17504513732694 0.10254575740388 0.04291462414961 0.02676016191968 0.02301158832787 0.02258470688751 0.02257926125709 0.02353322347426 0.03034582200371 0.04901493160242 0.08031463657436 0.12234650379249 0.17063719639159 0.18199851712886 0.1770595627048 0.15719796849352 0.24873300503761 0.28696581933089 0.2616970008627 0.25146649761311 0.25015938361589 0.25001399464983 0.25000103919179 0.25000006696793 0.25000000382985 0.25000000017872 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796784 0.24941954422455 0.24578641352233 0.22451882023588 0.1750451340501 0.1025457676675 0.04291464075071 0.0267600838973 0.0230114851081 0.02258550201583 0.02258032349655 0.02355093837281 0.03046620244114 0.0489990958989 0.07930800368037 0.12198247709188 0.17056142480975 0.18198814538627 0.17707355966448 0.15720298906388 0.24873410535828 0.28696351136976 0.26169610586386 0.25146642525927 0.25015937836472 0.25001399433955 0.25000103919564 0.25000006696811 0.25000000382981 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.24578641351812 0.22451882020687 0.17504513385657 0.10254576813931 0.04291464263544 0.02676007904437 0.02301147819921 0.02258555963099 0.02258042894761 0.02355266301382 0.03047744995002 0.04898277581396 0.07912014127225 0.12194377886622 0.17055354085081 0.1819872284631 0.17707485303707 0.15720340335229 0.24873412493506 0.28696329126192 0.26169603231337 0.25146641974277 0.25015937798509 0.25001399435005 0.25000103919429 0.25000006696756 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422439 0.24578641351806 0.22451882020674 0.1750451338239 0.10254576815553 0.04291464280213 0.02676007878023 0.0230114777665 0.02258556331515 0.02258043741576 0.02355280126401 0.03047833468126 0.04898002910857 0.07909854688397 0.12194048728163 0.1705528802863 0.18198716084339 0.17707495305635 0.15720343212773 0.2487341212037 0.2869632742629 0.2616960272299 0.25146641937494 0.25015937799846 0.25001399435006 0.25000103919291 0.25000006696748 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.24578641351803 0.22451882020535 0.17504513381888 0.10254576816752 0.04291464280679 0.02676007877257 0.023011477748 0.02258556350781 0.02258043798798 0.02355281059834 0.03047839353434 0.04897971296489 0.07909652642722 0.12194025295823 0.17055283383656 0.18198715655322 0.17707495967393 0.1572034338691 0.24873412062037 0.28696327311005 0.26169602690233 0.2514664193924 0.25015937800117 0.25001399434786 0.2500010391929 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020511 0.17504513382143 0.10254576816657 0.04291464280208 0.02676007877712 0.0230114777512 0.02258556350821 0.02258043801028 0.02355281114545 0.03047839692068 0.0489796849593 0.07909637064281 0.12194023859271 0.17055283100678 0.18198715627943 0.17707496008764 0.1572034339911 0.24873412059431 0.28696327305227 0.26169602692743 0.25146641939607 0.25015937799835 0.25001399434786 0.25000103919294 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020511 0.17504513382144 0.10254576816576 0.04291464280321 0.0267600787765 0.02301147775025 0.02258556350551 0.02258043800529 0.02355281116362 0.03047839707334 0.04897968289944 0.07909636042514 0.12194023780039 0.17055283083201 0.18198715628678 0.17707496010008 0.1572034339725 0.24873412061063 0.28696327308179 0.26169602693315 0.25146641939306 0.25015937799828 0.25001399434792 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382131 0.10254576816584 0.04291464280351 0.0267600787762 0.02301147774997 0.02258556350667 0.02258043800632 0.02355281115957 0.03047839707425 0.04897968277325 0.07909635983307 0.12194023775634 0.17055283084528 0.18198715629178 0.17707496009004 0.15720343397058 0.24873412060813 0.28696327307817 0.26169602692954 0.25146641939295 0.25015937799837 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816588 0.04291464280344 0.02676007877623 0.02301147775003 0.0225855635068 0.02258043800679 0.02355281116083 0.03047839707247 0.04897968277625 0.07909635980175 0.1219402377701 0.17055283084825 0.18198715628985 0.17707496009194 0.15720343397246 0.24873412060691 0.28696327307607 0.26169602692931 0.25146641939306 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382133 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116113 0.03047839707351 0.04897968277934 0.07909635981337 0.12194023776903 0.17055283084649 0.18198715628963 0.17707496009254 0.1572034339725 0.24873412060706 0.28696327307636 0.26169602692947 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.0225804380067 0.02355281116105 0.03047839707351 0.04897968277817 0.0790963598121 0.12194023776806 0.17055283084639 0.18198715628972 0.17707496009241 0.15720343397241 0.2487341206071 0.28696327307643 0.26169602692946 0.25146641939304 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116104 0.03047839707345 0.04897968277799 0.07909635981128 0.12194023776816 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397241 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981139 0.12194023776819 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707347 0.04897968277805 0.07909635981142 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776818 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707346 0.04897968277805 0.07909635981141 0.12194023776819 0.17055283084646 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707347 0.04897968277806 0.07909635981142 0.12194023776816 0.17055283084647 0.18198715628972 0.1770749600924 0.15720343397242 0.24873412060709 0.2869632730764 0.26169602692946 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707347 0.04897968277805 0.07909635981139 0.12194023776806 0.17055283084636 0.18198715628972 0.17707496009241 0.15720343397242 0.24873412060711 0.28696327307643 0.26169602692946 0.25146641939304 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707345 0.04897968277797 0.07909635981128 0.12194023776915 0.17055283084654 0.18198715628958 0.17707496009252 0.15720343397244 0.24873412060699 0.28696327307637 0.26169602692947 0.25146641939305 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116105 0.03047839707347 0.04897968277823 0.07909635981222 0.12194023777003 0.17055283084864 0.18198715629002 0.17707496009203 0.15720343397243 0.24873412060698 0.28696327307604 0.26169602692935 0.25146641939306 0.25015937799836 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350674 0.02258043800671 0.02355281116104 0.03047839707372 0.04897968277964 0.07909635981323 0.12194023775527 0.17055283084393 0.18198715629235 0.17707496009021 0.15720343397198 0.24873412060941 0.2869632730779 0.26169602692934 0.25146641939298 0.25015937799837 0.25001399434791 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382132 0.10254576816587 0.04291464280344 0.02676007877624 0.02301147775004 0.02258556350677 0.02258043800669 0.0235528111611 0.03047839707292 0.04897968277503 0.07909635980087 0.12194023780808 0.17055283083449 0.18198715628412 0.17707496009872 0.15720343397208 0.24873412060883 0.28696327308234 0.2616960269324 0.25146641939293 0.2501593779983 0.25001399434792 0.25000103919293 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382131 0.10254576816587 0.04291464280344 0.0267600787762 0.02301147775 0.02258556350675 0.02258043800675 0.02355281116097 0.03047839707157 0.04897968277663 0.07909635983941 0.12194023871402 0.17055283106822 0.18198715628687 0.17707496009397 0.15720343397976 0.24873412058289 0.28696327305538 0.26169602693137 0.25146641939552 0.25015937799825 0.25001399434786 0.25000103919294 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020512 0.17504513382135 0.10254576816579 0.04291464280348 0.02676007877636 0.02301147775005 0.02258556350599 0.02258043800658 0.02355281116102 0.03047839708394 0.048979682963 0.07909636052253 0.1219402548373 0.17055283482212 0.18198715669088 0.17707495977469 0.15720343394602 0.2487341207098 0.28696327309024 0.2616960268984 0.25146641939487 0.25015937800078 0.25001399434779 0.2500010391929 0.2500000669675 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.245786413518 0.22451882020507 0.17504513382149 0.10254576816614 0.04291464280316 0.02676007877725 0.02301147775091 0.0225855635071 0.02258043800719 0.02355281115897 0.03047839711572 0.04897968597485 0.07909637211845 0.1219405124758 0.17055289445287 0.18198716302144 0.17707495493038 0.1572034331935 0.24873412211057 0.28696327405395 0.26169602709638 0.25146641936897 0.25015937800014 0.25001399434987 0.25000103919287 0.25000006696748 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422438 0.24578641351801 0.22451882020515 0.17504513382066 0.10254576816769 0.04291464280318 0.02676007877386 0.02301147774847 0.02258556351198 0.02258043800923 0.02355281099188 0.0304783962322 0.04897972603928 0.07909654570452 0.1219440587453 0.17055371405147 0.18198725823044 0.1770748817057 0.15720341741614 0.24873413798849 0.28696328862102 0.26169603051382 0.25146641960168 0.25015937797877 0.25001399435075 0.25000103919428 0.25000006696755 0.25000000382976 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422439 0.24578641351809 0.22451882020628 0.17504513382015 0.10254576815901 0.04291464280841 0.02676007878118 0.02301147775001 0.02258556342834 0.02258043789067 0.02355280655324 0.03047836538403 0.04898017240972 0.07909875564504 0.12198494038067 0.17056317194642 0.18198848367396 0.17707391877365 0.15720314744586 0.24873426759852 0.28696348650951 0.26169608466668 0.25146642347591 0.25015937824151 0.25001399433439 0.25000103919584 0.25000006696815 0.25000000382981 0.25000000017871 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422436 0.24578641351776 0.22451882020472 0.17504513384132 0.10254576815527 0.042914642775 0.02676007903083 0.02301147798641 0.02258556126703 0.02258043456743 0.02355272263155 0.03047775225452 0.04898431846663 0.07912195730133 0.12236264678738 0.17065089793965 0.18200159582682 0.17706312007272 0.1571994412005 0.24873454696117 0.28696567619018 0.26169680384032 0.25146647925477 0.2501593822551 0.25001399456839 0.25000103918732 0.25000006696792 0.25000000382986 0.25000000017872 0.24999999996624 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796781 0.24941954422419 0.24578641351794 0.22451882020603 0.17504513401711 0.10254576797525 0.04291464221414 0.02676008384057 0.02301148355318 0.02258552146488 0.02258037642982 0.02355147190307 0.03046826969618 0.04900767472146 0.07932078862139 0.12515469337358 0.17129735221374 0.1821177071434 0.17696284744377 0.15715953518144 0.24872670854273 0.28698498656592 0.26170441293486 0.25146713354174 0.2501594324924 0.2500139978694 0.25000103934002 0.25000006696587 0.25000000382913 0.25000000017868 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000543 0.24993780796783 0.24941954422484 0.24578641353875 0.22451882061406 0.17504513759201 0.10254576115543 0.04291463546013 0.02676016243657 0.02301158262355 0.02258490486527 0.02257964038416 0.02353694996583 0.03035617022177 0.04904936586964 0.08036233453287 0.13238171910142 0.17349649772843 0.18266159245192 0.17618726067254 0.15683362073734 0.24859267765731 0.28708799755228 0.2617684614083 0.25147330899953 0.25015994120902 0.25001403257611 0.25000104144976 0.2500000670816 0.25000000383308 0.25000000017875 0.24999999996625 0.25000000000191 0.25000000000343 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000545 0.24993780796813 0.24941954423287 0.24578641381896 0.2245188252106 0.17504517364117 0.10254564133688 0.04291456841505 0.02676071968442 0.02301259004152 0.02258084716131 0.02257397967226 0.02344582154213 0.02961047686602 0.04867872551469 0.081337721805 0.17684109227897 0.17786964325622 0.18602284872288 0.1727518350878 0.1545463536078 0.2474694405446 0.28713697228158 0.2620074851595 0.25150066725486 0.25016249593139 0.25001422520564 0.2500010536775 0.25000006780299 0.2500000038777 0.25000000018079 0.24999999996619 0.25000000000185 0.25000000000345 0.24999999999977 0.24999999999987 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636535 0.24999455000538 0.24993780796683 0.24941954423872 0.24578641568536 0.22451886179991 0.17504557932746 0.10254431811255 0.04291471376983 0.02676494336857 0.02302195780073 0.02254888483764 0.02255127908177 0.02289477761374 0.02453729175557 0.04014708081492 0.0806039656806 0.17381470146265 0.1822140040957 0.17445746365574 0.15808777345243 0.14438051421487 0.24015334388181 0.28549433261155 0.26255148976694 0.25158818085677 0.25017075667104 0.25001489744996 0.25000109946775 0.25000007048326 0.25000000402831 0.25000000018912 0.24999999996634 0.2500000000015 0.25000000000352 0.24999999999979 0.24999999999986 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636532 0.24999455000482 0.24993780795726 0.24941954409227 0.24578641336075 0.22451883418119 0.17504536366859 0.10254468919642 0.04291365902379 0.02675924526388 0.02302535904933 0.02255808672752 0.02250593617926 0.02266326030643 0.0232262820961 0.03060375098148 0.06882688384951 0.17165054886759 0.17286560088104 0.15644859094318 0.15299922561646 0.14115554804605 0.23290680512437 0.27889331266522 0.26006958070619 0.25128434571861 0.25014066517787 0.25001246865599 0.25000093310414 0.25000006050462 0.25000000349163 0.25000000016476 0.24999999996679 0.2500000000022 0.25000000000327 0.24999999999976 0.24999999999988 0.25000000000003 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409288 0.24999959636521 0.24999455000279 0.24993780792565 0.24941954366531 0.24578640798965 0.22451877449029 0.17504533014258 0.10254491847989 0.04291339117372 0.02675376658879 0.02302936486975 0.0225538511482 0.02251767874297 0.02251087975836 0.0225490558838 0.02327347608134 0.05035517600038 0.18055984486024 0.24953167009488 0.26891121696206 0.23756683948766 0.23270325515651 0.26063316342068 0.26223529277413 0.25330321172956 0.25041500448807 0.25004530212903 0.25000403663062 0.25000030489015 0.25000001998456 0.2500000011298 0.25000000002454 0.24999999998031 0.25000000000565 0.25000000000128 0.24999999999966 0.24999999999998 0.25000000000002 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636529 0.2499945500043 0.24993780794877 0.24941954396055 0.24578641113309 0.22451880410574 0.17504526730014 0.10254501044335 0.04291353561054 0.02675499896086 0.02302708807961 0.02255563193197 0.02254560947446 0.02258632831236 0.02282892791406 0.02258372043984 0.05602616191664 0.19 0.25150064756164 0.25360859309762 0.25778526825266 0.26143847044409 0.26168815549714 0.25459756405541 0.2510652567836 0.25012693848997 0.25001305803327 0.25000113008556 0.25000008415464 0.25000000547674 0.25000000028449 0.24999999996271 0.24999999999818 0.250000000005 0.24999999999995 0.24999999999976 0.25000000000003 0.25000000000001 0.25 0.25 0.25 0.24999999999997 0.25000000000004 0.25000000000036 0.2499999999983 0.24999999999446 0.25000000002412 0.24999999995383 0.249999998534 0.24999997409289 0.24999959636537 0.2499945500058 0.24993780797315 0.24941954432061 0.24578641682832 0.22451887814885 0.17504551751981 0.1025441956673 0.04291424349001 0.02676314328288 0.02302528401925 0.02254859142523 0.0225461312361 0.02291892992748 0.02635068309367 0.03451089332715 0.0225 D/cons.3.00.000000.dat 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 0.0001025 -D/cons.3.00.000050.dat 0.0 0.0 0.0 0.0 0.0 -0.01431394091689 -0.00604850204226 -0.00053429439041 0.00038864891352 0.00048972321003 0.00049920840278 0.00049994758269 0.00049999696765 0.00049999986344 0.00050000000339 0.00050000000365 0.00049999999879 0.00049999999983 0.00050000000006 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998909994 0.00049987561455 0.00049883906792 0.0004915725654 0.00044910677896 0.00034698618676 0.00023277874414 0.00016398608612 0.00012823076267 0.00010652798524 9.581402438e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.03702127407672 -0.01962380612003 -0.00329953318892 0.00011545128698 0.00046480840773 0.00049728986492 0.00049981964401 0.00049998936741 0.00049999940831 0.00049999997584 0.00050000000894 0.0004999999988 0.00049999999938 0.00050000000008 0.00050000000002 0.00049999999999 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994818 0.00049999919271 0.00049998909963 0.00049987560872 0.00049883897525 0.00049157172841 0.0004490997913 0.00034702197846 0.0002327091835 0.0001643239321 0.00012221989398 0.00010888346603 0.00010022815045 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.09741762527644 -0.04273669858067 -0.02381782419966 -0.00462661568399 2.77434558e-05 0.00045958791889 0.00049707415607 0.00049981634289 0.00049998972994 0.00049999944882 0.00049999997404 0.00050000000628 0.00049999999956 0.0004999999995 0.00050000000004 0.00050000000002 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919274 0.00049998910011 0.00049987561759 0.00049883911056 0.00049157300137 0.0004491103497 0.00034699747736 0.00023285841732 0.00016440657675 0.00011982374362 0.0001059205854 0.00010333838935 9.416408889e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.05670293684621 -0.02037805240323 -0.0047731238902 0.00027179478193 0.00048990077451 0.00049987911054 0.00050002782282 0.00050000284812 0.00050000001968 0.00050000001235 0.00050000000168 0.00049999999932 0.00050000000005 0.00050000000005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919276 0.00049998910057 0.0004998756266 0.00049883925846 0.00049157467056 0.00044913008183 0.00034694654208 0.00023294720775 0.00016337571938 0.00011908776833 0.00010121614314 0.00010481854126 4.41473339e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.00327590720269 -0.02510994203047 -0.01918532205596 -0.0052491160084 0.00079981429538 0.00087010189752 0.0005309489375 0.00050251533962 0.00050017285627 0.00050001064212 0.00050000081305 0.00050000006091 0.00050000000278 0.00049999999956 0.0005 0.00050000000004 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.0004999891001 0.00049987561761 0.00049883911508 0.00049157327182 0.00044911890159 0.00034696844537 0.00023282250796 0.00016189247689 0.00012174174621 0.00011270647452 9.605303811e-05 5.393276542e-05 -0.00056290890283 -0.00643351071755 0.0 0.0 0.09886256431958 0.0074985696734 0.00337249541471 -0.00589155928902 -0.00179326792428 2.319741475e-05 0.00083482712619 0.00062549944206 0.00051033540024 0.00050085183195 0.00050006075853 0.00050000396085 0.00050000020894 0.00050000000717 0.00050000000025 0.00049999999996 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910003 0.00049987561606 0.00049883908735 0.0004915728847 0.00044911391638 0.00034698366966 0.00023272178697 0.00016312275122 0.00012441874746 0.00011105961009 7.458323213e-05 8.832047548e-05 -0.00040388043193 -0.00602744703396 -0.00429967335595 0.0167107818138 0.02300377816096 0.00292884349959 0.0014018639718 3.52359149e-06 0.00051678053987 0.00059010127737 0.00063935086208 0.00053899082032 0.00050400611032 0.00050039165983 0.00050003221241 0.000500002269 0.00050000012686 0.00050000000654 0.00050000000033 0.00049999999995 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561603 0.0004988390905 0.00049157284476 0.00044910970774 0.00034698967416 0.00023283167409 0.00016388537222 0.00012203792537 0.00010540749191 9.888372513e-05 0.00010028090849 3.508380771e-05 -0.00072695640394 -0.00010700783043 0.00709200701661 0.0033025223242 0.00121905367333 0.00100765095084 0.00082916990805 0.00079985097519 0.00064555843541 0.00058652278171 0.00052494607446 0.0005030426414 0.00050032580765 0.00050002839749 0.00050000204809 0.0005000001336 0.00050000000773 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908863 0.00049157282296 0.00044910908391 0.00034699441067 0.00023282739172 0.0001639833831 0.00012169740983 0.00010485958685 0.0001026053962 0.00010254681903 0.00010049387762 6.187087212e-05 0.0002919017237 0.00163384711739 0.00090922889361 0.00093453098591 0.00096237892648 0.00092268560428 0.00082778669183 0.00064874570015 0.00058055296669 0.00052338913652 0.00050294172906 0.00050031933506 0.0005000279406 0.00050000208538 0.00050000013515 0.00050000000774 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561593 0.00049883908842 0.00049157282002 0.00044910908922 0.00034699478143 0.00023282635311 0.00016399239927 0.00012167628616 0.00010482639746 0.00010287198138 0.00010283766262 0.00010676508933 0.00013330124542 0.00024900846538 0.00054981555448 0.00066453311642 0.00090093395729 0.00095817169742 0.00093123964241 0.00083007426173 0.00064879176747 0.00057999092498 0.00052325707609 0.00050293360573 0.00050031869726 0.00050002799482 0.00050000208106 0.00050000013402 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908846 0.00049157282024 0.00044910909555 0.00034699471791 0.00023282632355 0.00016399348479 0.00012167487328 0.00010482427241 0.00010288866494 0.00010286422652 0.00010726720641 0.00013886314484 0.00023712483627 0.00042470463281 0.00064420271242 0.00089789795315 0.00095784928308 0.00093189453032 0.00083023304462 0.00064877913444 0.00057994804281 0.00052324785778 0.00050293291444 0.00050031875808 0.00050002799337 0.00050000207825 0.0005000001339 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282024 0.00044910909144 0.00034699470909 0.00023282635567 0.00016399345644 0.00012167484945 0.00010482420307 0.00010288982465 0.00010286636911 0.00010730141859 0.00013922996435 0.00023557868334 0.0004129343207 0.00064277770362 0.00089767348638 0.00095782815054 0.00093193752946 0.00083024273435 0.00064877703107 0.00057994502192 0.00052324715927 0.00050293298209 0.00050031876221 0.00050002798843 0.00050000207833 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.00044910909073 0.00034699471558 0.0002328263527 0.00016399343748 0.0001216748707 0.00010482423048 0.00010288979436 0.00010286647172 0.00010730362115 0.00013925046286 0.00023543354798 0.00041202508884 0.0006426912282 0.00089765932887 0.0009578267907 0.00093194017477 0.00083024335967 0.00064877699698 0.00057994490343 0.00052324723143 0.00050293298846 0.00050031875576 0.00050002798859 0.0005000020784 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.00044910909079 0.00034699471597 0.00023282634946 0.00016399344359 0.00012167486762 0.00010482422464 0.00010288978105 0.00010286643708 0.00010730369114 0.00013925168171 0.00023542263863 0.00041196567225 0.00064268641369 0.00089765844343 0.00095782683814 0.00093194023455 0.00083024324287 0.00064877704953 0.0005799449756 0.00052324724076 0.00050293298128 0.00050031875576 0.00050002798873 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.00044910909081 0.00034699471565 0.0002328263497 0.00016399344501 0.00012167486631 0.00010482422292 0.00010288978668 0.00010286644246 0.0001073036619 0.00013925164986 0.00023542175342 0.00041196206392 0.00064268615223 0.00089765853424 0.00095782686849 0.00093194017162 0.00083024323763 0.00064877704068 0.00057994496615 0.0005232472331 0.00050293298124 0.00050031875597 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.00044910909081 0.00034699471567 0.00023282634984 0.00016399344462 0.00012167486645 0.00010482422331 0.00010288978733 0.00010286644474 0.00010730366821 0.00013925163976 0.00023542180193 0.00041196190182 0.00064268623556 0.00089765854856 0.00095782685632 0.00093194018488 0.00083024324898 0.00064877703658 0.00057994496089 0.00052324723279 0.00050293298149 0.00050031875594 0.00050002798869 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471569 0.00023282634981 0.00016399344459 0.0001216748665 0.00010482422335 0.00010288978701 0.00010286644435 0.00010730366997 0.00013925164591 0.00023542181703 0.00041196196915 0.00064268622923 0.00089765853821 0.00095782685507 0.0009319401886 0.00083024324889 0.00064877703711 0.00057994496164 0.00052324723311 0.00050293298146 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978702 0.00010286644428 0.00010730366952 0.00013925164603 0.00023542181061 0.00041196196172 0.00064268622343 0.00089765853776 0.00095782685564 0.00093194018774 0.00083024324835 0.00064877703725 0.00057994496182 0.00052324723309 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366948 0.00013925164568 0.00023542180956 0.00041196195701 0.000642686224 0.00089765853821 0.00095782685564 0.00093194018767 0.00083024324842 0.00064877703721 0.00057994496176 0.00052324723307 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164573 0.00023542180991 0.00041196195769 0.0006426862242 0.00089765853819 0.00095782685561 0.00093194018772 0.00083024324844 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164575 0.00023542180993 0.00041196195783 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622415 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853818 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622408 0.00089765853815 0.00095782685562 0.00093194018772 0.00083024324843 0.00064877703721 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180988 0.00041196195772 0.00064268622431 0.00089765853811 0.00095782685557 0.00093194018776 0.00083024324844 0.00064877703719 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.0002354218099 0.00041196195791 0.00064268622486 0.00089765853874 0.00095782685558 0.00093194018771 0.00083024324844 0.00064877703715 0.0005799449617 0.00052324723307 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.0001073036695 0.00013925164583 0.00023542181038 0.00041196195854 0.00064268621838 0.00089765853786 0.00095782685646 0.00093194018694 0.00083024324835 0.00064877703749 0.00057994496184 0.00052324723303 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.0001028664443 0.0001073036695 0.00013925164567 0.00023542180893 0.00041196195305 0.00064268621324 0.00089765852523 0.00095782685391 0.00093194018985 0.00083024324828 0.00064877703764 0.00057994496268 0.00052324723328 0.00050293298141 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344461 0.00012167486648 0.00010482422332 0.00010288978705 0.00010286644431 0.00010730366961 0.00013925164439 0.00023542180111 0.00041196194724 0.00064268630287 0.00089765855005 0.0009578268392 0.00093194020302 0.0008302432504 0.00064877702969 0.00057994495814 0.00052324723347 0.0005029329816 0.00050031875589 0.00050002798869 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.00044910909081 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486647 0.0001048242233 0.00010288978689 0.00010286644442 0.00010730366945 0.00013925164914 0.0002354218242 0.00041196202124 0.00064268598501 0.00089765861805 0.00095782689025 0.00093194015218 0.00083024325466 0.00064877702945 0.00057994494715 0.00052324722722 0.00050293298188 0.00050031875606 0.00050002798866 0.00050000207838 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471571 0.00023282634981 0.00016399344463 0.00012167486673 0.00010482422352 0.00010288978697 0.00010286644416 0.00010730366925 0.00013925165982 0.0002354218529 0.00041196180812 0.00064268052162 0.00089765739927 0.00095782687383 0.00093194015527 0.00083024320226 0.00064877711764 0.00057994501089 0.00052324722711 0.00050293297588 0.00050031875631 0.00050002798878 0.00050000207837 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.00044910909079 0.00034699471562 0.00023282635001 0.00016399344441 0.00012167486599 0.00010482422307 0.00010288979086 0.00010286644457 0.00010730366758 0.00013925154425 0.0002354205531 0.00041195770034 0.0006425836991 0.00089763769522 0.00095782479902 0.00093194222535 0.00083024335262 0.00064877674599 0.00057994494948 0.00052324730667 0.00050293297509 0.00050031875061 0.00050002798908 0.00050000207845 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282019 0.00044910909094 0.0003469947153 0.00023282634902 0.00016399344633 0.00012167486127 0.0001048242186 0.00010288978733 0.00010286644317 0.00010730366143 0.00013925169395 0.00023540412046 0.00041189047155 0.00064102088096 0.00089733445585 0.00095779220887 0.00093197436778 0.00083024683514 0.00064877218069 0.00057994248622 0.00052324690718 0.00050293305295 0.00050031874975 0.00050002798448 0.00050000207859 0.00050000013397 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282016 0.00044910909075 0.00034699471771 0.00023282634515 0.00016399344704 0.00012167487733 0.00010482423389 0.00010288972884 0.00010286640621 0.00010730413722 0.00013925931856 0.00023518766218 0.00041088138396 0.00061917726083 0.00089334632196 0.00095731799813 0.00093246490887 0.00083032676247 0.00064872118041 0.00057990699828 0.0005232408051 0.00050293258748 0.00050031882068 0.00050002798065 0.00050000207573 0.00050000013386 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561593 0.00049883908843 0.00049157281999 0.00044910908691 0.00034699471955 0.00023282636283 0.00016399340337 0.00012167487103 0.00010482424814 0.00010289039064 0.00010286693119 0.00010731739879 0.00013948541143 0.00023286951328 0.0003980518985 0.00036133067716 0.00085026809041 0.00095145986053 0.00093899060562 0.00083175078887 0.00064830043471 0.0005794185778 0.0005231440218 0.00050292659366 0.00050031834125 0.00050002804075 0.00050000207065 0.00050000013264 0.00050000000758 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908849 0.00049157282085 0.00044910909436 0.00034699469771 0.00023282639276 0.00016399364292 0.00012167344933 0.00010482278045 0.00010290072507 0.00010287571652 0.00010758472127 0.0001437888019 0.00021275090764 0.00026408818107 -0.00211414609599 0.00049267555083 0.00089213406742 0.00101302235377 0.00085176249815 0.00064708376379 0.00057392707367 0.00052188124698 0.00050284511925 0.00050031307217 0.00050002766995 0.00050000211262 0.00050000013395 0.00050000000756 0.00050000000035 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561597 0.00049883908889 0.00049157282389 0.00044910912568 0.00034699457851 0.0002328256971 0.00016399678122 0.00012165149819 0.00010479415158 0.00010309172017 0.00010301760133 0.00011173953791 0.00020747459276 0.00013312534548 -0.00088238274908 -0.02222917639537 -0.00167003108873 0.00040770767619 0.00170541550031 0.00107249769555 0.00066741409383 0.00052455648191 0.0005091460447 0.0005019744005 0.00050025378655 0.00050002419339 0.00050000191963 0.00050000014416 0.00050000000888 0.00050000000039 0.00049999999992 0.00050000000001 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561591 0.00049883908756 0.00049157280293 0.00044910869595 0.00034699585226 0.00023282277758 0.00016404329824 0.00012129314816 0.00010425915152 0.0001060357234 0.0001044504496 0.00016269507418 0.00096235092752 0.00037642565462 -0.00651235378604 -0.0983402839119 -0.0067821385256 -0.00194595940128 0.00696168898921 0.0029502228706 0.00099168388362 0.00025886584804 0.00041990533496 0.0004954491488 0.00049978291097 0.00049999508392 0.0005000001914 0.00050000006092 0.00050000000855 0.00050000000048 0.0004999999999 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998909999 0.00049987561573 0.00049883908574 0.00049157272551 0.00044910601228 0.00034699885153 0.00023292658444 0.00016451848764 0.00011823197413 9.867472175e-05 0.00012746245272 0.00011415500399 0.00054901825874 0.00619859884769 0.00450618766193 -0.0163880169121 0.0 0.0 -0.00244954296323 0.02567434108666 0.01748088086668 0.00441060932187 -0.00011923941115 0.00012953700114 0.00047161409042 0.00049789555764 0.00049986941751 0.00049999273692 0.00049999940243 0.00049999995282 0.0004999999979 0.0005000000003 0.00050000000001 0.00049999999997 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910004 0.00049987561669 0.00049883910521 0.00049157311042 0.00044911072737 0.00034702761124 0.0002328385069 0.0001655397501 0.0001222319368 9.715227937e-05 0.00010916557989 0.00015097441792 0.0006898393982 0.00654897956809 0.0 0.0 0.0 0.0 0.0 0.0 0.04752601990241 0.01635971299471 0.00366547523487 0.00059060154539 0.00049798232223 0.00049956674149 0.00049996387914 0.00049999812012 0.00050000011226 0.00049999998942 0.00049999999832 0.00050000000071 0.00049999999995 0.00049999999995 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919276 0.00049998910065 0.00049987562759 0.00049883926883 0.00049157513742 0.00044914425433 0.00034699357285 0.00023284206648 0.00016423032964 0.00012948364445 9.933510893e-05 0.00010414865666 0.00010204425873 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.06532225788682 0.0383571806851 0.02450482107658 0.00577460231474 0.00097588975631 0.00054029314625 0.00050288505285 0.00050017968168 0.0005000101257 0.00050000057797 0.00050000002741 0.00049999999345 0.00050000000045 0.00050000000053 0.00049999999996 0.00049999999998 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919274 0.00049998910016 0.0004998756187 0.00049883913298 0.00049157321339 0.00044910924838 0.00034698868573 0.00023282606046 0.00016380119814 0.00012554192407 0.00010483719694 0.00010412907315 2.97432584e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.05011334460435 0.02670876593182 0.00483758677413 0.0009592469197 0.00054227682828 0.00050326194399 0.00050021685489 0.00050001271984 0.00050000066448 0.00050000002245 0.00049999998956 0.00050000000174 0.0005000000007 0.00049999999989 0.00049999999998 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994818 0.0004999991927 0.00049998909927 0.00049987560247 0.0004988388805 0.00049157039182 0.00044907578789 0.00034702357588 0.00023277424199 0.00016434153568 0.00011332372547 0.00010688953475 0.00010549746747 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.01171502421791 0.00377862456534 0.0011615151556 0.00056215846284 0.00050559223592 0.00050043492643 0.00050002953944 0.00050000164176 0.00050000007265 0.0004999999983 0.00049999999772 0.00050000000071 0.0005000000001 0.00049999999996 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919271 0.00049998909964 0.00049987560886 0.00049883897248 0.00049157117609 0.0004490843297 0.00034700786073 0.00023284556313 0.00016433916166 0.0001157670588 0.00010533401527 0.00010885040785 0.0 0.0 0.0 0.0 0.0 +D/cons.3.00.000050.dat 0.0 0.0 0.0 0.0 0.0 -0.01431394091689 -0.00604850204226 -0.00053429439041 0.00038864891352 0.00048972321003 0.00049920840278 0.00049994758269 0.00049999696765 0.00049999986344 0.00050000000339 0.00050000000365 0.00049999999879 0.00049999999983 0.00050000000006 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998909994 0.00049987561455 0.00049883906792 0.0004915725654 0.00044910677896 0.00034698618676 0.00023277874414 0.00016398608612 0.00012823076267 0.00010652798524 9.581402438e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.03702127407672 -0.01962380612003 -0.00329953318892 0.00011545128698 0.00046480840773 0.00049728986492 0.00049981964401 0.00049998936741 0.00049999940831 0.00049999997584 0.00050000000894 0.0004999999988 0.00049999999938 0.00050000000008 0.00050000000002 0.00049999999999 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994818 0.00049999919271 0.00049998909963 0.00049987560872 0.00049883897525 0.00049157172841 0.0004490997913 0.00034702197846 0.0002327091835 0.0001643239321 0.00012221989398 0.00010888346603 0.00010022815045 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.09741762527644 -0.04273669858067 -0.02381782419966 -0.00462661568399 2.77434558e-05 0.00045958791889 0.00049707415607 0.00049981634289 0.00049998972994 0.00049999944882 0.00049999997404 0.00050000000628 0.00049999999956 0.0004999999995 0.00050000000004 0.00050000000002 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919274 0.00049998910011 0.00049987561759 0.00049883911056 0.00049157300137 0.0004491103497 0.00034699747736 0.00023285841732 0.00016440657675 0.00011982374362 0.0001059205854 0.00010333838935 9.416408889e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.05670293684621 -0.02037805240323 -0.0047731238902 0.00027179478193 0.00048990077451 0.00049987911054 0.00050002782282 0.00050000284812 0.00050000001968 0.00050000001235 0.00050000000168 0.00049999999932 0.00050000000005 0.00050000000005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919276 0.00049998910057 0.0004998756266 0.00049883925846 0.00049157467056 0.00044913008183 0.00034694654208 0.00023294720775 0.00016337571938 0.00011908776833 0.00010121614314 0.00010481854126 4.41473339e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.00327590720269 -0.02510994203047 -0.01918532205596 -0.0052491160084 0.00079981429538 0.00087010189752 0.0005309489375 0.00050251533962 0.00050017285627 0.00050001064212 0.00050000081305 0.00050000006091 0.00050000000278 0.00049999999956 0.0005 0.00050000000004 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.0004999891001 0.00049987561761 0.00049883911508 0.00049157327182 0.00044911890159 0.00034696844537 0.00023282250796 0.00016189247689 0.00012174174621 0.00011270647452 9.605303811e-05 5.393276542e-05 -0.00056290890283 -0.00643351071755 0.0 0.0 0.09886256431958 0.0074985696734 0.00337249541471 -0.00589155928902 -0.00179326792428 2.319741475e-05 0.00083482712619 0.00062549944206 0.00051033540024 0.00050085183195 0.00050006075853 0.00050000396085 0.00050000020894 0.00050000000717 0.00050000000025 0.00049999999996 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910003 0.00049987561606 0.00049883908735 0.0004915728847 0.00044911391638 0.00034698366966 0.00023272178697 0.00016312275122 0.00012441874746 0.00011105961009 7.458323213e-05 8.832047548e-05 -0.00040388043193 -0.00602744703396 -0.00429967335595 0.0167107818138 0.02300377816096 0.00292884349959 0.0014018639718 3.52359149e-06 0.00051678053987 0.00059010127737 0.00063935086208 0.00053899082032 0.00050400611032 0.00050039165983 0.00050003221241 0.000500002269 0.00050000012686 0.00050000000654 0.00050000000033 0.00049999999995 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561603 0.0004988390905 0.00049157284476 0.00044910970774 0.00034698967416 0.00023283167409 0.00016388537222 0.00012203792537 0.00010540749191 9.888372513e-05 0.00010028090849 3.508380771e-05 -0.00072695640394 -0.00010700783043 0.00709200701661 0.0033025223242 0.00121905367333 0.00100765095084 0.00082916990805 0.00079985097519 0.00064555843541 0.00058652278171 0.00052494607446 0.0005030426414 0.00050032580765 0.00050002839749 0.00050000204809 0.0005000001336 0.00050000000773 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908863 0.00049157282296 0.00044910908391 0.00034699441067 0.00023282739172 0.0001639833831 0.00012169740983 0.00010485958685 0.0001026053962 0.00010254681903 0.00010049387762 6.187087212e-05 0.0002919017237 0.00163384711739 0.00090922889361 0.00093453098591 0.00096237892648 0.00092268560428 0.00082778669183 0.00064874570015 0.00058055296669 0.00052338913652 0.00050294172906 0.00050031933506 0.0005000279406 0.00050000208538 0.00050000013515 0.00050000000774 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561593 0.00049883908841 0.00049157282002 0.00044910908922 0.00034699478143 0.00023282635311 0.00016399239927 0.00012167628616 0.00010482639746 0.00010287198138 0.00010283766262 0.00010676508933 0.00013330124542 0.00024900846538 0.00054981555448 0.00066453311643 0.00090093395729 0.00095817169743 0.00093123964241 0.00083007426173 0.00064879176747 0.00057999092498 0.00052325707609 0.00050293360573 0.00050031869726 0.00050002799482 0.00050000208106 0.00050000013402 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908846 0.00049157282024 0.00044910909555 0.00034699471791 0.00023282632355 0.00016399348479 0.00012167487328 0.00010482427241 0.00010288866494 0.00010286422652 0.00010726720641 0.00013886314484 0.00023712483627 0.00042470463281 0.00064420271242 0.00089789795315 0.00095784928308 0.00093189453032 0.00083023304462 0.00064877913444 0.00057994804281 0.00052324785778 0.00050293291444 0.00050031875808 0.00050002799337 0.00050000207825 0.0005000001339 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282024 0.00044910909144 0.00034699470909 0.00023282635567 0.00016399345644 0.00012167484945 0.00010482420307 0.00010288982465 0.00010286636911 0.00010730141859 0.00013922996435 0.00023557868334 0.0004129343207 0.00064277770361 0.00089767348638 0.00095782815054 0.00093193752946 0.00083024273435 0.00064877703107 0.00057994502192 0.00052324715927 0.00050293298209 0.00050031876221 0.00050002798843 0.00050000207833 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.00044910909073 0.00034699471558 0.0002328263527 0.00016399343748 0.0001216748707 0.00010482423048 0.00010288979436 0.00010286647172 0.00010730362115 0.00013925046286 0.00023543354798 0.00041202508884 0.0006426912282 0.00089765932887 0.0009578267907 0.00093194017477 0.00083024335967 0.00064877699698 0.00057994490343 0.00052324723143 0.00050293298846 0.00050031875576 0.00050002798859 0.0005000020784 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.00044910909079 0.00034699471597 0.00023282634946 0.00016399344359 0.00012167486762 0.00010482422464 0.00010288978105 0.00010286643708 0.00010730369114 0.00013925168171 0.00023542263863 0.00041196567225 0.00064268641369 0.00089765844343 0.00095782683814 0.00093194023455 0.00083024324287 0.00064877704953 0.0005799449756 0.00052324724076 0.00050293298128 0.00050031875576 0.00050002798873 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.00044910909081 0.00034699471565 0.0002328263497 0.00016399344501 0.00012167486631 0.00010482422292 0.00010288978668 0.00010286644246 0.0001073036619 0.00013925164986 0.00023542175342 0.00041196206392 0.00064268615223 0.00089765853424 0.00095782686849 0.00093194017162 0.00083024323763 0.00064877704068 0.00057994496615 0.0005232472331 0.00050293298124 0.00050031875597 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.00044910909081 0.00034699471567 0.00023282634984 0.00016399344462 0.00012167486645 0.00010482422331 0.00010288978733 0.00010286644474 0.00010730366821 0.00013925163976 0.00023542180193 0.00041196190182 0.00064268623555 0.00089765854856 0.00095782685632 0.00093194018488 0.00083024324898 0.00064877703658 0.00057994496089 0.00052324723279 0.00050293298149 0.00050031875594 0.00050002798869 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471569 0.00023282634981 0.00016399344459 0.0001216748665 0.00010482422335 0.00010288978701 0.00010286644435 0.00010730366997 0.00013925164591 0.00023542181703 0.00041196196915 0.00064268622923 0.00089765853821 0.00095782685507 0.0009319401886 0.00083024324889 0.00064877703711 0.00057994496164 0.00052324723311 0.00050293298146 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978702 0.00010286644428 0.00010730366952 0.00013925164603 0.00023542181061 0.00041196196172 0.00064268622343 0.00089765853776 0.00095782685564 0.00093194018774 0.00083024324835 0.00064877703725 0.00057994496182 0.00052324723309 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366948 0.00013925164568 0.00023542180956 0.00041196195701 0.000642686224 0.00089765853821 0.00095782685564 0.00093194018767 0.00083024324841 0.00064877703721 0.00057994496176 0.00052324723307 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164573 0.00023542180991 0.00041196195769 0.0006426862242 0.00089765853819 0.00095782685561 0.00093194018772 0.00083024324844 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164575 0.00023542180993 0.00041196195783 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622415 0.00089765853817 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622414 0.00089765853818 0.00095782685561 0.00093194018772 0.00083024324843 0.0006487770372 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180991 0.00041196195778 0.00064268622408 0.00089765853815 0.00095782685562 0.00093194018772 0.00083024324843 0.00064877703721 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.00023542180988 0.00041196195772 0.00064268622431 0.00089765853811 0.00095782685557 0.00093194018776 0.00083024324844 0.00064877703719 0.00057994496176 0.00052324723308 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.00010730366951 0.00013925164574 0.0002354218099 0.00041196195791 0.00064268622486 0.00089765853874 0.00095782685558 0.00093194018771 0.00083024324844 0.00064877703715 0.0005799449617 0.00052324723307 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.00010286644431 0.0001073036695 0.00013925164583 0.00023542181038 0.00041196195854 0.00064268621838 0.00089765853786 0.00095782685646 0.00093194018694 0.00083024324835 0.00064877703749 0.00057994496184 0.00052324723303 0.00050293298145 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486649 0.00010482422332 0.00010288978703 0.0001028664443 0.0001073036695 0.00013925164567 0.00023542180893 0.00041196195305 0.00064268621324 0.00089765852523 0.00095782685391 0.00093194018985 0.00083024324828 0.00064877703764 0.00057994496267 0.00052324723328 0.00050293298141 0.00050031875593 0.0005000279887 0.00050000207839 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471568 0.00023282634981 0.00016399344461 0.00012167486648 0.00010482422332 0.00010288978705 0.00010286644431 0.00010730366961 0.00013925164439 0.00023542180111 0.00041196194724 0.00064268630287 0.00089765855005 0.0009578268392 0.00093194020302 0.0008302432504 0.00064877702969 0.00057994495814 0.00052324723347 0.0005029329816 0.00050031875589 0.00050002798869 0.00050000207839 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.00044910909081 0.00034699471568 0.00023282634981 0.00016399344462 0.00012167486647 0.0001048242233 0.00010288978689 0.00010286644442 0.00010730366945 0.00013925164914 0.0002354218242 0.00041196202124 0.00064268598501 0.00089765861805 0.00095782689025 0.00093194015218 0.00083024325466 0.00064877702945 0.00057994494715 0.00052324722722 0.00050293298188 0.00050031875606 0.00050002798866 0.00050000207838 0.00050000013394 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.0004491090908 0.00034699471571 0.00023282634981 0.00016399344463 0.00012167486673 0.00010482422352 0.00010288978697 0.00010286644416 0.00010730366925 0.00013925165982 0.0002354218529 0.00041196180812 0.00064268052162 0.00089765739927 0.00095782687383 0.00093194015527 0.00083024320226 0.00064877711764 0.00057994501089 0.00052324722711 0.00050293297588 0.00050031875631 0.00050002798878 0.00050000207837 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282018 0.00044910909079 0.00034699471562 0.00023282635001 0.00016399344441 0.00012167486599 0.00010482422307 0.00010288979086 0.00010286644457 0.00010730366758 0.00013925154425 0.0002354205531 0.00041195770034 0.0006425836991 0.00089763769522 0.00095782479902 0.00093194222535 0.00083024335262 0.00064877674599 0.00057994494948 0.00052324730667 0.00050293297509 0.00050031875061 0.00050002798908 0.00050000207845 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282019 0.00044910909094 0.0003469947153 0.00023282634902 0.00016399344633 0.00012167486127 0.0001048242186 0.00010288978733 0.00010286644317 0.00010730366143 0.00013925169395 0.00023540412046 0.00041189047155 0.00064102088096 0.00089733445585 0.00095779220887 0.00093197436778 0.00083024683514 0.00064877218069 0.00057994248622 0.00052324690718 0.00050293305295 0.00050031874975 0.00050002798448 0.00050000207859 0.00050000013397 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908845 0.00049157282016 0.00044910909075 0.00034699471771 0.00023282634515 0.00016399344704 0.00012167487733 0.00010482423389 0.00010288972884 0.00010286640621 0.00010730413722 0.00013925931856 0.00023518766218 0.00041088138396 0.00061917726083 0.00089334632196 0.00095731799813 0.00093246490887 0.00083032676247 0.00064872118041 0.00057990699828 0.0005232408051 0.00050293258748 0.00050031882068 0.00050002798065 0.00050000207573 0.00050000013386 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561593 0.00049883908843 0.00049157281999 0.00044910908691 0.00034699471955 0.00023282636283 0.00016399340337 0.00012167487103 0.00010482424814 0.00010289039064 0.00010286693119 0.00010731739879 0.00013948541143 0.00023286951328 0.0003980518985 0.00036133067716 0.00085026809041 0.00095145986053 0.00093899060562 0.00083175078887 0.00064830043471 0.0005794185778 0.0005231440218 0.00050292659366 0.00050031834125 0.00050002804075 0.00050000207065 0.00050000013264 0.00050000000758 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561594 0.00049883908849 0.00049157282085 0.00044910909436 0.00034699469771 0.00023282639276 0.00016399364292 0.00012167344933 0.00010482278045 0.00010290072507 0.00010287571652 0.00010758472127 0.0001437888019 0.00021275090764 0.00026408818107 -0.00211414609599 0.00049267555083 0.00089213406742 0.00101302235377 0.00085176249815 0.00064708376379 0.00057392707367 0.00052188124698 0.00050284511925 0.00050031307217 0.00050002766995 0.00050000211262 0.00050000013395 0.00050000000756 0.00050000000035 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561597 0.00049883908889 0.00049157282389 0.00044910912568 0.00034699457851 0.0002328256971 0.00016399678122 0.00012165149819 0.00010479415158 0.00010309172017 0.00010301760133 0.00011173953791 0.00020747459276 0.00013312534548 -0.00088238274908 -0.02222917639537 -0.00167003108873 0.00040770767619 0.00170541550031 0.00107249769555 0.00066741409383 0.00052455648191 0.0005091460447 0.0005019744005 0.00050025378655 0.00050002419339 0.00050000191963 0.00050000014416 0.00050000000888 0.00050000000039 0.00049999999992 0.00050000000001 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910001 0.00049987561591 0.00049883908756 0.00049157280293 0.00044910869595 0.00034699585226 0.00023282277758 0.00016404329824 0.00012129314816 0.00010425915152 0.0001060357234 0.0001044504496 0.00016269507418 0.00096235092752 0.00037642565462 -0.00651235378604 -0.0983402839119 -0.0067821385256 -0.00194595940128 0.00696168898921 0.0029502228706 0.00099168388362 0.00025886584804 0.00041990533496 0.0004954491488 0.00049978291097 0.00049999508392 0.0005000001914 0.00050000006092 0.00050000000855 0.00050000000048 0.0004999999999 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998909999 0.00049987561573 0.00049883908574 0.00049157272551 0.00044910601228 0.00034699885153 0.00023292658444 0.00016451848764 0.00011823197413 9.867472175e-05 0.00012746245272 0.00011415500399 0.00054901825874 0.00619859884769 0.00450618766193 -0.0163880169121 0.0 0.0 -0.00244954296323 0.02567434108666 0.01748088086668 0.00441060932187 -0.00011923941115 0.00012953700114 0.00047161409042 0.00049789555764 0.00049986941751 0.00049999273692 0.00049999940243 0.00049999995282 0.0004999999979 0.0005000000003 0.00050000000001 0.00049999999997 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919273 0.00049998910004 0.00049987561669 0.00049883910521 0.00049157311042 0.00044911072737 0.00034702761124 0.0002328385069 0.0001655397501 0.0001222319368 9.715227937e-05 0.00010916557989 0.00015097441792 0.0006898393982 0.00654897956809 0.0 0.0 0.0 0.0 0.0 0.0 0.04752601990241 0.01635971299471 0.00366547523487 0.00059060154539 0.00049798232223 0.00049956674149 0.00049996387914 0.00049999812012 0.00050000011226 0.00049999998942 0.00049999999832 0.00050000000071 0.00049999999995 0.00049999999995 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919276 0.00049998910065 0.00049987562759 0.00049883926883 0.00049157513742 0.00044914425433 0.00034699357285 0.00023284206648 0.00016423032964 0.00012948364445 9.933510893e-05 0.00010414865666 0.00010204425873 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.06532225788682 0.0383571806851 0.02450482107658 0.00577460231474 0.00097588975631 0.00054029314625 0.00050288505285 0.00050017968168 0.0005000101257 0.00050000057797 0.00050000002741 0.00049999999345 0.00050000000045 0.00050000000053 0.00049999999996 0.00049999999998 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919274 0.00049998910016 0.0004998756187 0.00049883913298 0.00049157321339 0.00044910924838 0.00034698868573 0.00023282606046 0.00016380119814 0.00012554192407 0.00010483719694 0.00010412907315 2.97432584e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.05011334460435 0.02670876593182 0.00483758677413 0.0009592469197 0.00054227682828 0.00050326194399 0.00050021685489 0.00050001271984 0.00050000066448 0.00050000002245 0.00049999998956 0.00050000000174 0.0005000000007 0.00049999999989 0.00049999999998 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994818 0.0004999991927 0.00049998909927 0.00049987560247 0.0004988388805 0.00049157039182 0.00044907578789 0.00034702357588 0.00023277424199 0.00016434153568 0.00011332372547 0.00010688953475 0.00010549746747 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.01171502421791 0.00377862456534 0.0011615151556 0.00056215846284 0.00050559223592 0.00050043492643 0.00050002953944 0.00050000164176 0.00050000007265 0.0004999999983 0.00049999999772 0.00050000000071 0.0005000000001 0.00049999999996 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999707 0.00049999994819 0.00049999919271 0.00049998909964 0.00049987560886 0.00049883897248 0.00049157117609 0.0004490843297 0.00034700786073 0.00023284556313 0.00016433916166 0.0001157670588 0.00010533401527 0.00010885040785 0.0 0.0 0.0 0.0 0.0 D/cons.4.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -D/cons.4.00.000050.dat 0.0 0.0 0.0 0.0 0.0 0.03175646939529 0.01345542992285 0.00293204170109 0.00039795733159 4.370728105e-05 3.91972831e-06 2.9688179e-07 1.946627e-08 1.20202e-09 -7.465e-11 -1.652e-11 1.284e-11 7.2e-13 -6.8e-13 5e-14 3e-14 -1e-14 -0.0 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132508e-08 9.5514117e-07 1.289677289e-05 0.00014714167637 0.00137112081125 0.00986041263008 0.05608479382184 0.14748820995098 0.16849521383338 0.08757749006526 0.02573968391493 0.00285394202037 0.00039221234722 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.04126932924153 0.0233479966285 0.00678014957125 0.00090077328911 0.00010270764814 9.41563849e-06 7.2450666e-07 4.799628e-08 2.87018e-09 5.133e-11 -4.752e-11 1.294e-11 3.22e-12 -8.1e-13 -5e-14 5e-14 -0.0 -0.0 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132508e-08 9.5514114e-07 1.28967723e-05 0.00014714166883 0.00137112080387 0.00986041652959 0.05608488075783 0.147488758441 0.16849455518105 0.08757646564889 0.02577372712047 0.00288206695592 0.000253350454 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.08320769040331 0.14384110567237 0.07792363296143 0.02637361134487 0.00320330687143 0.0003434930572 3.012656142e-05 2.23727986e-06 1.44299e-07 8.31608e-09 4.2347e-10 -8.846e-11 5.79e-12 7.78e-12 -6e-13 -2.9e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132507e-08 9.5514097e-07 1.289676908e-05 0.00014714161459 0.00137112002891 0.00986040666302 0.05608476795222 0.14748845891829 0.16849688724405 0.08757612587672 0.02577643221467 0.0028594272149 0.00032588315209 2.582194075e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.11882306522179 0.16132188442171 0.09457193298668 0.03174139739139 0.00383132862788 0.00040727326193 3.541752738e-05 2.60991334e-06 1.6715442e-07 9.54545e-09 5.0067e-10 -9.006e-11 3.76e-12 8.33e-12 -5.2e-13 -3.2e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132508e-08 9.551412e-07 1.289677344e-05 0.00014714168501 0.00137112094263 0.00986041517864 0.0560848312957 0.14748844026931 0.16849543397029 0.08757845104619 0.02575987281364 0.00284350435039 0.00036441200091 -5.879441335e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.00293799500315 0.07938738234463 0.19775503284989 0.18480493367976 0.09821522378759 0.02935889048801 0.00356756853098 0.00038430911964 3.362351548e-05 2.49066608e-06 1.602618e-07 9.18699e-09 4.7823e-10 -8.977e-11 4.4e-12 8.18e-12 -5.5e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.5514127e-07 1.289677492e-05 0.00014714170984 0.00137112126607 0.00986041776012 0.05608484310162 0.1474883209046 0.16849397746271 0.08757687857743 0.02573154209658 0.00285108673439 0.00040746551263 -0.0002626961267 -0.00191615667354 -0.01020512783606 0.0 0.0 -0.28976421434607 -0.10635972996776 -0.00444613379317 0.08279840390382 0.20257702695595 0.18757728043386 0.09872070816104 0.02879227821857 0.00350861621685 0.00037880006062 3.320639514e-05 2.46420678e-06 1.5876318e-07 9.10557e-09 4.7282e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.5514129e-07 1.289677521e-05 0.00014714171308 0.00137112135451 0.009860422962 0.05608494471003 0.14748901836641 0.16849348170237 0.08756776750988 0.02577356567414 0.00286812630968 0.00035143669158 -0.00067939285949 -0.00549730841311 -0.05290555969673 -0.21190848109095 -0.41603615041886 -0.30994944904394 -0.11685972638578 -0.00820021260153 0.08245482303754 0.2041501287416 0.18823792128335 0.09864146088779 0.02864537816129 0.00349500385866 0.00037766201716 3.312804444e-05 2.45957973e-06 1.5851979e-07 9.095e-09 4.724e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677527e-05 0.00014714171417 0.00137112138013 0.00986042380701 0.05608495853484 0.14748910604344 0.16849331781319 0.08756756223286 0.02577689741352 0.00286341851508 0.00034545199173 -0.00070931328131 -0.00587967884441 -0.05488397628023 -0.20978683828578 -0.41055361049454 -0.30736272604818 -0.11888907549261 -0.00885354594064 0.08246443377367 0.20433332969255 0.18828810177625 0.09863322648774 0.02863001700041 0.0034936701914 0.00037755558774 3.312090148e-05 2.45919765e-06 1.5850872e-07 9.09536e-09 4.7248e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171432 0.00137112138276 0.00986042388135 0.05608495973299 0.14748911837158 0.16849329091425 0.08756755838359 0.02577729812798 0.002862683809 0.00034473233761 -0.0007129546583 -0.00594983184858 -0.05525162142588 -0.20825476990535 -0.40287264940442 -0.3068866180226 -0.11909420173658 -0.00892222803744 0.08246930503967 0.20435181184954 0.18829118617885 0.09863236218877 0.0286286668093 0.00349356160732 0.00037754734736 3.312039384e-05 2.45918059e-06 1.5850863e-07 9.09531e-09 4.7247e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171432 0.00137112138291 0.00986042388625 0.05608495981513 0.14748911923517 0.16849328835208 0.08756755841194 0.0257773204052 0.00286264701434 0.00034467333896 -0.00071327784077 -0.00595650641621 -0.05528432230704 -0.20801314283949 -0.40163815438284 -0.30682821970483 -0.11911128755671 -0.00892810161076 0.08246996303913 0.20435333298064 0.18829131002708 0.09863227820206 0.02862856521176 0.00349355410825 0.00037754681961 3.312037888e-05 2.4591799e-06 1.5850818e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171432 0.00137112138292 0.00986042388661 0.05608495982319 0.14748911926007 0.16849328818613 0.08756755845799 0.02577732146991 0.00286264548906 0.00034466922536 -0.00071330130728 -0.00595702602519 -0.05528654721764 -0.20798572737886 -0.40150409853683 -0.30682285064311 -0.11911246424348 -0.00892851906855 0.08247002290676 0.20435343877191 0.18829131085553 0.09863227145281 0.02862855859392 0.00349355365691 0.00037754681232 3.312037851e-05 2.45917911e-06 1.5850808e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.0098604238867 0.05608495982303 0.14748911925026 0.16849328822048 0.08756755844091 0.02577732147351 0.00286264548853 0.00034466900473 -0.00071330276035 -0.00595706023 -0.05528665570975 -0.20798318695735 -0.40149208185766 -0.30682244779549 -0.11911253346856 -0.008928544609 0.08247002710855 0.20435344521212 0.18829131049767 0.09863227095201 0.02862855818032 0.00349355365796 0.00037754681317 3.312037748e-05 2.45917902e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982295 0.14748911925298 0.16849328821859 0.08756755843209 0.02577732146857 0.00286264550403 0.00034466900413 -0.00071330283038 -0.00595706220945 -0.05528665949939 -0.20798299042998 -0.40149118219944 -0.30682242211423 -0.11911253707403 -0.00892854603675 0.08247002741112 0.20435344559805 0.18829131041827 0.09863227093151 0.02862855820036 0.00349355365952 0.00037754681178 3.312037738e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925366 0.16849328821482 0.08756755843521 0.02577732147206 0.00286264550064 0.00034466900404 -0.00071330282557 -0.00595706229016 -0.05528665949975 -0.20798297731933 -0.40149112447708 -0.30682242064291 -0.11911253729432 -0.0089285460565 0.08247002747176 0.20435344554625 0.18829131041241 0.09863227094718 0.02862855820763 0.00349355365813 0.00037754681168 3.312037741e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.16849328821497 0.08756755843571 0.02577732147255 0.00286264549936 0.000344669003 -0.0007133028258 -0.00595706228852 -0.05528665948821 -0.20798297657609 -0.40149112116764 -0.3068224205565 -0.1191125372754 -0.00892854604262 0.0824700274603 0.20435344554184 0.18829131041725 0.09863227094523 0.02862855820423 0.00349355365799 0.00037754681172 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925351 0.16849328821513 0.08756755843555 0.02577732147236 0.00286264549959 0.00034466900296 -0.00071330282646 -0.00595706229082 -0.05528665949138 -0.2079829765914 -0.40149112099185 -0.30682242058036 -0.1191125372716 -0.00892854604675 0.08247002745814 0.20435344554734 0.18829131041713 0.09863227094423 0.02862855820385 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843554 0.02577732147236 0.00286264549962 0.000344669003 -0.00071330282642 -0.00595706229109 -0.05528665949262 -0.20798297660666 -0.40149112105786 -0.30682242057942 -0.11911253727341 -0.00892854604763 0.08247002745888 0.20435344554743 0.1882913104169 0.09863227094437 0.02862855820401 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.16849328821509 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.00071330282639 -0.00595706229096 -0.05528665949204 -0.20798297660033 -0.40149112105088 -0.30682242057758 -0.11911253727355 -0.00892854604744 0.08247002745891 0.20435344554719 0.18829131041693 0.0986322709444 0.02862855820401 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229096 -0.05528665949194 -0.20798297659944 -0.40149112104638 -0.3068224205777 -0.11911253727347 -0.00892854604743 0.08247002745888 0.20435344554721 0.18829131041694 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659976 -0.401491121047 -0.30682242057777 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949199 -0.20798297659977 -0.40149112104714 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104708 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104708 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057777 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659977 -0.40149112104714 -0.3068224205777 -0.11911253727347 -0.00892854604743 0.08247002745888 0.20435344554721 0.18829131041694 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949199 -0.20798297659976 -0.40149112104695 -0.30682242057757 -0.11911253727357 -0.00892854604744 0.08247002745891 0.20435344554719 0.18829131041694 0.09863227094441 0.02862855820401 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949193 -0.20798297659934 -0.4014911210464 -0.30682242057955 -0.11911253727343 -0.00892854604766 0.08247002745888 0.20435344554737 0.18829131041682 0.09863227094437 0.02862855820402 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229096 -0.05528665949191 -0.20798297660068 -0.40149112105161 -0.30682242058054 -0.11911253727107 -0.00892854604663 0.08247002745819 0.20435344554742 0.18829131041705 0.09863227094414 0.02862855820388 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.16849328821509 0.08756755843555 0.02577732147237 0.00286264549961 0.00034466900299 -0.00071330282641 -0.00595706229099 -0.05528665949335 -0.20798297660794 -0.40149112105689 -0.30682242055537 -0.11911253727618 -0.00892854604209 0.08247002746025 0.20435344554291 0.18829131041935 0.09863227094549 0.02862855820401 0.00349355365799 0.00037754681172 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843554 0.02577732147239 0.00286264549958 0.000344669003 -0.00071330282634 -0.00595706229119 -0.05528665949259 -0.20798297658425 -0.40149112098653 -0.30682242065512 -0.11911253729767 -0.00892854605662 0.08247002746967 0.20435344554334 0.1882913104136 0.09863227094915 0.02862855820717 0.00349355365806 0.00037754681168 3.312037741e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925351 0.1684932882151 0.08756755843556 0.02577732147238 0.00286264549949 0.00034466900301 -0.00071330282627 -0.00595706229049 -0.0552866594804 -0.20798297659359 -0.40149112120169 -0.30682242236855 -0.11911253701738 -0.00892854602118 0.08247002741378 0.20435344559643 0.18829131039446 0.09863227092805 0.02862855820403 0.00349355365936 0.00037754681172 3.312037738e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925355 0.16849328821496 0.08756755843567 0.02577732147211 0.00286264550042 0.00034466900282 -0.00071330282785 -0.00595706228836 -0.05528665954269 -0.2079829776289 -0.40149112498633 -0.30682245165717 -0.11911253261384 -0.00892854423821 0.08247002707413 0.20435344533294 0.18829131061176 0.09863227094785 0.02862855817489 0.00349355365872 0.00037754681301 3.312037743e-05 2.45917902e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982298 0.14748911925355 0.16849328821575 0.08756755843405 0.02577732147186 0.00286264550257 0.00034466900262 -0.00071330283089 -0.00595706225005 -0.0552866604288 -0.2079829952266 -0.40149118977969 -0.30682290191874 -0.11911244936207 -0.00892851301735 0.08247002229256 0.20435344068792 0.18829131244229 0.09863227160105 0.02862855842353 0.00349355364794 0.00037754681272 3.312037845e-05 2.45917908e-06 1.5850808e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388673 0.05608495982314 0.14748911925236 0.16849328821887 0.08756755843368 0.02577732147436 0.00286264549122 0.00034466900124 -0.00071330281742 -0.00595706129504 -0.05528666892902 -0.20798324977681 -0.4014921809149 -0.3068287795783 -0.11911106927729 -0.00892801770168 0.08246995524388 0.20435336179604 0.18829133354073 0.09863228043026 0.0286285628423 0.003493553905 0.00037754680864 3.312037884e-05 2.4591799e-06 1.5850817e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388669 0.05608495982371 0.14748911925531 0.16849328819558 0.08756755845112 0.02577732147247 0.00286264551816 0.00034466901846 -0.00071330255081 -0.0059570407437 -0.05528670203532 -0.2079864352225 -0.40150518136624 -0.30689156246244 -0.11909151490416 -0.0089212420599 0.08246921119953 0.20435217848792 0.18829149462775 0.09863239149607 0.02862863587426 0.00349355880854 0.00037754714555 3.312038319e-05 2.45918042e-06 1.5850866e-07 9.09531e-09 4.7247e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138294 0.00986042388667 0.05608495982014 0.14748911925792 0.16849328822696 0.08756755837446 0.02577732089169 0.00286264689365 0.0003446700979 -0.00071329422809 -0.00595668187405 -0.05528605670734 -0.20802074463151 -0.40164736929758 -0.30739454757615 -0.11886246912115 -0.00884401658073 0.08246338146612 0.20433722698779 0.18829139515278 0.09863353790165 0.02862967742746 0.00349363746881 0.00037755306839 3.31207446e-05 2.45918961e-06 1.5850845e-07 9.09537e-09 4.7248e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171435 0.00137112138313 0.00986042388607 0.05608495978509 0.14748911886671 0.16849328909917 0.08756755748684 0.0257773064374 0.00286267717304 0.00034469584518 -0.00071312657783 -0.00595147050873 -0.05526407405146 -0.2083013309329 -0.40293855526316 -0.31013083635293 -0.1166306717201 -0.0081172544791 0.08244176426225 0.20418239078556 0.18826920033553 0.09864329913965 0.02864205859756 0.00349468536673 0.00037763688598 3.312643079e-05 2.45949262e-06 1.5851549e-07 9.09482e-09 4.724e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677529e-05 0.00014714171435 0.00137112138198 0.0098604238387 0.05608495900343 0.1474891115308 0.16849330107721 0.08756754959327 0.02577700361782 0.00286327925622 0.00034512515804 -0.00071072957808 -0.00589168886446 -0.05495076985629 -0.21000015859399 -0.41081849510195 -0.29004283960962 -0.10609703249719 -0.00437330903976 0.08281014419744 0.20281967783098 0.18778878894278 0.09874626784205 0.02877607433841 0.00350683204714 0.00037864500075 3.319599438e-05 2.46364297e-06 1.5873618e-07 9.10427e-09 4.7274e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677526e-05 0.00014714171379 0.00137112136536 0.00986042322701 0.05608494897904 0.14748904261494 0.16849338332497 0.08756751303546 0.02577424242403 0.00286763829482 0.00034940696399 -0.00068779058531 -0.00553968519705 -0.05299238303428 -0.21221087065655 -0.41669112547517 0.0 0.0 0.00317035604216 0.07920057596829 0.1980968246398 0.18596143017817 0.09872472900923 0.02941220283246 0.00357062856673 0.00038453136597 3.363812308e-05 2.49163186e-06 1.6032195e-07 9.19006e-09 4.7839e-10 -8.977e-11 4.4e-12 8.18e-12 -5.5e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677538e-05 0.00014714171627 0.00137112133961 0.00986041868998 0.05608485391633 0.14748837620394 0.16849370495639 0.0875754344113 0.02573277419316 0.00284738228609 0.00041193662967 -0.00029779800445 -0.00198291026902 -0.01022592169278 0.0 0.0 0.0 0.0 0.0 0.0 0.11851105780903 0.16744204896662 0.09709745177786 0.03208383189485 0.00385190882053 0.00040954101109 3.559436081e-05 2.62182816e-06 1.6786417e-07 9.58271e-09 5.0295e-10 -9.008e-11 3.7e-12 8.35e-12 -5.2e-13 -3.2e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.5514136e-07 1.289677661e-05 0.00014714173693 0.00137112165792 0.00986042371564 0.05608491364693 0.14748869124828 0.16849395858036 0.08757870956904 0.02576101233218 0.00284730572698 0.0003444493969 -7.456805235e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0816434408622 0.15736904226042 0.08158884461609 0.02588545288926 0.00317113675443 0.00034326828609 3.027117313e-05 2.25818525e-06 1.4612698e-07 8.43472e-09 4.3188e-10 -8.872e-11 5.55e-12 7.84e-12 -5.9e-13 -2.9e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.13251e-08 9.5514165e-07 1.289678177e-05 0.00014714181873 0.00137112277539 0.00986043784584 0.05608506974342 0.1474891668372 0.16849159926504 0.08758101660882 0.02577127458253 0.0028829220284 0.00024118004541 3.110317933e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.04047589784669 0.02142323503434 0.00661775973331 0.00086245377253 9.677891862e-05 8.78678684e-06 6.7233157e-07 4.448319e-08 2.67577e-09 3.757e-11 -4.459e-11 1.302e-11 2.98e-12 -8e-13 -4e-14 5e-14 -0.0 -0.0 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.5514143e-07 1.289677792e-05 0.00014714175893 0.00137112200108 0.00986042955118 0.05608499337059 0.14748900937526 0.16849274477962 0.08757873603022 0.02577133662423 0.00288834020821 0.00023657924056 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00552645355567 0.00766952409719 0.00202301301163 0.00025021621351 2.665471663e-05 2.36482013e-06 1.7946809e-07 1.189247e-08 7.2908e-10 -9.607e-11 -3.87e-12 1.128e-11 -1.1e-13 -5.5e-13 8e-14 2e-14 -1e-14 -0.0 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.5514125e-07 1.289677436e-05 0.0001471417005 0.00137112113368 0.00986041588562 0.05608481753275 0.14748823944956 0.16849479740968 0.08757815195705 0.02573665967029 0.0028535856797 0.00040249832518 0.0 0.0 0.0 0.0 0.0 +D/cons.4.00.000050.dat 0.0 0.0 0.0 0.0 0.0 0.03175646939529 0.01345542992285 0.00293204170109 0.00039795733159 4.370728105e-05 3.91972831e-06 2.9688179e-07 1.946627e-08 1.20202e-09 -7.465e-11 -1.652e-11 1.284e-11 7.2e-13 -6.8e-13 5e-14 3e-14 -1e-14 -0.0 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132508e-08 9.5514117e-07 1.289677289e-05 0.00014714167637 0.00137112081125 0.00986041263008 0.05608479382185 0.14748820995098 0.16849521383338 0.08757749006526 0.02573968391493 0.00285394202037 0.00039221234722 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.04126932924153 0.0233479966285 0.00678014957125 0.00090077328911 0.00010270764814 9.41563849e-06 7.2450666e-07 4.799628e-08 2.87018e-09 5.133e-11 -4.752e-11 1.294e-11 3.22e-12 -8.1e-13 -5e-14 5e-14 -0.0 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132508e-08 9.5514114e-07 1.28967723e-05 0.00014714166883 0.00137112080387 0.00986041652959 0.05608488075783 0.147488758441 0.16849455518105 0.08757646564889 0.02577372712047 0.00288206695592 0.000253350454 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.08320769040331 0.14384110567237 0.07792363296143 0.02637361134487 0.00320330687143 0.0003434930572 3.012656142e-05 2.23727986e-06 1.44299e-07 8.31608e-09 4.2347e-10 -8.846e-11 5.79e-12 7.78e-12 -6e-13 -2.9e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132507e-08 9.5514097e-07 1.289676908e-05 0.00014714161459 0.00137112002891 0.00986040666302 0.05608476795222 0.14748845891829 0.16849688724405 0.08757612587672 0.02577643221467 0.0028594272149 0.00032588315209 2.582194075e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.11882306522179 0.16132188442171 0.09457193298668 0.03174139739139 0.00383132862788 0.00040727326193 3.541752738e-05 2.60991334e-06 1.6715442e-07 9.54545e-09 5.0067e-10 -9.006e-11 3.76e-12 8.33e-12 -5.2e-13 -3.2e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132508e-08 9.551412e-07 1.289677344e-05 0.00014714168501 0.00137112094263 0.00986041517864 0.0560848312957 0.14748844026931 0.16849543397029 0.08757845104619 0.02575987281364 0.00284350435039 0.00036441200091 -5.879441335e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.00293799500315 0.07938738234463 0.19775503284989 0.18480493367976 0.09821522378759 0.02935889048801 0.00356756853098 0.00038430911964 3.362351548e-05 2.49066608e-06 1.6026181e-07 9.18699e-09 4.7823e-10 -8.977e-11 4.4e-12 8.18e-12 -5.5e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.5514127e-07 1.289677492e-05 0.00014714170984 0.00137112126607 0.00986041776012 0.05608484310162 0.1474883209046 0.16849397746271 0.08757687857743 0.02573154209658 0.00285108673439 0.00040746551263 -0.0002626961267 -0.00191615667354 -0.01020512783606 0.0 0.0 -0.28976421434607 -0.10635972996776 -0.00444613379317 0.08279840390382 0.20257702695595 0.18757728043386 0.09872070816104 0.02879227821857 0.00350861621685 0.00037880006062 3.320639514e-05 2.46420678e-06 1.5876318e-07 9.10557e-09 4.7282e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.5514129e-07 1.289677521e-05 0.00014714171308 0.00137112135451 0.009860422962 0.05608494471003 0.14748901836641 0.16849348170237 0.08756776750988 0.02577356567414 0.00286812630968 0.00035143669158 -0.00067939285949 -0.00549730841311 -0.05290555969673 -0.21190848109095 -0.41603615041886 -0.30994944904394 -0.11685972638578 -0.00820021260153 0.08245482303754 0.2041501287416 0.18823792128335 0.09864146088779 0.02864537816129 0.00349500385866 0.00037766201716 3.312804444e-05 2.45957973e-06 1.5851979e-07 9.095e-09 4.724e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677527e-05 0.00014714171417 0.00137112138013 0.00986042380701 0.05608495853484 0.14748910604344 0.16849331781319 0.08756756223286 0.02577689741352 0.00286341851508 0.00034545199173 -0.00070931328131 -0.00587967884441 -0.05488397628023 -0.20978683828578 -0.41055361049454 -0.30736272604818 -0.11888907549261 -0.00885354594064 0.08246443377367 0.20433332969255 0.18828810177625 0.09863322648774 0.02863001700041 0.0034936701914 0.00037755558774 3.312090148e-05 2.45919765e-06 1.5850872e-07 9.09536e-09 4.7248e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171432 0.00137112138276 0.00986042388135 0.05608495973299 0.14748911837158 0.16849329091425 0.08756755838359 0.02577729812798 0.002862683809 0.00034473233761 -0.0007129546583 -0.00594983184858 -0.05525162142588 -0.20825476990535 -0.40287264940442 -0.3068866180226 -0.11909420173658 -0.00892222803744 0.08246930503967 0.20435181184954 0.18829118617885 0.09863236218877 0.0286286668093 0.00349356160732 0.00037754734736 3.312039384e-05 2.45918059e-06 1.5850863e-07 9.09531e-09 4.7247e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171432 0.00137112138291 0.00986042388625 0.05608495981513 0.14748911923517 0.16849328835208 0.08756755841194 0.0257773204052 0.00286264701434 0.00034467333896 -0.00071327784077 -0.00595650641621 -0.05528432230704 -0.20801314283949 -0.40163815438284 -0.30682821970483 -0.11911128755671 -0.00892810161076 0.08246996303913 0.20435333298064 0.18829131002708 0.09863227820206 0.02862856521176 0.00349355410825 0.00037754681961 3.312037888e-05 2.4591799e-06 1.5850818e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171432 0.00137112138292 0.00986042388661 0.05608495982319 0.14748911926007 0.16849328818613 0.08756755845799 0.02577732146991 0.00286264548906 0.00034466922536 -0.00071330130728 -0.00595702602519 -0.05528654721764 -0.20798572737886 -0.40150409853683 -0.30682285064311 -0.11911246424348 -0.00892851906855 0.08247002290676 0.20435343877191 0.18829131085553 0.09863227145281 0.02862855859392 0.00349355365691 0.00037754681232 3.312037851e-05 2.45917911e-06 1.5850808e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.0098604238867 0.05608495982303 0.14748911925026 0.16849328822048 0.08756755844091 0.02577732147351 0.00286264548853 0.00034466900473 -0.00071330276035 -0.00595706023 -0.05528665570975 -0.20798318695735 -0.40149208185766 -0.30682244779549 -0.11911253346856 -0.008928544609 0.08247002710855 0.20435344521212 0.18829131049767 0.09863227095201 0.02862855818032 0.00349355365796 0.00037754681317 3.312037748e-05 2.45917902e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982295 0.14748911925298 0.16849328821859 0.08756755843209 0.02577732146857 0.00286264550403 0.00034466900413 -0.00071330283038 -0.00595706220945 -0.05528665949939 -0.20798299042998 -0.40149118219944 -0.30682242211423 -0.11911253707403 -0.00892854603675 0.08247002741112 0.20435344559805 0.18829131041827 0.09863227093151 0.02862855820036 0.00349355365952 0.00037754681178 3.312037738e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925366 0.16849328821482 0.08756755843521 0.02577732147206 0.00286264550064 0.00034466900404 -0.00071330282557 -0.00595706229016 -0.05528665949975 -0.20798297731933 -0.40149112447708 -0.30682242064291 -0.11911253729432 -0.0089285460565 0.08247002747176 0.20435344554625 0.18829131041241 0.09863227094718 0.02862855820763 0.00349355365813 0.00037754681168 3.312037741e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.16849328821497 0.08756755843571 0.02577732147255 0.00286264549936 0.000344669003 -0.0007133028258 -0.00595706228852 -0.05528665948821 -0.20798297657609 -0.40149112116764 -0.3068224205565 -0.1191125372754 -0.00892854604262 0.0824700274603 0.20435344554184 0.18829131041725 0.09863227094523 0.02862855820423 0.00349355365799 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925351 0.16849328821513 0.08756755843555 0.02577732147236 0.00286264549959 0.00034466900296 -0.00071330282646 -0.00595706229082 -0.05528665949138 -0.2079829765914 -0.40149112099185 -0.30682242058036 -0.1191125372716 -0.00892854604675 0.08247002745814 0.20435344554734 0.18829131041713 0.09863227094423 0.02862855820385 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843554 0.02577732147236 0.00286264549962 0.000344669003 -0.00071330282642 -0.00595706229109 -0.05528665949262 -0.20798297660666 -0.40149112105786 -0.30682242057942 -0.11911253727341 -0.00892854604763 0.08247002745888 0.20435344554743 0.1882913104169 0.09863227094437 0.02862855820401 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.16849328821509 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.00071330282639 -0.00595706229096 -0.05528665949204 -0.20798297660033 -0.40149112105088 -0.30682242057758 -0.11911253727355 -0.00892854604744 0.08247002745891 0.20435344554719 0.18829131041693 0.0986322709444 0.02862855820401 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229096 -0.05528665949194 -0.20798297659944 -0.40149112104638 -0.3068224205777 -0.11911253727347 -0.00892854604743 0.08247002745888 0.20435344554721 0.18829131041694 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659976 -0.401491121047 -0.30682242057777 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949199 -0.20798297659977 -0.40149112104714 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104708 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104708 -0.30682242057776 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659975 -0.40149112104709 -0.30682242057777 -0.11911253727347 -0.00892854604744 0.08247002745888 0.20435344554722 0.18829131041693 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949198 -0.20798297659977 -0.40149112104714 -0.3068224205777 -0.11911253727347 -0.00892854604743 0.08247002745888 0.20435344554721 0.18829131041694 0.09863227094439 0.028628558204 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949199 -0.20798297659976 -0.40149112104695 -0.30682242057757 -0.11911253727357 -0.00892854604744 0.08247002745891 0.20435344554719 0.18829131041694 0.09863227094441 0.02862855820401 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229097 -0.05528665949193 -0.20798297659934 -0.4014911210464 -0.30682242057955 -0.11911253727343 -0.00892854604766 0.08247002745888 0.20435344554737 0.18829131041682 0.09863227094437 0.02862855820402 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843555 0.02577732147237 0.0028626454996 0.00034466900299 -0.0007133028264 -0.00595706229096 -0.05528665949191 -0.20798297660068 -0.40149112105161 -0.30682242058054 -0.11911253727107 -0.00892854604663 0.08247002745819 0.20435344554742 0.18829131041705 0.09863227094414 0.02862855820388 0.00349355365802 0.00037754681171 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.16849328821509 0.08756755843555 0.02577732147237 0.00286264549961 0.00034466900299 -0.00071330282641 -0.00595706229099 -0.05528665949335 -0.20798297660794 -0.40149112105689 -0.30682242055537 -0.11911253727618 -0.00892854604209 0.08247002746025 0.20435344554291 0.18829131041935 0.09863227094549 0.02862855820401 0.00349355365799 0.00037754681172 3.31203774e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925352 0.1684932882151 0.08756755843554 0.02577732147239 0.00286264549958 0.000344669003 -0.00071330282634 -0.00595706229119 -0.05528665949259 -0.20798297658425 -0.40149112098653 -0.30682242065512 -0.11911253729767 -0.00892854605662 0.08247002746967 0.20435344554334 0.1882913104136 0.09863227094915 0.02862855820717 0.00349355365806 0.00037754681168 3.312037741e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925351 0.1684932882151 0.08756755843556 0.02577732147238 0.00286264549949 0.00034466900301 -0.00071330282627 -0.00595706229049 -0.0552866594804 -0.20798297659359 -0.40149112120169 -0.30682242236855 -0.11911253701738 -0.00892854602118 0.08247002741378 0.20435344559643 0.18829131039446 0.09863227092805 0.02862855820403 0.00349355365936 0.00037754681172 3.312037738e-05 2.45917904e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982301 0.14748911925355 0.16849328821496 0.08756755843567 0.02577732147211 0.00286264550042 0.00034466900282 -0.00071330282785 -0.00595706228836 -0.05528665954269 -0.2079829776289 -0.40149112498633 -0.30682245165717 -0.11911253261384 -0.00892854423821 0.08247002707413 0.20435344533294 0.18829131061176 0.09863227094785 0.02862855817489 0.00349355365872 0.00037754681301 3.312037743e-05 2.45917902e-06 1.5850809e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388672 0.05608495982298 0.14748911925355 0.16849328821575 0.08756755843405 0.02577732147186 0.00286264550257 0.00034466900262 -0.00071330283089 -0.00595706225005 -0.0552866604288 -0.2079829952266 -0.40149118977969 -0.30682290191874 -0.11911244936207 -0.00892851301735 0.08247002229256 0.20435344068792 0.18829131244229 0.09863227160105 0.02862855842353 0.00349355364794 0.00037754681272 3.312037845e-05 2.45917908e-06 1.5850808e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138294 0.00986042388673 0.05608495982314 0.14748911925236 0.16849328821887 0.08756755843368 0.02577732147436 0.00286264549122 0.00034466900124 -0.00071330281742 -0.00595706129504 -0.05528666892902 -0.20798324977681 -0.4014921809149 -0.3068287795783 -0.11911106927729 -0.00892801770168 0.08246995524388 0.20435336179604 0.18829133354073 0.09863228043026 0.0286285628423 0.003493553905 0.00037754680864 3.312037884e-05 2.4591799e-06 1.5850817e-07 9.09525e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138293 0.00986042388669 0.05608495982371 0.14748911925531 0.16849328819558 0.08756755845112 0.02577732147247 0.00286264551816 0.00034466901846 -0.00071330255081 -0.0059570407437 -0.05528670203532 -0.2079864352225 -0.40150518136624 -0.30689156246244 -0.11909151490416 -0.0089212420599 0.08246921119953 0.20435217848792 0.18829149462775 0.09863239149608 0.02862863587426 0.00349355880854 0.00037754714555 3.312038319e-05 2.45918042e-06 1.5850866e-07 9.09531e-09 4.7247e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171433 0.00137112138294 0.00986042388667 0.05608495982014 0.14748911925792 0.16849328822696 0.08756755837446 0.02577732089169 0.00286264689365 0.0003446700979 -0.00071329422809 -0.00595668187405 -0.05528605670734 -0.20802074463151 -0.40164736929758 -0.30739454757615 -0.11886246912115 -0.00884401658073 0.08246338146612 0.20433722698779 0.18829139515278 0.09863353790165 0.02862967742746 0.00349363746881 0.00037755306839 3.31207446e-05 2.45918961e-06 1.5850845e-07 9.09537e-09 4.7248e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677528e-05 0.00014714171435 0.00137112138313 0.00986042388607 0.05608495978509 0.14748911886671 0.16849328909917 0.08756755748684 0.0257773064374 0.00286267717304 0.00034469584518 -0.00071312657783 -0.00595147050873 -0.05526407405146 -0.2083013309329 -0.40293855526316 -0.31013083635293 -0.1166306717201 -0.0081172544791 0.08244176426225 0.20418239078556 0.18826920033553 0.09864329913965 0.02864205859756 0.00349468536673 0.00037763688598 3.312643079e-05 2.45949262e-06 1.5851549e-07 9.09482e-09 4.724e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677529e-05 0.00014714171435 0.00137112138198 0.0098604238387 0.05608495900343 0.1474891115308 0.16849330107721 0.08756754959327 0.02577700361782 0.00286327925622 0.00034512515804 -0.00071072957808 -0.00589168886446 -0.05495076985629 -0.21000015859399 -0.41081849510195 -0.29004283960962 -0.10609703249719 -0.00437330903976 0.08281014419744 0.20281967783098 0.18778878894278 0.09874626784205 0.02877607433841 0.00350683204714 0.00037864500075 3.319599438e-05 2.46364297e-06 1.5873618e-07 9.10427e-09 4.7274e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677526e-05 0.00014714171379 0.00137112136536 0.00986042322701 0.05608494897904 0.14748904261494 0.16849338332497 0.08756751303546 0.02577424242403 0.00286763829482 0.00034940696399 -0.00068779058531 -0.00553968519705 -0.05299238303428 -0.21221087065655 -0.41669112547517 0.0 0.0 0.00317035604216 0.07920057596829 0.1980968246398 0.18596143017817 0.09872472900923 0.02941220283246 0.00357062856673 0.00038453136597 3.363812308e-05 2.49163186e-06 1.6032195e-07 9.19006e-09 4.7839e-10 -8.977e-11 4.4e-12 8.18e-12 -5.5e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.551413e-07 1.289677538e-05 0.00014714171627 0.00137112133961 0.00986041868998 0.05608485391633 0.14748837620394 0.16849370495639 0.0875754344113 0.02573277419316 0.00284738228609 0.00041193662967 -0.00029779800445 -0.00198291026902 -0.01022592169278 0.0 0.0 0.0 0.0 0.0 0.0 0.11851105780903 0.16744204896662 0.09709745177786 0.03208383189485 0.00385190882053 0.00040954101109 3.559436081e-05 2.62182816e-06 1.6786417e-07 9.58271e-09 5.0295e-10 -9.008e-11 3.7e-12 8.35e-12 -5.2e-13 -3.2e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.5514136e-07 1.28967766e-05 0.00014714173693 0.00137112165792 0.00986042371564 0.05608491364693 0.14748869124828 0.16849395858036 0.08757870956904 0.02576101233218 0.00284730572698 0.0003444493969 -7.456805235e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0816434408622 0.15736904226042 0.08158884461609 0.02588545288926 0.00317113675443 0.00034326828609 3.027117313e-05 2.25818525e-06 1.4612698e-07 8.43472e-09 4.3188e-10 -8.872e-11 5.55e-12 7.84e-12 -5.9e-13 -2.9e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.13251e-08 9.5514165e-07 1.289678177e-05 0.00014714181873 0.00137112277539 0.00986043784584 0.05608506974342 0.1474891668372 0.16849159926504 0.08758101660882 0.02577127458253 0.0028829220284 0.00024118004541 3.110317933e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.04047589784669 0.02142323503434 0.00661775973331 0.00086245377253 9.677891862e-05 8.78678684e-06 6.7233157e-07 4.448319e-08 2.67577e-09 3.757e-11 -4.459e-11 1.302e-11 2.98e-12 -8e-13 -4e-14 5e-14 -0.0 -0.0 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.5514143e-07 1.289677792e-05 0.00014714175892 0.00137112200108 0.00986042955118 0.05608499337059 0.14748900937526 0.16849274477962 0.08757873603022 0.02577133662423 0.00288834020821 0.00023657924056 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00552645355567 0.00766952409719 0.00202301301163 0.00025021621351 2.665471663e-05 2.36482013e-06 1.7946809e-07 1.189247e-08 7.2908e-10 -9.607e-11 -3.87e-12 1.128e-11 -1.1e-13 -5.5e-13 8e-14 2e-14 -1e-14 -0.0 -0.0 6e-14 -9e-14 -8.5e-13 4.06e-12 1.276e-11 -5.7e-11 9.601e-11 3.57649e-09 6.132509e-08 9.5514125e-07 1.289677436e-05 0.0001471417005 0.00137112113368 0.00986041588562 0.05608481753275 0.14748823944956 0.16849479740968 0.08757815195705 0.02573665967029 0.0028535856797 0.00040249832518 0.0 0.0 0.0 0.0 0.0 D/cons.5.00.000000.dat 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 0.25000005125 -D/cons.5.00.000050.dat 2.5000005 1.28771041314719 1.28237101785773 1.37307654778956 1.43475330123318 1.35660675728342 1.30054614844904 1.25991425124101 1.25129413041918 1.25013881729124 1.25001247310416 1.25000116502543 1.25000030937765 1.25000025319241 1.25000024982679 1.25000024994805 1.25000025003876 1.2500002500021 1.25000024999797 1.25000025000015 1.2500002500001 1.25000024999998 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865025 1.24999742456292 1.24996210092923 1.24956500663485 1.24594455086714 1.22083645349903 1.08237528674293 0.79003326268914 0.59406963222032 0.48467788019111 0.32343341733435 0.25830676662374 0.25076614044385 0.25071711903441 0.25601082174762 0.31390121852853 0.38551924399443 0.25000005125 2.32938914486433 1.65542639644012 1.53800639041291 1.48147378863281 1.45004363379841 1.39733216165837 1.34368075357703 1.27415382549456 1.25305959795245 1.25033828856222 1.25003062233096 1.25000255491343 1.25000040087012 1.25000025849399 1.25000025020754 1.25000024985379 1.2500002500396 1.2500002500097 1.25000024999758 1.25000024999983 1.25000025000016 1.25000024999999 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865026 1.24999742456303 1.24996210093128 1.24956500666307 1.2459445509859 1.22083644355696 1.08237510864833 0.79003214440013 0.594074845035 0.48466582355736 0.32333659530386 0.25830401887428 0.25087332148925 0.25066250441678 0.25137057586653 0.25515536027337 0.25129307057795 0.70241313023696 2.17550169629771 2.19598445470439 1.88281614868001 1.67347269643493 1.60038189964261 1.50814734033859 1.47386695706 1.32489584471257 1.25913429292912 1.25098654631294 1.2500871217263 1.2500067214321 1.25000066836847 1.25000027411893 1.25000025113248 1.25000024976771 1.25000025001625 1.25000025002272 1.25000024999829 1.25000024999916 1.2500002500002 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865028 1.24999742456348 1.24996210093994 1.24956500680644 1.24594455299033 1.22083646775563 1.08237532900622 0.79003127418425 0.59407748265339 0.48466235470915 0.32336030241924 0.25825024407567 0.25087131979421 0.24997495531588 0.25003836908334 0.25072680794807 0.26229207737801 0.66512591009523 2.21147018220874 2.35676158049132 2.21712121713238 1.93231058212771 1.70098015430335 1.56821572371889 1.52394914687361 1.34084539182835 1.26107879939841 1.25118744811927 1.2501039110033 1.25000790666384 1.2500007411427 1.25000027807854 1.2500002513185 1.25000024976442 1.25000025001067 1.25000025002462 1.25000024999849 1.25000024999905 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865025 1.24999742456285 1.24996210092794 1.24956500661503 1.24594455056711 1.22083644700865 1.08237519975091 0.79003264817951 0.59407249689634 0.48466707893663 0.32339534781762 0.25829342422411 0.2508756054162 0.24995889264239 0.25239537483318 0.2617568748844 0.39201884529681 0.79308593048212 2.26327941718504 2.28123797378839 2.42376234114102 2.1902788451886 1.9053232561305 1.66982049242096 1.54493225969944 1.33686274723773 1.26054216255183 1.25113755871825 1.25009977479429 1.25000762196749 1.25000072438254 1.25000027713242 1.25000025126516 1.25000024976335 1.25000025001298 1.25000025002418 1.25000024999838 1.25000024999908 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865024 1.24999742456261 1.24996210092331 1.24956500653793 1.24594454956784 1.22083643931184 1.08237515875682 0.79003403578279 0.59406770287149 0.48468629603197 0.32345784663035 0.25827390769754 0.25072923256219 0.25076037896476 0.25595145803994 0.28352053221681 0.52588195746334 0.88159264805716 1.62275399267511 2.2111177711593 2.36432338946193 2.25364631251102 1.94963262381698 1.68693481416045 1.54614238609352 1.33514618408157 1.26036344962438 1.25112084933293 1.25009850818288 1.25000754153213 1.25000071964828 1.25000027683623 1.25000025125144 1.25000024976377 1.25000025001333 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456255 1.2499621009224 1.24956500652659 1.24594454926264 1.22083642330458 1.08237490396598 0.79003240485768 0.59407713396473 0.48469075541377 0.32340042481391 0.2581124976028 0.25124677632859 0.25113280294233 0.26509476701976 0.38904878639213 0.74902369781545 1.08958978249324 1.4994418080043 2.17563740619144 2.35585216972188 2.26950105213554 1.95624770775301 1.68959390734255 1.54558567723252 1.33463531486453 1.26031730853377 1.25111702152282 1.25009824603188 1.25000752569009 1.25000071877759 1.25000027680453 1.25000025125078 1.25000024976372 1.25000025001333 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092223 1.24956500652381 1.24594454919681 1.22083642082348 1.08237486417439 0.79003226313922 0.59407784080274 0.48469296431156 0.32339323622067 0.2580961279969 0.25132004507773 0.25124060766019 0.26673995893773 0.40280096628655 0.75227643296502 1.07210935517376 1.45462819238286 2.16616404847065 2.35410972170351 2.27172372746813 1.95708242340229 1.68983230453157 1.54543421763858 1.33456807083054 1.26031181813031 1.25111659975841 1.2500982184265 1.2500075243799 1.25000071877575 1.25000027680896 1.25000025125103 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.24956500652323 1.24594454918767 1.22083642063683 1.08237486067396 0.79003225672225 0.59407786502378 0.48469326068791 0.32339203561987 0.25809449085338 0.25133243166538 0.25125728120268 0.26704113956456 0.40528375287396 0.75125468651125 1.05179698532125 1.4487976431273 2.16490367506626 2.35392323487938 2.2719769319136 1.95716699081776 1.68984778567102 1.5454169800776 1.3345612651318 1.26031130740058 1.25111656295786 1.2500982162533 1.25000752440692 1.25000071877701 1.25000027680864 1.25000025125098 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.2499621009222 1.24956500652321 1.2459445491865 1.22083642060792 1.08237486051188 0.79003225644853 0.59407786425177 0.48469329319397 0.32339196092043 0.2580943815574 0.2513333292264 0.25125893495293 0.26707096292002 0.40551622982956 0.75089038815575 1.04814146955543 1.44817948457773 2.1647711578621 2.35390674960464 2.27200030847654 1.95717399022528 1.68984835334902 1.54541533832189 1.33456070808648 1.26031126847479 1.25111656029696 1.25009821632685 1.25000752439753 1.25000071877318 1.25000027680831 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.24956500652321 1.24594454918657 1.2208364206075 1.08237486051245 0.79003225628444 0.59407786413954 0.48469329598046 0.32339195684444 0.25809437472931 0.25133338661826 0.25125906766679 0.26707338004666 0.4055341809066 0.75083345095187 1.04772760453119 1.44812686993988 2.16475996958265 2.35390553379242 2.27200211501535 1.95717447744566 1.68984834282363 1.54541521157049 1.33456066968646 1.26031126587986 1.25111656039045 1.25009821632698 1.25000752438784 1.25000071877261 1.25000027680829 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.24956500652321 1.24594454918653 1.22083642060731 1.08237486050276 0.79003225624929 0.59407786426171 0.48469329604288 0.323391956707 0.25809437443776 0.25133338962119 0.25125907663017 0.26707354511211 0.40553531535055 0.75082708804042 1.04768935130325 1.44812311983274 2.16475917832545 2.35390545664642 2.27200223447826 1.95717450702192 1.68984833877603 1.54541520296357 1.33456066721942 1.26031126600182 1.25111656040947 1.25009821631153 1.2500075243878 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050124 0.7900322562663 0.59407786425184 0.4846932959713 0.32339195677926 0.25809437448872 0.25133338962774 0.25125907698135 0.26707355491483 0.40553537641506 0.75082653089893 1.0476864288339 1.44812288961801 2.16475912990633 2.35390545171735 2.2720022419473 1.95717450907255 1.68984833853071 1.54541520253119 1.33456066739429 1.26031126602762 1.25111656038969 1.25009821631154 1.25000752438804 1.25000071877273 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.0823748605013 0.79003225626691 0.59407786424147 0.48469329599093 0.32339195677095 0.25809437447384 0.25133338958562 0.25125907690319 0.26707355526755 0.40553537889429 0.75082649005777 1.04768623863001 1.44812287690543 2.16475912689733 2.35390545185173 2.27200224217089 1.95717450873953 1.68984833866033 1.54541520275373 1.33456066743808 1.26031126600648 1.25111656038922 1.25009821631197 1.25000752438801 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.22083642060711 1.08237486050133 0.79003225626606 0.59407786424223 0.48469329599557 0.32339195676625 0.25809437446945 0.2513333896037 0.25125907691929 0.26707355520618 0.40553537890313 0.75082648755217 1.04768622765671 1.44812287619269 2.16475912713329 2.35390545194232 2.2720022419895 1.95717450871019 1.68984833864378 1.54541520272659 1.33456066741182 1.26031126600577 1.25111656038986 1.25009821631189 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050133 0.79003225626613 0.59407786424267 0.48469329599439 0.32339195676672 0.2580943744704 0.25133338960565 0.25125907692657 0.26707355522627 0.40553537887785 0.75082648761955 1.0476862270805 1.44812287641258 2.16475912718433 2.35390545190732 2.27200224202376 1.95717450874326 1.68984833863392 1.54541520271084 1.33456066741002 1.26031126600651 1.25111656038978 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424259 0.48469329599429 0.32339195676689 0.25809437447049 0.25133338960469 0.25125907692546 0.26707355523109 0.40553537889546 0.75082648767997 1.04768622729874 1.44812287639617 2.16475912715352 2.35390545190334 2.27200224203458 1.95717450874368 1.68984833863499 1.54541520271298 1.33456066741119 1.26031126600643 1.25111656038975 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424257 0.48469329599437 0.32339195676686 0.25809437447043 0.25133338960471 0.25125907692524 0.26707355522978 0.40553537889477 0.75082648765648 1.04768622727443 1.44812287638057 2.16475912715177 2.353905451905 2.27200224203224 1.95717450874204 1.68984833863534 1.54541520271353 1.33456066741114 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599437 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522969 0.40553537889378 0.7508264876528 1.04768622725943 1.44812287638206 2.16475912715311 2.35390545190499 2.27200224203202 1.95717450874221 1.68984833863525 1.54541520271335 1.33456066741108 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522978 0.40553537889396 0.75082648765401 1.04768622726155 1.4481228763826 2.16475912715306 2.35390545190491 2.27200224203217 1.95717450874228 1.68984833863524 1.54541520271334 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522978 0.405535378894 0.7508264876541 1.04768622726201 1.44812287638246 2.164759127153 2.35390545190492 2.27200224203217 1.95717450874227 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638244 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874226 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638245 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874226 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638245 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874227 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638245 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874226 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638245 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874227 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638245 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874227 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638245 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874227 1.68984833863524 1.54541520271334 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638244 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874226 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726183 1.44812287638246 2.16475912715299 2.35390545190492 2.27200224203217 1.95717450874227 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765402 1.04768622726185 1.44812287638261 2.16475912715308 2.35390545190491 2.27200224203217 1.95717450874227 1.68984833863523 1.54541520271334 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.405535378894 0.75082648765412 1.04768622726203 1.448122876382 2.16475912715317 2.35390545190505 2.27200224203204 1.95717450874225 1.68984833863528 1.54541520271334 1.33456066741108 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889402 0.75082648765406 1.04768622726141 1.44812287638052 2.1647591271513 2.35390545190501 2.27200224203222 1.95717450874224 1.68984833863539 1.54541520271354 1.33456066741112 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522979 0.40553537889369 0.75082648765238 1.04768622725949 1.44812287639797 2.16475912715444 2.35390545190246 2.2720022420343 1.95717450874258 1.68984833863437 1.54541520271308 1.33456066741122 1.26031126600642 1.25111656038975 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676684 0.25809437447042 0.25133338960474 0.25125907692536 0.26707355522977 0.40553537889411 0.75082648765748 1.04768622727688 1.4481228764116 2.16475912719123 2.35390545191031 2.27200224202556 1.95717450874249 1.68984833863453 1.54541520271058 1.33456066741029 1.26031126600652 1.25111656038977 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424257 0.48469329599438 0.32339195676688 0.25809437447044 0.25133338960471 0.25125907692533 0.2670735552296 0.40553537889946 0.75082648768628 1.04768622729568 1.44812287617673 2.16475912710967 2.35390545195251 2.27200224199245 1.95717450873473 1.68984833865595 1.54541520272466 1.33456066741029 1.26031126600593 1.25111656038987 1.25009821631189 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626615 0.5940778642426 0.48469329599435 0.3233919567669 0.2580943744705 0.25133338960515 0.25125907692502 0.26707355523071 0.40553537888585 0.75082648759488 1.04768622706272 1.44812287702389 2.16475912694057 2.35390545180383 2.27200224214507 1.95717450873448 1.68984833864545 1.54541520275879 1.33456066743265 1.26031126600561 1.25111656038933 1.25009821631198 1.25000752438801 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050134 0.79003225626609 0.59407786424259 0.4846932959943 0.32339195676612 0.25809437446988 0.25133338960492 0.25125907692606 0.26707355522814 0.40553537885387 0.75082648762001 1.04768622777266 1.44812289157312 2.16475913097847 2.35390545185066 2.27200224206461 1.95717450887206 1.6898483384238 1.54541520255373 1.33456066742371 1.26031126602378 1.25111656038899 1.25009821631158 1.25000752438805 1.25000071877273 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.22083642060711 1.08237486050136 0.79003225626635 0.59407786424189 0.48469329599495 0.32339195676879 0.25809437447064 0.25133338959302 0.25125907692344 0.26707355522629 0.4055353791217 0.75082649136761 1.04768624036755 1.44812315003301 2.16475919552574 2.35390545912751 2.27200223629866 1.95717450835072 1.68984833962458 1.5454152028101 1.33456066718672 1.26031126601916 1.25111656040674 1.2500982163111 1.25000752438779 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.22083642060707 1.08237486050099 0.79003225626711 0.59407786424508 0.48469329599025 0.32339195678296 0.25809437448419 0.25133338961031 0.25125907693291 0.26707355514138 0.40553538061308 0.75082655198014 1.04768645474356 1.4481272741785 2.16476021645349 2.35390557302904 2.27200214883417 1.95717449608703 1.68984835184311 1.54541521005259 1.33456066866458 1.2603112658376 1.25111656040225 1.25009821632566 1.2500075243876 1.25000071877259 1.25000027680829 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.22083642060714 1.08237486050156 0.79003225626147 0.59407786425988 0.48469329598863 0.32339195672686 0.25809437444561 0.25133338968635 0.25125907696433 0.26707355155399 0.40553537375491 0.75082735980946 1.04768968911956 1.44818396412147 2.16477417214173 2.35390728567186 2.27200082665249 1.95717423548877 1.68984848500252 1.54541531925848 1.33456069426557 1.26031126747697 1.25111656025268 1.25009821633175 1.25000752439743 1.25000071877312 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.24956500652321 1.24594454918657 1.2208364206077 1.0823748605093 0.79003225626023 0.5940778641778 0.48469329607741 0.32339195685209 0.25809437447028 0.25133338838428 0.25125907510286 0.26707346649696 0.40553484798658 0.75083643249989 1.04773127045257 1.44883706350351 2.16493404347746 2.35392932492575 2.2719834343726 1.95716973454534 1.68984944035773 1.54541680148914 1.33456110157924 1.26031129478856 1.25111656209305 1.25009821621729 1.25000752440834 1.2500007187773 1.25000027680866 1.25000025125098 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918638 1.22083642060539 1.08237486049871 0.79003225638155 0.59407786419023 0.48469329558839 0.32339196082348 0.25809437821232 0.25133335472523 0.25125902296137 0.26707193955178 0.40552302077901 0.75092274888321 1.04817271664303 1.45488602890352 2.1664020173718 2.35416512275071 2.27178829595515 1.95710773122331 1.68984840019177 1.54543321582387 1.33456653538048 1.26031168819205 1.25111659021135 1.25009821785505 1.25000752434872 1.25000071877567 1.25000027680904 1.25000025125104 1.25000024976366 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.24956500652308 1.24594454918515 1.22083642060657 1.08237486049475 0.7900322570325 0.59407786450981 0.48469328650725 0.323392036654 0.25809446624272 0.25133273500911 0.25125811064431 0.26704986427034 0.40533060912819 0.75143400271203 1.05201995902139 1.50075414017454 2.17707775818273 2.35625384916335 2.26997560379394 1.95644120117793 1.68973206927633 1.54557833846431 1.33462442914957 1.26031630530062 1.25111694217059 1.25009824096296 1.25000752541737 1.25000071876133 1.25000027680391 1.25000025125077 1.25000024976371 1.25000025001334 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092218 1.24956500652316 1.24594454918972 1.22083642074764 1.08237486298063 0.79003227029304 0.59407784282996 0.48469316997037 0.32339326644619 0.25809603415422 0.2513231350166 0.25124655317388 0.26680069898177 0.40303624078708 0.75302275708572 1.07293554941358 1.62372070912612 2.21296668836419 2.36607386232852 2.25597083636228 1.9510373362148 1.68792577101082 1.5463779242168 1.33511886198575 1.26035992955444 1.25112050680737 1.25009848390721 1.25000754018481 1.25000071957138 1.2500002768316 1.25000025125126 1.25000024976378 1.25000025001334 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092229 1.24956500652531 1.24594454924566 1.22083642264905 1.0823748907272 0.79003240479215 0.59407725702044 0.48469192431196 0.32340186626944 0.25811193233929 0.25125998208175 0.25115767748227 0.26529655952153 0.38949014842951 0.74994475729068 1.09084203370899 2.2653574465929 2.28342467536133 2.42742368954988 2.19356794925205 1.91444604002328 1.67630880343301 1.54676135594731 1.33703003857736 1.26055329476089 1.25113841040714 1.25009983235796 1.25000762577309 1.25000072462068 1.25000027714387 1.2500002512655 1.25000024976335 1.25000025001298 1.25000025002418 1.25000024999838 1.25000024999908 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456253 1.24996210092184 1.24956500651618 1.24594454928597 1.22083643524686 1.08237510970953 0.79003404388661 0.59406820571036 0.4846901482205 0.32346283770569 0.25825838746008 0.25076259823637 0.25079904187644 0.2562183799047 0.28399344258391 0.52649112887573 0.88236644734338 2.21293402874531 2.35841621653486 2.22026193505462 1.94923010909349 1.73494560333722 1.5897486773084 1.53402739553053 1.34213681534349 1.26117469748791 1.2511963291234 1.25010453887693 1.25000794630805 1.2500007433816 1.25000027819817 1.25000025132382 1.25000024976441 1.25000025001051 1.25000025002467 1.2500002499985 1.25000024999905 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865022 1.24999742456232 1.24996210091788 1.24956500644927 1.24594454826525 1.22083641941801 1.08237493939252 0.79003309498392 0.59407106341725 0.48466973988691 0.32337919880963 0.25831150109953 0.25090569903229 0.25009240902869 0.25256055930519 0.26203410506729 0.39242229576972 0.79376495139749 2.17580149240474 2.197024901603 1.89157782268887 1.70743985455685 1.64153750845796 1.52819460273831 1.48096555448691 1.32358174374939 1.25902953424305 1.25098548713539 1.25008753828785 1.25000678193825 1.25000067354205 1.25000027444197 1.25000025115337 1.25000024976749 1.25000025001538 1.25000025002291 1.25000024999834 1.25000024999914 1.2500002500002 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865019 1.24999742456155 1.24996210090373 1.24956500622806 1.24594454529001 1.22083638294872 1.0823745925837 0.79003338861426 0.59406982543149 0.4846628244672 0.32329951465587 0.25837483459403 0.25083960192788 0.25027508408003 0.25016936476487 0.25076389179531 0.2623803623661 0.66531359840214 2.32943500056272 1.65631048324959 1.54937287349388 1.49612866138386 1.4450198024074 1.37075946457507 1.33846425553489 1.27329725375543 1.25290909294601 1.25031745520669 1.25002851011455 1.25000238445251 1.25000038990607 1.25000025790929 1.25000025017178 1.25000024986219 1.25000025003954 1.25000025000899 1.25000024999762 1.25000024999986 1.25000025000015 1.25000024999999 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865021 1.24999742456213 1.24996210091429 1.24956500638984 1.24594454734719 1.22083640432065 1.08237476389037 0.79003287284521 0.59407174099397 0.48466655355203 0.32331692137533 0.25833925619905 0.25086729915979 0.25071065980017 0.25135136321776 0.2551739314816 0.25130536745748 0.70250662666548 2.5000005 1.26054481201456 1.27544189662969 1.30891850816541 1.33377214865048 1.33504526889884 1.28246898173154 1.25747594508209 1.25088918446204 1.25009166557878 1.25000816106547 1.2500008391122 1.25000028833896 1.25000025199155 1.25000024973894 1.25000024998726 1.25000025003499 1.25000024999965 1.25000024999832 1.25000025000023 1.25000025000008 1.25000024999998 1.25000025000001 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865024 1.24999742456269 1.24996210092474 1.24956500656041 1.24594454985657 1.22083644300847 1.08237520299756 0.79003351072973 0.59406852240693 0.48467972267075 0.32343551221606 0.25831049760352 0.25075792552063 0.2507187074539 0.2565921302427 0.3138016114241 0.38796626532293 0.25000005125 +D/cons.5.00.000050.dat 2.5000005 1.28771041314719 1.28237101785773 1.37307654778956 1.43475330123318 1.35660675728342 1.30054614844904 1.25991425124101 1.25129413041918 1.25013881729124 1.25001247310416 1.25000116502543 1.25000030937765 1.25000025319241 1.25000024982679 1.25000024994805 1.25000025003876 1.2500002500021 1.25000024999797 1.25000025000015 1.2500002500001 1.25000024999998 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865025 1.24999742456292 1.24996210092923 1.24956500663485 1.24594455086714 1.22083645349903 1.08237528674293 0.79003326268914 0.59406963222032 0.48467788019111 0.32343341733435 0.25830676662374 0.25076614044385 0.25071711903441 0.25601082174762 0.31390121852853 0.38551924399443 0.25000005125 2.32938914486433 1.65542639644012 1.53800639041291 1.48147378863281 1.45004363379841 1.39733216165837 1.34368075357703 1.27415382549456 1.25305959795245 1.25033828856222 1.25003062233096 1.25000255491343 1.25000040087012 1.25000025849399 1.25000025020754 1.25000024985379 1.2500002500396 1.2500002500097 1.25000024999758 1.25000024999983 1.25000025000016 1.25000024999999 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865026 1.24999742456303 1.24996210093128 1.24956500666307 1.2459445509859 1.22083644355696 1.08237510864833 0.79003214440013 0.594074845035 0.48466582355736 0.32333659530386 0.25830401887428 0.25087332148925 0.25066250441678 0.25137057586653 0.25515536027337 0.25129307057795 0.70241313023696 2.17550169629771 2.19598445470439 1.88281614868001 1.67347269643493 1.60038189964261 1.50814734033859 1.47386695706 1.32489584471257 1.25913429292912 1.25098654631294 1.2500871217263 1.2500067214321 1.25000066836848 1.25000027411893 1.25000025113248 1.25000024976771 1.25000025001625 1.25000025002272 1.25000024999829 1.25000024999916 1.2500002500002 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865028 1.24999742456348 1.24996210093994 1.24956500680644 1.24594455299033 1.22083646775563 1.08237532900622 0.79003127418425 0.59407748265339 0.48466235470915 0.32336030241924 0.25825024407567 0.25087131979421 0.24997495531588 0.25003836908334 0.25072680794807 0.26229207737801 0.66512591009523 2.21147018220874 2.35676158049132 2.21712121713238 1.93231058212771 1.70098015430335 1.56821572371889 1.52394914687361 1.34084539182834 1.26107879939841 1.25118744811928 1.2501039110033 1.25000790666384 1.2500007411427 1.25000027807854 1.2500002513185 1.25000024976442 1.25000025001067 1.25000025002462 1.25000024999849 1.25000024999905 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865025 1.24999742456285 1.24996210092794 1.24956500661503 1.24594455056711 1.22083644700865 1.08237519975091 0.79003264817951 0.59407249689634 0.48466707893663 0.32339534781762 0.25829342422411 0.2508756054162 0.24995889264239 0.25239537483318 0.2617568748844 0.39201884529681 0.79308593048212 2.26327941718504 2.28123797378839 2.42376234114102 2.1902788451886 1.9053232561305 1.66982049242096 1.54493225969944 1.33686274723773 1.26054216255183 1.25113755871825 1.25009977479429 1.25000762196749 1.25000072438254 1.25000027713242 1.25000025126516 1.25000024976335 1.25000025001298 1.25000025002418 1.25000024999838 1.25000024999908 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865024 1.24999742456261 1.24996210092331 1.24956500653793 1.24594454956784 1.22083643931184 1.08237515875682 0.79003403578279 0.59406770287149 0.48468629603197 0.32345784663035 0.25827390769754 0.25072923256219 0.25076037896476 0.25595145803994 0.28352053221681 0.52588195746334 0.88159264805716 1.62275399267511 2.2111177711593 2.36432338946193 2.25364631251102 1.94963262381698 1.68693481416045 1.54614238609352 1.33514618408157 1.26036344962438 1.25112084933293 1.25009850818288 1.25000754153213 1.25000071964828 1.25000027683623 1.25000025125144 1.25000024976377 1.25000025001333 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456255 1.2499621009224 1.24956500652659 1.24594454926264 1.22083642330458 1.08237490396598 0.79003240485768 0.59407713396473 0.48469075541377 0.32340042481391 0.2581124976028 0.25124677632859 0.25113280294233 0.26509476701976 0.38904878639213 0.74902369781545 1.08958978249324 1.4994418080043 2.17563740619144 2.35585216972188 2.26950105213554 1.95624770775301 1.68959390734255 1.54558567723252 1.33463531486453 1.26031730853376 1.25111702152282 1.25009824603188 1.25000752569009 1.25000071877759 1.25000027680453 1.25000025125078 1.25000024976372 1.25000025001333 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092223 1.24956500652381 1.24594454919681 1.22083642082348 1.08237486417439 0.79003226313922 0.59407784080274 0.48469296431156 0.32339323622067 0.2580961279969 0.25132004507773 0.25124060766019 0.26673995893773 0.40280096628655 0.75227643296502 1.07210935517376 1.45462819238286 2.16616404847065 2.35410972170351 2.27172372746813 1.95708242340229 1.68983230453157 1.54543421763858 1.33456807083054 1.26031181813031 1.2511165997584 1.2500982184265 1.2500075243799 1.25000071877575 1.25000027680896 1.25000025125103 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.24956500652323 1.24594454918767 1.22083642063683 1.08237486067396 0.79003225672225 0.59407786502378 0.48469326068791 0.32339203561987 0.25809449085338 0.25133243166538 0.25125728120268 0.26704113956456 0.40528375287396 0.75125468651125 1.05179698532125 1.4487976431273 2.16490367506626 2.35392323487938 2.2719769319136 1.95716699081776 1.68984778567101 1.5454169800776 1.3345612651318 1.26031130740058 1.25111656295786 1.2500982162533 1.25000752440692 1.25000071877701 1.25000027680864 1.25000025125098 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.24956500652321 1.2459445491865 1.22083642060792 1.08237486051188 0.79003225644853 0.59407786425177 0.48469329319397 0.32339196092043 0.2580943815574 0.2513333292264 0.25125893495293 0.26707096292002 0.40551622982956 0.75089038815575 1.04814146955543 1.44817948457773 2.1647711578621 2.35390674960464 2.27200030847654 1.95717399022528 1.68984835334902 1.54541533832189 1.33456070808648 1.26031126847479 1.25111656029696 1.25009821632685 1.25000752439753 1.25000071877318 1.25000027680831 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.24956500652321 1.24594454918657 1.2208364206075 1.08237486051245 0.79003225628444 0.59407786413954 0.48469329598046 0.32339195684444 0.25809437472931 0.25133338661826 0.25125906766679 0.26707338004666 0.4055341809066 0.75083345095187 1.04772760453119 1.44812686993988 2.16475996958265 2.35390553379242 2.27200211501535 1.95717447744566 1.68984834282363 1.54541521157049 1.33456066968646 1.26031126587986 1.25111656039045 1.25009821632697 1.25000752438784 1.25000071877261 1.25000027680829 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918653 1.22083642060731 1.08237486050276 0.79003225624929 0.59407786426171 0.48469329604288 0.323391956707 0.25809437443776 0.25133338962119 0.25125907663017 0.26707354511211 0.40553531535055 0.75082708804042 1.04768935130325 1.44812311983274 2.16475917832545 2.35390545664642 2.27200223447826 1.95717450702192 1.68984833877603 1.54541520296357 1.33456066721942 1.26031126600182 1.25111656040947 1.25009821631153 1.2500075243878 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050124 0.7900322562663 0.59407786425184 0.4846932959713 0.32339195677926 0.25809437448872 0.25133338962774 0.25125907698135 0.26707355491483 0.40553537641506 0.75082653089893 1.0476864288339 1.44812288961801 2.16475912990633 2.35390545171735 2.2720022419473 1.95717450907255 1.68984833853071 1.54541520253119 1.33456066739429 1.26031126602762 1.25111656038969 1.25009821631154 1.25000752438805 1.25000071877273 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.0823748605013 0.79003225626691 0.59407786424147 0.48469329599093 0.32339195677095 0.25809437447384 0.25133338958562 0.25125907690319 0.26707355526755 0.40553537889429 0.75082649005777 1.04768623863001 1.44812287690543 2.16475912689733 2.35390545185173 2.27200224217089 1.95717450873953 1.68984833866033 1.54541520275373 1.33456066743808 1.26031126600648 1.25111656038922 1.25009821631197 1.25000752438801 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.22083642060711 1.08237486050133 0.79003225626606 0.59407786424223 0.48469329599557 0.32339195676625 0.25809437446945 0.2513333896037 0.25125907691929 0.26707355520618 0.40553537890313 0.75082648755217 1.04768622765671 1.44812287619269 2.16475912713329 2.35390545194232 2.2720022419895 1.95717450871019 1.68984833864378 1.54541520272659 1.33456066741182 1.26031126600577 1.25111656038986 1.2500982163119 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050133 0.79003225626613 0.59407786424267 0.48469329599439 0.32339195676672 0.2580943744704 0.25133338960565 0.25125907692657 0.26707355522627 0.40553537887785 0.75082648761955 1.0476862270805 1.44812287641258 2.16475912718434 2.35390545190732 2.27200224202376 1.95717450874326 1.68984833863392 1.54541520271084 1.33456066741002 1.26031126600651 1.25111656038978 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424259 0.48469329599429 0.32339195676689 0.25809437447049 0.25133338960469 0.25125907692546 0.26707355523109 0.40553537889546 0.75082648767997 1.04768622729874 1.44812287639617 2.16475912715352 2.35390545190334 2.27200224203458 1.95717450874368 1.68984833863499 1.54541520271298 1.33456066741119 1.26031126600643 1.25111656038975 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424257 0.48469329599437 0.32339195676686 0.25809437447043 0.25133338960471 0.25125907692524 0.26707355522978 0.40553537889477 0.75082648765648 1.04768622727443 1.44812287638057 2.16475912715177 2.353905451905 2.27200224203224 1.95717450874204 1.68984833863534 1.54541520271353 1.33456066741114 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599437 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522969 0.40553537889378 0.7508264876528 1.04768622725943 1.44812287638206 2.16475912715311 2.35390545190499 2.27200224203202 1.95717450874221 1.68984833863525 1.54541520271335 1.33456066741108 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522978 0.40553537889396 0.75082648765401 1.04768622726155 1.4481228763826 2.16475912715306 2.35390545190492 2.27200224203217 1.95717450874228 1.68984833863524 1.54541520271334 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522978 0.405535378894 0.7508264876541 1.04768622726201 1.44812287638246 2.16475912715299 2.35390545190492 2.27200224203217 1.95717450874227 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.2499621009222 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638244 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874226 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.2499621009222 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765402 1.04768622726184 1.44812287638245 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874226 1.68984833863524 1.54541520271334 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.2499621009222 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638245 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874227 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638245 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874227 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638245 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874226 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638245 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874227 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638245 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874227 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726184 1.44812287638244 2.164759127153 2.35390545190492 2.27200224203216 1.95717450874227 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765403 1.04768622726183 1.44812287638246 2.16475912715299 2.35390545190492 2.27200224203217 1.95717450874227 1.68984833863524 1.54541520271335 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889399 0.75082648765402 1.04768622726185 1.44812287638261 2.16475912715308 2.35390545190491 2.27200224203217 1.95717450874227 1.68984833863523 1.54541520271334 1.33456066741109 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.405535378894 0.75082648765412 1.04768622726203 1.448122876382 2.16475912715317 2.35390545190505 2.27200224203204 1.95717450874225 1.68984833863528 1.54541520271334 1.33456066741108 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599437 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522977 0.40553537889402 0.75082648765406 1.04768622726141 1.44812287638052 2.1647591271513 2.35390545190501 2.27200224203222 1.95717450874224 1.68984833863539 1.54541520271353 1.33456066741112 1.26031126600641 1.25111656038976 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676685 0.25809437447043 0.25133338960476 0.25125907692533 0.26707355522979 0.40553537889369 0.75082648765238 1.04768622725949 1.44812287639797 2.16475912715444 2.35390545190245 2.2720022420343 1.95717450874258 1.68984833863437 1.54541520271308 1.33456066741122 1.26031126600642 1.25111656038975 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424258 0.48469329599436 0.32339195676684 0.25809437447042 0.25133338960474 0.25125907692536 0.26707355522977 0.40553537889411 0.75082648765748 1.04768622727688 1.4481228764116 2.16475912719123 2.35390545191031 2.27200224202556 1.95717450874249 1.68984833863453 1.54541520271058 1.33456066741028 1.26031126600652 1.25111656038977 1.25009821631188 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626616 0.59407786424257 0.48469329599438 0.32339195676688 0.25809437447044 0.25133338960471 0.25125907692533 0.2670735552296 0.40553537889946 0.75082648768628 1.04768622729568 1.44812287617673 2.16475912710967 2.35390545195251 2.27200224199245 1.95717450873474 1.68984833865595 1.54541520272466 1.33456066741029 1.26031126600593 1.25111656038987 1.25009821631189 1.250007524388 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.2208364206071 1.08237486050132 0.79003225626615 0.59407786424259 0.48469329599435 0.3233919567669 0.2580943744705 0.25133338960515 0.25125907692502 0.26707355523071 0.40553537888585 0.75082648759488 1.04768622706272 1.44812287702389 2.16475912694057 2.35390545180383 2.27200224214507 1.95717450873448 1.68984833864545 1.54541520275879 1.33456066743265 1.26031126600561 1.25111656038933 1.25009821631198 1.25000752438801 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.22083642060711 1.08237486050134 0.79003225626609 0.59407786424259 0.4846932959943 0.32339195676612 0.25809437446988 0.25133338960492 0.25125907692606 0.26707355522814 0.40553537885387 0.75082648762001 1.04768622777266 1.44812289157312 2.16475913097847 2.35390545185066 2.27200224206461 1.95717450887206 1.6898483384238 1.54541520255373 1.33456066742371 1.26031126602378 1.25111656038899 1.25009821631158 1.25000752438805 1.25000071877273 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.22083642060711 1.08237486050136 0.79003225626635 0.59407786424189 0.48469329599495 0.32339195676879 0.25809437447064 0.25133338959302 0.25125907692344 0.26707355522629 0.4055353791217 0.75082649136761 1.04768624036755 1.44812315003301 2.16475919552574 2.35390545912751 2.27200223629866 1.95717450835072 1.68984833962458 1.5454152028101 1.33456066718672 1.26031126601915 1.25111656040674 1.2500982163111 1.25000752438779 1.25000071877272 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.22083642060707 1.08237486050099 0.79003225626711 0.59407786424508 0.48469329599025 0.32339195678296 0.25809437448419 0.25133338961031 0.25125907693291 0.26707355514138 0.40553538061308 0.75082655198014 1.04768645474357 1.4481272741785 2.16476021645349 2.35390557302904 2.27200214883417 1.95717449608703 1.68984835184311 1.54541521005259 1.33456066866458 1.2603112658376 1.25111656040225 1.25009821632566 1.2500075243876 1.25000071877259 1.25000027680829 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918651 1.22083642060714 1.08237486050156 0.79003225626147 0.59407786425988 0.48469329598863 0.32339195672686 0.25809437444561 0.25133338968635 0.25125907696433 0.26707355155399 0.40553537375491 0.75082735980946 1.04768968911956 1.44818396412148 2.16477417214173 2.35390728567186 2.27200082665249 1.95717423548877 1.68984848500252 1.54541531925848 1.33456069426557 1.26031126747697 1.25111656025268 1.25009821633175 1.25000752439743 1.25000071877312 1.2500002768083 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.24956500652321 1.24594454918657 1.2208364206077 1.0823748605093 0.79003225626023 0.5940778641778 0.48469329607741 0.32339195685209 0.25809437447028 0.25133338838428 0.25125907510286 0.26707346649696 0.40553484798658 0.75083643249989 1.04773127045257 1.44883706350351 2.16493404347746 2.35392932492575 2.2719834343726 1.95716973454534 1.68984944035773 1.54541680148914 1.33456110157924 1.26031129478856 1.25111656209305 1.25009821621729 1.25000752440834 1.2500007187773 1.25000027680866 1.25000025125098 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.2495650065232 1.24594454918638 1.22083642060539 1.08237486049871 0.79003225638155 0.59407786419023 0.48469329558839 0.32339196082348 0.25809437821232 0.25133335472523 0.25125902296137 0.26707193955178 0.40552302077901 0.75092274888321 1.04817271664303 1.45488602890352 2.1664020173718 2.35416512275071 2.27178829595515 1.95710773122331 1.68984840019177 1.54543321582387 1.33456653538048 1.26031168819205 1.25111659021135 1.25009821785505 1.25000752434872 1.25000071877567 1.25000027680904 1.25000025125104 1.25000024976366 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092219 1.24956500652308 1.24594454918515 1.22083642060657 1.08237486049475 0.7900322570325 0.59407786450981 0.48469328650725 0.323392036654 0.25809446624272 0.25133273500911 0.25125811064431 0.26704986427034 0.40533060912818 0.75143400271203 1.05201995902139 1.50075414017454 2.17707775818273 2.35625384916335 2.26997560379395 1.95644120117793 1.68973206927633 1.54557833846431 1.33462442914957 1.26031630530062 1.25111694217059 1.25009824096296 1.25000752541737 1.25000071876133 1.25000027680391 1.25000025125077 1.25000024976371 1.25000025001334 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092218 1.24956500652316 1.24594454918972 1.22083642074764 1.08237486298063 0.79003227029304 0.59407784282996 0.48469316997037 0.32339326644619 0.25809603415422 0.2513231350166 0.25124655317388 0.26680069898177 0.40303624078708 0.75302275708572 1.07293554941358 1.62372070912612 2.21296668836419 2.36607386232852 2.25597083636228 1.9510373362148 1.68792577101082 1.5463779242168 1.33511886198575 1.26035992955444 1.25112050680737 1.25009848390721 1.25000754018481 1.25000071957138 1.2500002768316 1.25000025125126 1.25000024976378 1.25000025001334 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998809 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456254 1.24996210092229 1.24956500652531 1.24594454924566 1.22083642264905 1.0823748907272 0.79003240479215 0.59407725702044 0.48469192431196 0.32340186626944 0.25811193233929 0.25125998208175 0.25115767748227 0.26529655952153 0.38949014842951 0.74994475729068 1.09084203370899 2.2653574465929 2.28342467536133 2.42742368954988 2.19356794925205 1.91444604002328 1.67630880343301 1.5467613559473 1.33703003857736 1.26055329476089 1.25113841040714 1.25009983235796 1.25000762577309 1.25000072462068 1.25000027714387 1.2500002512655 1.25000024976335 1.25000025001298 1.25000025002418 1.25000024999838 1.25000024999908 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865023 1.24999742456253 1.24996210092184 1.24956500651618 1.24594454928597 1.22083643524686 1.08237510970953 0.79003404388661 0.59406820571036 0.4846901482205 0.32346283770569 0.25825838746008 0.25076259823637 0.25079904187644 0.2562183799047 0.28399344258391 0.52649112887573 0.88236644734338 2.21293402874531 2.35841621653486 2.22026193505462 1.94923010909349 1.73494560333722 1.5897486773084 1.53402739553053 1.34213681534349 1.26117469748791 1.2511963291234 1.25010453887693 1.25000794630805 1.2500007433816 1.25000027819817 1.25000025132382 1.25000024976441 1.25000025001051 1.25000025002467 1.2500002499985 1.25000024999905 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865022 1.24999742456233 1.24996210091789 1.24956500644927 1.24594454826525 1.22083641941801 1.08237493939252 0.79003309498392 0.59407106341725 0.48466973988691 0.32337919880963 0.25831150109953 0.25090569903229 0.25009240902869 0.25256055930519 0.26203410506729 0.39242229576972 0.79376495139749 2.17580149240474 2.19702490160301 1.89157782268887 1.70743985455685 1.64153750845796 1.52819460273831 1.48096555448691 1.32358174374939 1.25902953424305 1.25098548713539 1.25008753828785 1.25000678193825 1.25000067354205 1.25000027444197 1.25000025115337 1.25000024976749 1.25000025001538 1.25000025002291 1.25000024999834 1.25000024999914 1.2500002500002 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865019 1.24999742456155 1.24996210090373 1.24956500622806 1.24594454529001 1.22083638294872 1.0823745925837 0.79003338861426 0.59406982543149 0.4846628244672 0.32329951465587 0.25837483459403 0.25083960192788 0.25027508408004 0.25016936476487 0.25076389179531 0.2623803623661 0.66531359840214 2.32943500056272 1.65631048324959 1.54937287349388 1.49612866138386 1.4450198024074 1.37075946457507 1.33846425553489 1.27329725375543 1.25290909294601 1.25031745520669 1.25002851011455 1.25000238445251 1.25000038990606 1.25000025790929 1.25000025017178 1.25000024986219 1.25000025003954 1.25000025000899 1.25000024999762 1.25000024999986 1.25000025000015 1.25000024999999 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865021 1.24999742456213 1.24996210091429 1.24956500638985 1.24594454734719 1.22083640432066 1.08237476389037 0.79003287284521 0.59407174099397 0.48466655355203 0.32331692137533 0.25833925619905 0.25086729915979 0.25071065980017 0.25135136321776 0.2551739314816 0.25130536745748 0.70250662666548 2.5000005 1.26054481201456 1.27544189662969 1.30891850816541 1.33377214865048 1.33504526889884 1.28246898173154 1.25747594508209 1.25088918446204 1.25009166557878 1.25000816106547 1.2500008391122 1.25000028833896 1.25000025199155 1.25000024973894 1.25000024998726 1.25000025003499 1.25000024999965 1.25000024999832 1.25000025000023 1.25000025000008 1.25000024999998 1.25000025000001 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.2500002499881 1.2500002499612 1.25000025016886 1.2500002496768 1.25000023973798 1.25000006865024 1.24999742456269 1.24996210092474 1.24956500656041 1.24594454985657 1.22083644300847 1.08237520299756 0.79003351072974 0.59406852240693 0.48467972267075 0.32343551221606 0.25831049760352 0.25075792552063 0.2507187074539 0.2565921302427 0.3138016114241 0.38796626532293 0.25000005125 D/cons.6.00.000000.dat 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.9 0.9 0.9 0.9 0.9 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 -D/cons.6.00.000050.dat 0.9 0.50001362971218 0.5000779740013 0.50949544275855 0.57417616490252 0.50312545678926 0.50001688303425 0.50000001549618 0.50000000000155 0.49999999999997 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162199804016 0.21923197559877 0.20052745629872 0.20000181212691 0.20000000047725 0.20000000040687 0.20000121932324 0.20046104044312 0.2091718911285 0.2 0.9 0.61048369919077 0.54364735463474 0.59193601188221 0.60098328041381 0.51043831241424 0.50012621180334 0.50000026989788 0.50000000005259 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162166584493 0.21923156643412 0.20052760941964 0.20000184151564 0.20000000053935 0.2000000003777 0.20000012886018 0.20000101111023 0.20000002831085 0.37568266632189 0.9 0.9 0.8951104187835 0.87268331664979 0.89255956815864 0.60431489916225 0.50353733817738 0.50003201071129 0.50000002799848 0.5000000000021 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162183490109 0.21923166556958 0.200527606063 0.20000183637526 0.20000000055326 0.20000000000002 0.20000000004162 0.20000000030487 0.2000187036237 0.30808201461077 0.9 0.9 0.9 0.89999999999907 0.89999999999766 0.60653002981158 0.50401795182027 0.50004232138094 0.50000004404899 0.5000000000039 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.3616219393896 0.21923196779354 0.20052758390195 0.20000182547979 0.20000000050379 0.20000000000105 0.20000040595672 0.20015900561741 0.20899196898586 0.51790392543118 0.9 0.9 0.9 0.9 0.90000000000002 0.61360021178726 0.50396962451315 0.50003743909214 0.5000000351718 0.50000000000293 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162191726594 0.21923187449319 0.20052738085141 0.20000180193693 0.20000000047682 0.20000000021939 0.20000112840425 0.20053310207476 0.25514550658405 0.640253498031 0.9 0.9 0.9 0.9 0.9 0.61364278775764 0.50395643393775 0.50003654386538 0.50000003363088 0.50000000000275 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162112202836 0.21923050895531 0.20052729144188 0.20000181740397 0.2000000005202 0.20000001177552 0.20002552582891 0.20403900638041 0.29039221731466 0.65102896057908 0.9 0.9 0.9 0.9 0.9 0.61373612575537 0.50395148365416 0.50003631984091 0.50000003328316 0.50000000000272 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.3616210931288 0.21923042996988 0.20052728909417 0.20000181786152 0.20000000051662 0.20000001326634 0.20002667338385 0.20400172101256 0.29022769738539 0.65344463968353 0.9 0.9 0.9 0.9 0.9 0.61374291239597 0.50395116326873 0.5000363009243 0.50000003325432 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109138533 0.2192304222183 0.20052728917004 0.20000181793854 0.2000000005162 0.20000001349617 0.20002688952046 0.2039868611058 0.28988833464265 0.6531899327725 0.9 0.9 0.9 0.9 0.9 0.61374348776966 0.50395113997145 0.50003629942944 0.50000003325214 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109128097 0.2192304216341 0.20052728912867 0.20000181794198 0.20000000051616 0.20000001351681 0.20002691265641 0.20398557456613 0.28985642694078 0.65316998241504 0.9 0.9 0.9 0.9 0.9 0.61374353075556 0.50395113834277 0.50003629932238 0.50000003325199 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.3616210912718 0.21923042159606 0.20052728912344 0.20000181794207 0.20000000051616 0.20000001351832 0.20002691454817 0.20398547309269 0.28985395383843 0.65316877034987 0.9 0.9 0.9 0.9 0.9 0.61374353360643 0.50395113823717 0.50003629931557 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109126965 0.21923042159357 0.20052728912268 0.20000181794206 0.20000000051616 0.20000001351841 0.20002691467336 0.20398546578469 0.2898537910885 0.6531687153679 0.9 0.9 0.9 0.9 0.9 0.61374353378684 0.50395113822994 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109126998 0.21923042159376 0.20052728912269 0.20000181794206 0.20000000051616 0.20000001351842 0.20002691468071 0.20398546532904 0.28985378179402 0.65316871364994 0.9 0.9 0.9 0.9 0.9 0.61374353378196 0.5039511382294 0.50003629931514 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127012 0.21923042159379 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.20002691468107 0.20398546530349 0.28985378132508 0.65316871362903 0.9 0.9 0.9 0.9 0.9 0.61374353377743 0.50395113822963 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530303 0.28985378130712 0.65316871363046 0.9 0.9 0.9 0.9 0.9 0.61374353377879 0.50395113822963 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912272 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530343 0.28985378130924 0.653168713632 0.9 0.9 0.9 0.9 0.9 0.61374353377907 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530334 0.28985378130903 0.65316871363175 0.9 0.9 0.9 0.9 0.9 0.61374353377901 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130882 0.65316871363173 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530332 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130882 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.61374353377901 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363172 0.9 0.9 0.9 0.9 0.9 0.61374353377905 0.50395113822961 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530335 0.28985378130907 0.65316871363178 0.9 0.9 0.9 0.9 0.9 0.61374353377875 0.50395113822963 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530341 0.28985378130891 0.653168713632 0.9 0.9 0.9 0.9 0.9 0.61374353377782 0.50395113822968 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.20002691468109 0.20398546530306 0.28985378130735 0.65316871363037 0.9 0.9 0.9 0.9 0.9 0.61374353378282 0.50395113822939 0.50003629931514 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127012 0.21923042159378 0.20052728912272 0.20000181794206 0.20000000051616 0.20000001351842 0.20002691468109 0.20398546530446 0.28985378133188 0.65316871363168 0.9 0.9 0.9 0.9 0.9 0.61374353378372 0.50395113822953 0.50003629931513 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127007 0.2192304215937 0.2005272891227 0.20000181794206 0.20000000051616 0.20000001351842 0.20002691468103 0.20398546534729 0.28985378187382 0.65316871368996 0.9 0.9 0.9 0.9 0.9 0.61374353364707 0.50395113823736 0.5000362993154 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109126974 0.21923042159358 0.20052728912271 0.20000181794206 0.20000000051616 0.20000001351842 0.20002691467882 0.20398546607941 0.28985379241256 0.65316871608172 0.9 0.9 0.9 0.9 0.9 0.6137435316164 0.50395113835505 0.50003629932006 0.50000003325199 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127031 0.21923042159419 0.20052728912287 0.20000181794205 0.20000000051616 0.20000001351839 0.20002691461949 0.20398547699248 0.2898539735587 0.65316878156362 0.9 0.9 0.9 0.9 0.9 0.61374350073987 0.50395114012309 0.50003629939784 0.50000003325208 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109126998 0.21923042159891 0.20052728912159 0.20000181794184 0.20000000051616 0.20000001351765 0.20002691351322 0.20398562388113 0.28985667920991 0.65317015450427 0.9 0.9 0.9 0.9 0.9 0.61374309914772 0.5039511643396 0.50003630054302 0.50000003325362 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109123099 0.21923042176957 0.2005272891027 0.20000181793784 0.20000000051618 0.20000001350443 0.20002689709877 0.20398729156016 0.28989087942471 0.65319162165962 0.9 0.9 0.9 0.9 0.9 0.61373847547273 0.50395146377441 0.50003631510213 0.50000003327514 0.50000000000272 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109102522 0.21923042548939 0.20052728864006 0.20000181786439 0.20000000051642 0.20000001333032 0.20002672406333 0.20400471961339 0.29024937549153 0.65346668958606 0.9 0.9 0.9 0.9 0.9 0.61366045578489 0.50395599760001 0.50003651027558 0.500000033572 0.50000000000275 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109292648 0.21923046593454 0.20052728591181 0.20000181743475 0.20000000051891 0.20000001200023 0.20002562636652 0.20404535332019 0.29049396278316 0.65122188561669 0.9 0.9 0.9 0.9 0.9 0.61364243329659 0.50398074343483 0.500037581112 0.50000003530287 0.50000000000294 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.3616217852344 0.21923168246927 0.20052734279194 0.20000179999754 0.2000000004754 0.20000000024183 0.20000113674551 0.20053475575764 0.25520808662436 0.6404433522832 0.9 0.9 0.9 0.9 0.9 0.60744548462921 0.50408551748098 0.50004319348634 0.50000004488214 0.50000000000399 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162185619175 0.21923189464623 0.20052759519887 0.20000182765334 0.20000000050165 0.20000000000293 0.20000040892248 0.20015931486882 0.20900171217092 0.51794872757465 0.9 0.9 0.89511098121487 0.87285399898369 0.89203176789503 0.60909921711363 0.50374051234031 0.50003295401141 0.50000002813418 0.50000000000211 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162174712172 0.21923190306914 0.20052772870144 0.20000184825151 0.20000000052509 0.20000000000002 0.20000000004207 0.20000000032622 0.20001875263906 0.30808581756617 0.9 0.61050032780692 0.54394501931755 0.59615419454011 0.60234342429209 0.51139950551954 0.50013738019644 0.50000029096408 0.50000000005823 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162171440577 0.21923171911172 0.2005276564754 0.20000184409423 0.20000000053488 0.20000000037063 0.20000012949606 0.20000101191474 0.20000002831002 0.37568390324767 0.9 0.50000010295341 0.50000738736037 0.50103747694436 0.50066084340778 0.50047256246372 0.50000347787235 0.50000000235363 0.49999999999991 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162204059349 0.21923203979167 0.20052745461165 0.20000181037967 0.20000000047595 0.20000000041052 0.20000134033948 0.20046034569224 0.20948849026717 0.2 +D/cons.6.00.000050.dat 0.9 0.50001362971218 0.5000779740013 0.50949544275855 0.57417616490252 0.50312545678926 0.50001688303425 0.50000001549618 0.50000000000155 0.49999999999997 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162199804016 0.21923197559877 0.20052745629872 0.20000181212691 0.20000000047725 0.20000000040687 0.20000121932324 0.20046104044312 0.2091718911285 0.2 0.9 0.61048369919077 0.54364735463474 0.59193601188221 0.60098328041381 0.51043831241424 0.50012621180334 0.50000026989788 0.50000000005259 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162166584493 0.21923156643412 0.20052760941964 0.20000184151564 0.20000000053935 0.2000000003777 0.20000012886018 0.20000101111023 0.20000002831085 0.37568266632189 0.9 0.9 0.8951104187835 0.87268331664979 0.89255956815864 0.60431489916225 0.50353733817738 0.50003201071129 0.50000002799848 0.5000000000021 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162183490109 0.21923166556958 0.200527606063 0.20000183637526 0.20000000055326 0.20000000000002 0.20000000004162 0.20000000030487 0.2000187036237 0.30808201461077 0.9 0.9 0.9 0.89999999999907 0.89999999999766 0.60653002981158 0.50401795182027 0.50004232138094 0.50000004404899 0.5000000000039 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.3616219393896 0.21923196779354 0.20052758390195 0.20000182547979 0.20000000050379 0.20000000000105 0.20000040595672 0.20015900561741 0.20899196898586 0.51790392543118 0.9 0.9 0.9 0.9 0.90000000000002 0.61360021178726 0.50396962451315 0.50003743909214 0.5000000351718 0.50000000000293 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162191726594 0.21923187449319 0.20052738085141 0.20000180193693 0.20000000047682 0.20000000021939 0.20000112840425 0.20053310207476 0.25514550658405 0.640253498031 0.9 0.9 0.9 0.9 0.9 0.61364278775764 0.50395643393775 0.50003654386538 0.50000003363088 0.50000000000275 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162112202836 0.21923050895531 0.20052729144188 0.20000181740397 0.2000000005202 0.20000001177552 0.20002552582891 0.20403900638041 0.29039221731466 0.65102896057908 0.9 0.9 0.9 0.9 0.9 0.61373612575537 0.50395148365416 0.50003631984091 0.50000003328316 0.50000000000272 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.3616210931288 0.21923042996988 0.20052728909417 0.20000181786152 0.20000000051662 0.20000001326634 0.20002667338385 0.20400172101256 0.29022769738539 0.65344463968353 0.9 0.9 0.9 0.9 0.9 0.61374291239597 0.50395116326873 0.5000363009243 0.50000003325432 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109138533 0.2192304222183 0.20052728917004 0.20000181793854 0.2000000005162 0.20000001349617 0.20002688952046 0.2039868611058 0.28988833464265 0.6531899327725 0.9 0.9 0.9 0.9 0.9 0.61374348776966 0.50395113997145 0.50003629942944 0.50000003325214 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109128097 0.2192304216341 0.20052728912867 0.20000181794198 0.20000000051616 0.20000001351681 0.20002691265641 0.20398557456613 0.28985642694078 0.65316998241504 0.9 0.9 0.9 0.9 0.9 0.61374353075556 0.50395113834277 0.50003629932238 0.50000003325199 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.3616210912718 0.21923042159606 0.20052728912344 0.20000181794207 0.20000000051616 0.20000001351832 0.20002691454817 0.20398547309269 0.28985395383843 0.65316877034987 0.9 0.9 0.9 0.9 0.9 0.61374353360643 0.50395113823717 0.50003629931557 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109126965 0.21923042159357 0.20052728912268 0.20000181794206 0.20000000051616 0.20000001351841 0.20002691467336 0.20398546578469 0.2898537910885 0.6531687153679 0.9 0.9 0.9 0.9 0.9 0.61374353378684 0.50395113822994 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109126998 0.21923042159376 0.20052728912269 0.20000181794206 0.20000000051616 0.20000001351842 0.20002691468071 0.20398546532904 0.28985378179402 0.65316871364994 0.9 0.9 0.9 0.9 0.9 0.61374353378196 0.5039511382294 0.50003629931514 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127012 0.21923042159379 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.20002691468107 0.20398546530349 0.28985378132508 0.65316871362903 0.9 0.9 0.9 0.9 0.9 0.61374353377743 0.50395113822963 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530303 0.28985378130712 0.65316871363046 0.9 0.9 0.9 0.9 0.9 0.61374353377879 0.50395113822963 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912272 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530343 0.28985378130924 0.653168713632 0.9 0.9 0.9 0.9 0.9 0.61374353377907 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530334 0.28985378130903 0.65316871363175 0.9 0.9 0.9 0.9 0.9 0.61374353377901 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130882 0.65316871363173 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530332 0.28985378130883 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.613743533779 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130882 0.65316871363174 0.9 0.9 0.9 0.9 0.9 0.61374353377901 0.50395113822962 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530331 0.28985378130883 0.65316871363172 0.9 0.9 0.9 0.9 0.9 0.61374353377905 0.50395113822961 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530335 0.28985378130907 0.65316871363178 0.9 0.9 0.9 0.9 0.9 0.61374353377875 0.50395113822963 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.2000269146811 0.20398546530341 0.28985378130891 0.653168713632 0.9 0.9 0.9 0.9 0.9 0.61374353377782 0.50395113822968 0.50003629931515 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127011 0.21923042159377 0.20052728912273 0.20000181794206 0.20000000051616 0.20000001351842 0.20002691468109 0.20398546530306 0.28985378130735 0.65316871363037 0.9 0.9 0.9 0.9 0.9 0.61374353378282 0.50395113822939 0.50003629931514 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127012 0.21923042159378 0.20052728912272 0.20000181794206 0.20000000051616 0.20000001351842 0.20002691468109 0.20398546530446 0.28985378133188 0.65316871363168 0.9 0.9 0.9 0.9 0.9 0.61374353378372 0.50395113822953 0.50003629931513 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127007 0.2192304215937 0.2005272891227 0.20000181794206 0.20000000051616 0.20000001351842 0.20002691468103 0.20398546534729 0.28985378187382 0.65316871368996 0.9 0.9 0.9 0.9 0.9 0.61374353364707 0.50395113823736 0.5000362993154 0.50000003325198 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109126974 0.21923042159358 0.20052728912271 0.20000181794206 0.20000000051616 0.20000001351842 0.20002691467882 0.20398546607941 0.28985379241256 0.65316871608171 0.9 0.9 0.9 0.9 0.9 0.6137435316164 0.50395113835505 0.50003629932006 0.50000003325199 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109127031 0.21923042159419 0.20052728912287 0.20000181794205 0.20000000051616 0.20000001351839 0.20002691461949 0.20398547699248 0.2898539735587 0.65316878156362 0.9 0.9 0.9 0.9 0.9 0.61374350073987 0.50395114012309 0.50003629939784 0.50000003325208 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109126998 0.21923042159891 0.20052728912159 0.20000181794184 0.20000000051616 0.20000001351765 0.20002691351322 0.20398562388113 0.28985667920991 0.65317015450427 0.9 0.9 0.9 0.9 0.9 0.61374309914772 0.5039511643396 0.50003630054302 0.50000003325362 0.50000000000271 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109123099 0.21923042176957 0.2005272891027 0.20000181793784 0.20000000051618 0.20000001350443 0.20002689709877 0.20398729156016 0.28989087942471 0.65319162165962 0.9 0.9 0.9 0.9 0.9 0.61373847547273 0.50395146377441 0.50003631510213 0.50000003327514 0.50000000000272 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109102522 0.21923042548939 0.20052728864006 0.20000181786439 0.20000000051642 0.20000001333032 0.20002672406333 0.20400471961339 0.29024937549153 0.65346668958606 0.9 0.9 0.9 0.9 0.9 0.61366045578489 0.50395599760001 0.50003651027558 0.500000033572 0.50000000000275 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162109292648 0.21923046593454 0.20052728591181 0.20000181743475 0.20000000051891 0.20000001200023 0.20002562636652 0.20404535332019 0.29049396278316 0.65122188561669 0.9 0.9 0.9 0.9 0.9 0.61364243329659 0.50398074343483 0.500037581112 0.50000003530287 0.50000000000294 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.3616217852344 0.21923168246927 0.20052734279194 0.20000179999754 0.2000000004754 0.20000000024183 0.20000113674551 0.20053475575764 0.25520808662436 0.6404433522832 0.9 0.9 0.9 0.9 0.9 0.60744548462921 0.50408551748098 0.50004319348634 0.50000004488214 0.50000000000399 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162185619175 0.21923189464623 0.20052759519887 0.20000182765334 0.20000000050165 0.20000000000293 0.20000040892248 0.20015931486882 0.20900171217092 0.51794872757465 0.9 0.9 0.89511098121487 0.87285399898369 0.89203176789503 0.60909921711363 0.50374051234031 0.50003295401141 0.50000002813418 0.50000000000211 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162174712172 0.21923190306914 0.20052772870144 0.20000184825151 0.20000000052509 0.20000000000002 0.20000000004207 0.20000000032622 0.20001875263906 0.30808581756617 0.9 0.61050032780692 0.54394501931755 0.59615419454011 0.60234342429209 0.51139950551954 0.50013738019644 0.50000029096408 0.50000000005823 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162171440577 0.21923171911172 0.2005276564754 0.20000184409423 0.20000000053488 0.20000000037063 0.20000012949606 0.20000101191474 0.20000002831002 0.37568390324767 0.9 0.50000010295341 0.50000738736037 0.50103747694436 0.50066084340778 0.50047256246372 0.50000347787235 0.50000000235363 0.49999999999991 0.49999999999999 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.36162204059349 0.21923203979167 0.20052745461165 0.20000181037967 0.20000000047595 0.20000000041052 0.20000134033948 0.20046034569224 0.20948849026717 0.2 D/cons.7.00.000000.dat 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.1 0.1 0.1 0.1 0.1 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 0.8 D/cons.7.00.000050.dat 0.1 0.49998637028782 0.4999220259987 0.49050455724145 0.42582383509748 0.49687454321074 0.49998311696575 0.49999998450382 0.49999999999845 0.50000000000003 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837800195984 0.78076802440123 0.79947254370128 0.79999818787309 0.79999999952275 0.79999999959314 0.79999878067676 0.79953895955688 0.7908281088715 0.8 0.1 0.38951630080923 0.45635264536526 0.40806398811779 0.39901671958619 0.48956168758576 0.49987378819666 0.49999973010212 0.49999999994741 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837833415507 0.78076843356588 0.79947239058036 0.79999815848436 0.79999999946066 0.7999999996223 0.79999987113982 0.79999898888977 0.79999997168915 0.62431733367811 0.1 0.1 0.1048895812165 0.12731668335021 0.10744043184136 0.39568510083775 0.49646266182262 0.49996798928871 0.49999997200152 0.4999999999979 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837816509891 0.78076833443042 0.799472393937 0.79999816362474 0.79999999944674 0.79999999999998 0.79999999995838 0.79999999969513 0.7999812963763 0.69191798538923 0.1 0.1 0.1 0.10000000000093 0.10000000000234 0.39346997018842 0.49598204817973 0.49995767861905 0.49999995595101 0.4999999999961 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.6383780606104 0.78076803220646 0.79947241609805 0.79999817452021 0.79999999949621 0.79999999999895 0.79999959404328 0.79984099438259 0.79100803101414 0.48209607456882 0.1 0.1 0.1 0.09999999999999 0.09999999999998 0.38639978821274 0.49603037548685 0.49996256090786 0.4999999648282 0.49999999999707 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837808273406 0.78076812550681 0.79947261914859 0.79999819806307 0.79999999952318 0.79999999978061 0.79999887159575 0.79946689792524 0.74485449341594 0.359746501969 0.1 0.1 0.1 0.1 0.1 0.38635721224236 0.49604356606225 0.49996345613462 0.49999996636912 0.49999999999725 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837887797164 0.78076949104469 0.79947270855812 0.79999818259603 0.7999999994798 0.79999998822448 0.79997447417109 0.79596099361959 0.70960778268534 0.34897103942092 0.1 0.1 0.1 0.1 0.1 0.38626387424463 0.49604851634584 0.49996368015909 0.49999996671684 0.49999999999728 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.6383789068712 0.78076957003012 0.79947271090583 0.79999818213848 0.79999999948338 0.79999998673366 0.79997332661615 0.79599827898744 0.70977230261461 0.34655536031647 0.1 0.1 0.1 0.1 0.1 0.38625708760403 0.49604883673127 0.49996369907571 0.49999996674568 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890861467 0.7807695777817 0.79947271082996 0.79999818206146 0.7999999994838 0.79999998650383 0.79997311047954 0.7960131388942 0.71011166535735 0.3468100672275 0.1 0.1 0.1 0.1 0.1 0.38625651223034 0.49604886002855 0.49996370057056 0.49999996674786 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890871903 0.7807695783659 0.79947271087132 0.79999818205802 0.79999999948384 0.79999998648319 0.79997308734359 0.79601442543387 0.71014357305922 0.34683001758496 0.1 0.1 0.1 0.1 0.1 0.38625646924444 0.49604886165723 0.49996370067762 0.49999996674801 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.6383789087282 0.78076957840394 0.79947271087656 0.79999818205793 0.79999999948384 0.79999998648168 0.79997308545183 0.7960145269073 0.71014604616157 0.34683122965013 0.1 0.1 0.1 0.1 0.1 0.38625646639357 0.49604886176283 0.49996370068443 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890873035 0.78076957840643 0.79947271087732 0.79999818205794 0.79999999948384 0.79999998648159 0.79997308532664 0.79601453421531 0.7101462089115 0.3468312846321 0.1 0.1 0.1 0.1 0.1 0.38625646621316 0.49604886177006 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890873002 0.78076957840624 0.79947271087731 0.79999818205794 0.79999999948384 0.79999998648158 0.79997308531929 0.79601453467096 0.71014621820598 0.34683128635006 0.1 0.1 0.1 0.1 0.1 0.38625646621804 0.4960488617706 0.49996370068486 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872987 0.78076957840621 0.79947271087727 0.79999818205794 0.79999999948384 0.79999998648158 0.79997308531893 0.79601453469651 0.71014621867492 0.34683128637097 0.1 0.1 0.1 0.1 0.1 0.38625646622257 0.49604886177037 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087727 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469697 0.71014621869288 0.34683128636954 0.1 0.1 0.1 0.1 0.1 0.38625646622121 0.49604886177037 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469657 0.71014621869076 0.346831286368 0.1 0.1 0.1 0.1 0.1 0.38625646622093 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469666 0.71014621869097 0.34683128636825 0.1 0.1 0.1 0.1 0.1 0.38625646622099 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869118 0.34683128636827 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.386256466221 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869118 0.34683128636826 0.1 0.1 0.1 0.1 0.1 0.38625646622099 0.49604886177038 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469669 0.71014621869117 0.34683128636828 0.1 0.1 0.1 0.1 0.1 0.38625646622095 0.49604886177039 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469665 0.71014621869093 0.34683128636822 0.1 0.1 0.1 0.1 0.1 0.38625646622125 0.49604886177037 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.7999730853189 0.79601453469659 0.71014621869109 0.346831286368 0.1 0.1 0.1 0.1 0.1 0.38625646622218 0.49604886177032 0.49996370068485 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872989 0.78076957840623 0.79947271087727 0.79999818205794 0.79999999948384 0.79999998648158 0.79997308531891 0.79601453469694 0.71014621869265 0.34683128636963 0.1 0.1 0.1 0.1 0.1 0.38625646621718 0.49604886177061 0.49996370068486 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872988 0.78076957840622 0.79947271087728 0.79999818205794 0.79999999948384 0.79999998648158 0.79997308531892 0.79601453469554 0.71014621866812 0.34683128636832 0.1 0.1 0.1 0.1 0.1 0.38625646621628 0.49604886177047 0.49996370068487 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872993 0.7807695784063 0.7994727108773 0.79999818205794 0.79999999948384 0.79999998648158 0.79997308531897 0.79601453465271 0.71014621812618 0.34683128631004 0.1 0.1 0.1 0.1 0.1 0.38625646635293 0.49604886176264 0.4999637006846 0.49999996674802 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890873026 0.78076957840642 0.79947271087729 0.79999818205794 0.79999999948384 0.79999998648158 0.79997308532118 0.79601453392059 0.71014620758744 0.34683128391829 0.1 0.1 0.1 0.1 0.1 0.3862564683836 0.49604886164495 0.49996370067994 0.49999996674801 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890872969 0.78076957840581 0.79947271087713 0.79999818205795 0.79999999948384 0.79999998648161 0.79997308538051 0.79601452300752 0.7101460264413 0.34683121843638 0.1 0.1 0.1 0.1 0.1 0.38625649926013 0.49604885987691 0.49996370060216 0.49999996674792 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890873002 0.78076957840109 0.79947271087841 0.79999818205816 0.79999999948384 0.79999998648235 0.79997308648678 0.79601437611887 0.71014332079009 0.34682984549573 0.1 0.1 0.1 0.1 0.1 0.38625690085228 0.49604883566039 0.49996369945698 0.49999996674638 0.49999999999729 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890876901 0.78076957823043 0.7994727108973 0.79999818206216 0.79999999948382 0.79999998649557 0.79997310290123 0.79601270843984 0.7101091205753 0.34680837834038 0.1 0.1 0.1 0.1 0.1 0.38626152452727 0.49604853622559 0.49996368489787 0.49999996672486 0.49999999999728 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890897478 0.78076957451061 0.79947271135994 0.79999818213561 0.79999999948358 0.79999998666968 0.79997327593667 0.79599528038661 0.70975062450847 0.34653331041394 0.1 0.1 0.1 0.1 0.1 0.38633954421511 0.49604400239999 0.49996348972442 0.499999966428 0.49999999999725 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837890707352 0.78076953406546 0.79947271408819 0.79999818256525 0.79999999948109 0.79999998799977 0.79997437363348 0.79595464667981 0.70950603721684 0.34877811438331 0.1 0.1 0.1 0.1 0.1 0.38635756670341 0.49601925656516 0.499962418888 0.49999996469712 0.49999999999706 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.6383782147656 0.78076831753073 0.79947265720806 0.79999820000246 0.7999999995246 0.79999999975817 0.79999886325449 0.79946524424236 0.74479191337564 0.3595566477168 0.1 0.1 0.1 0.1 0.1 0.39255451537079 0.49591448251902 0.49995680651366 0.49999995511786 0.49999999999601 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837814380825 0.78076810535377 0.79947240480113 0.79999817234666 0.79999999949835 0.79999999999707 0.79999959107752 0.79984068513118 0.79099828782908 0.48205127242535 0.1 0.1 0.10488901878513 0.12714600101631 0.10796823210497 0.39090078288637 0.49625948765969 0.49996704598859 0.49999997186582 0.49999999999789 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837825287828 0.78076809693086 0.79947227129856 0.79999815174849 0.79999999947491 0.79999999999998 0.79999999995793 0.79999999967378 0.79998124736094 0.69191418243383 0.1 0.38949967219308 0.45605498068245 0.40384580545989 0.39765657570791 0.48860049448046 0.49986261980356 0.49999970903592 0.49999999994177 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837828559423 0.78076828088828 0.7994723435246 0.79999815590577 0.79999999946512 0.79999999962937 0.79999987050394 0.79999898808526 0.79999997168998 0.62431609675233 0.1 0.49999989704659 0.49999261263963 0.49896252305564 0.49933915659222 0.49952743753628 0.49999652212765 0.49999999764637 0.50000000000009 0.50000000000001 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.63837795940651 0.78076796020833 0.79947254538835 0.79999818962033 0.79999999952405 0.79999999958948 0.79999865966052 0.79953965430776 0.79051150973283 0.8 \ No newline at end of file diff --git a/tests/3008BA80/golden-metadata.txt b/tests/3008BA80/golden-metadata.txt index 4d2109a9f3..7c36f701ba 100644 --- a/tests/3008BA80/golden-metadata.txt +++ b/tests/3008BA80/golden-metadata.txt @@ -1,19 +1,19 @@ -This file was created on 2026-02-28 19:05:51.303647. +This file was created on 2026-03-04 15:59:56.615266. mfc.sh: - Invocation: test --only 3008BA80 --generate --no-gpu -j 8 + Invocation: test --generate -o 3008BA80 Lock: mpi=Yes & gpu=No & debug=No & gcov=No & unified=No & single=No & mixed=No & fastmath=No - Git: 53ebfb7c2c1e94dc6b01b6c191eaa4bb11d1adc3 on gpu-optimizations (dirty) + Git: 6ebc84435f0cd9c9ca2161ede72683409650cde2 on MovingBubblesFresh-clean (dirty) simulation: CMake Configuration: - CMake v3.28.3 on schwarzschild + CMake v3.30.3 on wingtip-gpu3.cc.gatech.edu - C : NVHPC v23.11.0 (/opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc) - Fortran : NVHPC v23.11.0 (/opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvfortran) + C : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc) + Fortran : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvfortran) PRE_PROCESS : OFF SIMULATION : ON @@ -26,16 +26,16 @@ simulation: OpenACC : OFF OpenMP : OFF - Fypp : /home/dan/Documents/repos/MFC/build/venv/bin/fypp + Fypp : /fastscratch/bwilfong3/software/MFC-Wilfong/build/venv/bin/fypp Doxygen : Build Type : Release Configuration Environment: - CC : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc - CXX : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc++ - FC : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvfortran + CC : /fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc + CXX : /fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc++ + FC : /fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvfortran OMPI_CC : OMPI_CXX : OMPI_FC : @@ -44,10 +44,10 @@ syscheck: CMake Configuration: - CMake v3.28.3 on schwarzschild + CMake v3.30.3 on wingtip-gpu3.cc.gatech.edu - C : NVHPC v23.11.0 (/opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc) - Fortran : NVHPC v23.11.0 (/opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvfortran) + C : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc) + Fortran : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvfortran) PRE_PROCESS : OFF SIMULATION : OFF @@ -60,16 +60,16 @@ syscheck: OpenACC : OFF OpenMP : OFF - Fypp : /home/dan/Documents/repos/MFC/build/venv/bin/fypp + Fypp : /fastscratch/bwilfong3/software/MFC-Wilfong/build/venv/bin/fypp Doxygen : Build Type : Release Configuration Environment: - CC : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc - CXX : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc++ - FC : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvfortran + CC : + CXX : + FC : OMPI_CC : OMPI_CXX : OMPI_FC : @@ -78,10 +78,10 @@ pre_process: CMake Configuration: - CMake v3.28.3 on schwarzschild + CMake v3.30.3 on wingtip-gpu3.cc.gatech.edu - C : NVHPC v23.11.0 (/opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc) - Fortran : NVHPC v23.11.0 (/opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvfortran) + C : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc) + Fortran : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvfortran) PRE_PROCESS : ON SIMULATION : OFF @@ -94,16 +94,50 @@ pre_process: OpenACC : OFF OpenMP : OFF - Fypp : /home/dan/Documents/repos/MFC/build/venv/bin/fypp + Fypp : /fastscratch/bwilfong3/software/MFC-Wilfong/build/venv/bin/fypp Doxygen : Build Type : Release Configuration Environment: - CC : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc - CXX : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvc++ - FC : /opt/nvidia/hpc_sdk/Linux_x86_64/23.11/compilers/bin/nvfortran + CC : + CXX : + FC : + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +post_process: + + CMake Configuration: + + CMake v3.30.3 on wingtip-gpu3.cc.gatech.edu + + C : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc) + Fortran : NVHPC v25.11.0 (/fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvfortran) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : ON + SYSCHECK : OFF + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : OFF + + Fypp : /fastscratch/bwilfong3/software/MFC-Wilfong/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : /fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc + CXX : /fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvc++ + FC : /fastscratch/bwilfong3/software/hpc_sdk_25_9/Linux_x86_64/25.11/compilers/bin/nvfortran OMPI_CC : OMPI_CXX : OMPI_FC : @@ -112,49 +146,46 @@ CPU: CPU Info: From lscpu - Architecture: x86_64 - CPU op-mode(s): 32-bit, 64-bit - Address sizes: 46 bits physical, 48 bits virtual - Byte Order: Little Endian - CPU(s): 20 - On-line CPU(s) list: 0-19 - Vendor ID: GenuineIntel - Model name: 12th Gen Intel(R) Core(TM) i7-12700K - CPU family: 6 - Model: 151 - Thread(s) per core: 2 - Core(s) per socket: 12 - Socket(s): 1 - Stepping: 2 - CPU(s) scaling MHz: 36% - CPU max MHz: 5100.0000 - CPU min MHz: 800.0000 - BogoMIPS: 7219.20 - Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault cat_l2 cdp_l2 ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid rdt_a rdseed adx smap clflushopt clwb intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves split_lock_detect user_shstk avx_vnni dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp hwp_pkg_req hfi vnmi umip pku ospke waitpkg gfni vaes vpclmulqdq rdpid movdiri movdir64b fsrm md_clear serialize pconfig arch_lbr ibt flush_l1d arch_capabilities - Virtualization: VT-x - L1d cache: 512 KiB (12 instances) - L1i cache: 512 KiB (12 instances) - L2 cache: 12 MiB (9 instances) - L3 cache: 25 MiB (1 instance) - NUMA node(s): 1 - NUMA node0 CPU(s): 0-19 - Vulnerability Gather data sampling: Not affected - Vulnerability Ghostwrite: Not affected - Vulnerability Indirect target selection: Not affected - Vulnerability Itlb multihit: Not affected - Vulnerability L1tf: Not affected - Vulnerability Mds: Not affected - Vulnerability Meltdown: Not affected - Vulnerability Mmio stale data: Not affected - Vulnerability Old microcode: Not affected - Vulnerability Reg file data sampling: Mitigation; Clear Register File - Vulnerability Retbleed: Not affected - Vulnerability Spec rstack overflow: Not affected - Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl - Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization - Vulnerability Spectre v2: Mitigation; Enhanced / Automatic IBRS; IBPB conditional; PBRSB-eIBRS SW sequence; BHI BHI_DIS_S - Vulnerability Srbds: Not affected - Vulnerability Tsa: Not affected - Vulnerability Tsx async abort: Not affected - Vulnerability Vmscape: Mitigation; IBPB before exit to userspace + Architecture: x86_64 + CPU op-mode(s): 32-bit, 64-bit + Address sizes: 52 bits physical, 57 bits virtual + Byte Order: Little Endian + CPU(s): 128 + On-line CPU(s) list: 0-127 + Vendor ID: GenuineIntel + Model name: Intel(R) Xeon(R) Gold 6338 CPU @ 2.00GHz + CPU family: 6 + Model: 106 + Thread(s) per core: 2 + Core(s) per socket: 32 + Socket(s): 2 + Stepping: 6 + CPU(s) scaling MHz: 47% + CPU max MHz: 3200.0000 + CPU min MHz: 800.0000 + BogoMIPS: 4000.00 + Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid cqm rdt_a avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb intel_pt avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local split_lock_detect wbnoinvd dtherm ida arat pln pts vnmi avx512vbmi umip pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg tme avx512_vpopcntdq la57 rdpid fsrm md_clear pconfig flush_l1d arch_capabilities + Virtualization: VT-x + L1d cache: 3 MiB (64 instances) + L1i cache: 2 MiB (64 instances) + L2 cache: 80 MiB (64 instances) + L3 cache: 96 MiB (2 instances) + NUMA node(s): 2 + NUMA node0 CPU(s): 0-31,64-95 + NUMA node1 CPU(s): 32-63,96-127 + Vulnerability Gather data sampling: Mitigation; Microcode + Vulnerability Itlb multihit: Not affected + Vulnerability L1tf: Not affected + Vulnerability Mds: Not affected + Vulnerability Meltdown: Not affected + Vulnerability Mmio stale data: Mitigation; Clear CPU buffers; SMT vulnerable + Vulnerability Reg file data sampling: Not affected + Vulnerability Retbleed: Not affected + Vulnerability Spec rstack overflow: Not affected + Vulnerability Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl + Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization + Vulnerability Spectre v2: Mitigation; Enhanced / Automatic IBRS; IBPB conditional; RSB filling; PBRSB-eIBRS SW sequence; BHI SW loop, KVM SW loop + Vulnerability Srbds: Not affected + Vulnerability Tsx async abort: Not affected + Vulnerability Vmscape: Not affected diff --git a/tests/3008BA80/golden.txt b/tests/3008BA80/golden.txt index 600a933dfa..a8d6b94ba0 100644 --- a/tests/3008BA80/golden.txt +++ b/tests/3008BA80/golden.txt @@ -1,10 +1,10 @@ D/cons.1.00.000000.dat 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 1.0 1.0 1.0 1.0 1.0 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.5 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 0.125 -D/cons.1.00.000050.dat 1.0 0.51043075105762 0.50914843433861 0.53746937852237 0.5744039135955 0.53073582667354 0.51427650265833 0.50282160533058 0.50036941362314 0.50003958288045 0.50000349200902 0.50000026142309 0.50000001696457 0.5000000009121 0.49999999995051 0.49999999998516 0.50000000001107 0.5000000000006 0.49999999999942 0.50000000000004 0.50000000000003 0.49999999999999 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747562 0.49999918196833 0.49998896747283 0.49987441558983 0.49883319525548 0.49159138747038 0.44974321494722 0.3522719055169 0.24318851988032 0.19253161327859 0.14459194079761 0.12719698366321 0.12518126590012 0.12517077995377 0.12659327448592 0.14270539315164 0.16678116200749 0.125 0.95072868983487 0.64523183514755 0.59353413125036 0.59356348142983 0.58679015645055 0.54376288449459 0.52614369728682 0.50683415528736 0.5008723767016 0.50009650657605 0.50000867334875 0.50000065829167 0.50000004309271 0.50000000242627 0.50000000005926 0.49999999995823 0.50000000001132 0.50000000000277 0.49999999999931 0.49999999999995 0.50000000000005 0.5 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747562 0.49999918196835 0.49998896747309 0.49987441559026 0.49883319517623 0.4915913843737 0.44974317864824 0.35227189657132 0.24318846783252 0.19253174817458 0.14456682311491 0.12719144580763 0.1252111392919 0.12515623400709 0.1253461026974 0.12636488538847 0.12531596741075 0.30064797256645 0.9044527213652 0.91021685285956 0.81240500885839 0.73664088064436 0.7130822256633 0.5996328228091 0.5616129982527 0.52041482966071 0.50259291929662 0.50028127248097 0.50002479188194 0.50000184736327 0.50000011945464 0.50000000688777 0.50000000032344 0.49999999993363 0.50000000000465 0.50000000000649 0.49999999999951 0.49999999999976 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747563 0.49999918196849 0.49998896747589 0.49987441564026 0.49883319593146 0.49159139428891 0.44974326554532 0.35227173157218 0.24318902382593 0.19253028932223 0.1445749690617 0.12717535707629 0.12521075356276 0.1249727562415 0.12500325709618 0.12517487790483 0.12815422051682 0.27006982020504 0.91536466912977 0.95885698669035 0.91724697743707 0.82776067002862 0.75005552208987 0.61674551508496 0.57472798669626 0.52470706264064 0.50314282861692 0.50033856574943 0.50002958462135 0.50000218577744 0.50000014023644 0.50000000801864 0.50000000037658 0.49999999993268 0.50000000000305 0.50000000000703 0.49999999999957 0.49999999999973 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747562 0.4999991819683 0.49998896747228 0.49987441557977 0.49883319509652 0.49159138500342 0.44974319213186 0.35227189260898 0.24318858320468 0.19253002675269 0.14458095225109 0.12719220042869 0.1252088485695 0.12498453385354 0.12563284606598 0.12812609715842 0.16375946113618 0.36947600740272 0.93091870655547 0.93621890052843 0.97806892915767 0.90819897394461 0.81358274232151 0.64392377409552 0.58001564091531 0.52380459983127 0.50299650490622 0.50032466523703 0.50002842526043 0.5000021056931 0.50000013550933 0.50000000775096 0.50000000036144 0.49999999993238 0.50000000000371 0.50000000000691 0.49999999999954 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747562 0.49999918196824 0.49998896747095 0.49987441555582 0.49883319474484 0.4915913809069 0.44974315768844 0.35227203123439 0.24318815022442 0.19253336010566 0.14459540418593 0.12719093639369 0.12517012402885 0.12518305049218 0.12657859586128 0.13415897906839 0.21565242354672 0.43341479311069 0.69913808216375 0.91361700123503 0.96113677438347 0.92658816798526 0.82851953009158 0.64734337737922 0.58028428996242 0.5233732616337 0.50294710697412 0.50031998260471 0.50002806925502 0.50000208304166 0.50000013417287 0.50000000766706 0.50000000035755 0.4999999999325 0.50000000000381 0.50000000000686 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.49999918196821 0.49998896747019 0.49987441554143 0.49883319449343 0.49159137603035 0.44974310790739 0.35227207914048 0.24318836578862 0.19253826810679 0.14457994507651 0.12714914051218 0.12530119841691 0.12526079966909 0.12885461661009 0.15833911718006 0.26084863231669 0.43762218789982 0.66201542568464 0.90227112800171 0.95869742954856 0.93121772526239 0.83068243279126 0.64788364030861 0.58013401958186 0.52324036329357 0.50293427188016 0.50031890626996 0.50002799543155 0.50000207857389 0.50000013392672 0.5000000076581 0.50000000035736 0.49999999993249 0.50000000000381 0.50000000000686 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.4998744155391 0.49883319445095 0.49159137521548 0.44974309932632 0.35227207875513 0.24318830151111 0.19253907653494 0.14457831115001 0.1271452803891 0.12531827312689 0.12528426187233 0.12922865110337 0.16172520965872 0.26285087835962 0.43177093848594 0.64792300677814 0.89925805736421 0.95819268487764 0.93186551978377 0.83095222016131 0.64792791914122 0.58009261509854 0.52322272639417 0.5029327408517 0.50031878754836 0.50002798765007 0.50000207820522 0.50000013392635 0.50000000765937 0.50000000035743 0.49999999993247 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553889 0.49883319444709 0.49159137514514 0.44974309848471 0.35227207913939 0.24318828694933 0.19253916825366 0.14457809153956 0.12714495078432 0.12532084188047 0.12528750383345 0.12928580849733 0.16221935797328 0.26275511477986 0.42632662021231 0.64603571098897 0.89886185564412 0.95813856776999 0.93193933279498 0.83097921766108 0.64793035419377 0.58008792114178 0.52322093681094 0.50293259832332 0.50031877718442 0.50002798703831 0.50000207821305 0.50000013392672 0.50000000765928 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553892 0.4988331944474 0.4915913751479 0.44974309847869 0.35227207909579 0.24318828593133 0.19253917608077 0.14457807946903 0.12714493097836 0.12532100681458 0.12528779751537 0.12929083908667 0.16226267959637 0.26266889826383 0.42533820630149 0.64583416594091 0.89882053956282 0.95813377614523 0.93194615102478 0.83098143283326 0.64793037876647 0.58008747623764 0.52322079041351 0.50293258745546 0.50031877643547 0.5000279870597 0.50000207821034 0.50000013392563 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444731 0.49159137514701 0.44974309848663 0.35227207904895 0.24318828589761 0.19253917662956 0.1445780788912 0.12714492989989 0.12532101619908 0.12528781910179 0.12929120247843 0.16226585772629 0.26265453436891 0.42522533106949 0.64581694981204 0.89881707039178 0.95813342216666 0.93194667819156 0.83098158599631 0.64793036764791 0.58008744200679 0.52322078033073 0.50293258673082 0.50031877646286 0.50002798705959 0.50000207820759 0.50000013392546 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444727 0.49159137514648 0.44974309848241 0.35227207905328 0.24318828592603 0.19253917661131 0.14457807890173 0.12714492988404 0.12532101659656 0.12528782035558 0.12929122441469 0.16226605467472 0.26265295691472 0.42521487205589 0.64581571913867 0.89881682589216 0.95813339966458 0.93194671306744 0.83098159524344 0.64793036608468 0.58008743968831 0.52322077968271 0.50293258676648 0.50031877646807 0.5000279870552 0.50000207820758 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514642 0.44974309848143 0.35227207905569 0.24318828592061 0.19253917660145 0.1445780789133 0.12714492989587 0.12532101656436 0.12528782036582 0.12929122548165 0.16226606518407 0.2626528207358 0.42521407426831 0.64581564340794 0.89881681096218 0.95813339822554 0.93194671524802 0.83098159588256 0.64793036598898 0.5800874395727 0.52322077973366 0.50293258677357 0.50031877646245 0.50002798705521 0.50000207820765 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848155 0.35227207905521 0.24318828591858 0.19253917660707 0.14457807890984 0.12714492989045 0.12532101656176 0.12528782034923 0.12929122548213 0.16226606559862 0.26265281101334 0.42521402248841 0.64581563922014 0.89881681003781 0.95813339826424 0.93194671531341 0.83098159578098 0.64793036602569 0.58008743963247 0.52322077974482 0.50293258676757 0.50031877646233 0.50002798705534 0.50000207820764 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848158 0.35227207905515 0.2431882859189 0.19253917660748 0.14457807890926 0.12714492988987 0.12532101656653 0.12528782035591 0.12929122547147 0.16226606558118 0.26265281044289 0.42521401951289 0.64581563898527 0.8988168101072 0.95813339829039 0.93194671526046 0.83098159577182 0.64793036602165 0.5800874396251 0.52322077973761 0.50293258676738 0.50031877646251 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035741 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591897 0.19253917660721 0.14457807890939 0.12714492989015 0.12532101656643 0.12528782035683 0.12929122547815 0.16226606558202 0.26265281047033 0.42521401936096 0.64581563905808 0.89881681012294 0.95813339828026 0.93194671527047 0.8309815957819 0.64793036601878 0.58008743962088 0.52322077973717 0.50293258676759 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660722 0.14457807890941 0.12714492989014 0.12532101656625 0.12528782035647 0.12929122547844 0.16226606558585 0.26265281048224 0.42521401942114 0.64581563905256 0.89881681011369 0.95813339827911 0.93194671527363 0.83098159578204 0.64793036601905 0.58008743962146 0.52322077973749 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820764 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656628 0.12528782035647 0.12929122547809 0.16226606558521 0.26265281047589 0.42521401941394 0.64581563904741 0.89881681011313 0.95813339827959 0.93194671527295 0.83098159578154 0.64793036601915 0.58008743962161 0.52322077973747 0.50293258676756 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035741 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547812 0.16226606558513 0.26265281047533 0.42521401940981 0.64581563904791 0.89881681011354 0.95813339827958 0.93194671527288 0.83098159578159 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547814 0.16226606558518 0.26265281047565 0.42521401941042 0.64581563904809 0.89881681011352 0.95813339827956 0.93194671527293 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444727 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047564 0.42521401941054 0.64581563904804 0.8988168101135 0.95813339827956 0.93194671527293 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035741 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047562 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827957 0.93194671527292 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827957 0.93194671527292 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827957 0.93194671527292 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.89881681011351 0.95813339827957 0.93194671527293 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444727 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.89881681011351 0.95813339827957 0.93194671527292 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827956 0.93194671527293 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827956 0.93194671527292 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827957 0.93194671527292 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827956 0.93194671527293 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047562 0.4252140194105 0.64581563904809 0.89881681011353 0.95813339827956 0.93194671527293 0.83098159578161 0.64793036601912 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047564 0.42521401941055 0.64581563904789 0.89881681011355 0.9581333982796 0.93194671527289 0.8309815957816 0.64793036601914 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558519 0.26265281047565 0.42521401941038 0.6458156390474 0.89881681011299 0.95813339827959 0.93194671527294 0.8309815957816 0.64793036601917 0.58008743962161 0.52322077973747 0.50293258676756 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547814 0.16226606558514 0.26265281047528 0.42521401940981 0.64581563905318 0.89881681011396 0.95813339827885 0.93194671527355 0.8309815957817 0.64793036601888 0.58008743962149 0.5232207797375 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820764 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.1252878203565 0.12929122547815 0.16226606558512 0.26265281047612 0.42521401941458 0.6458156390577 0.89881681012501 0.95813339828114 0.93194671527099 0.83098159578166 0.64793036601893 0.58008743962081 0.52322077973724 0.5029325867676 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660724 0.1445780789094 0.12714492989013 0.12532101656628 0.12528782035651 0.12929122547805 0.16226606558611 0.26265281048313 0.42521401942061 0.64581563897975 0.89881681010013 0.95813339829339 0.93194671526133 0.83098159577934 0.64793036602498 0.58008743962456 0.52322077973719 0.50293258676743 0.50031877646251 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660724 0.14457807890943 0.12714492989014 0.12532101656633 0.12528782035635 0.12929122547817 0.16226606558399 0.26265281046555 0.42521401935595 0.64581563926021 0.8988168100509 0.9581333982502 0.93194671530612 0.8309815957792 0.64793036602214 0.58008743963376 0.52322077974327 0.50293258676733 0.50031877646236 0.50002798705534 0.50000207820764 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848158 0.35227207905518 0.24318828591896 0.19253917660719 0.1445780789093 0.12714492989008 0.12532101656648 0.12528782035654 0.1292912254797 0.16226606557506 0.26265281045356 0.42521401954521 0.64581564405577 0.89881681128742 0.95813339826466 0.93194671528192 0.83098159582031 0.64793036596011 0.58008743957913 0.5232207797417 0.50293258677247 0.50031877646225 0.50002798705522 0.50000207820765 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848159 0.35227207905516 0.24318828591884 0.19253917660728 0.14457807890924 0.12714492988988 0.12532101656446 0.12528782035818 0.12929122547607 0.16226606561439 0.26265281122408 0.42521402299545 0.64581572912781 0.89881683111679 0.95813340039494 0.93194671359772 0.83098159564867 0.64793036631119 0.58008743964621 0.52322077967469 0.5029325867714 0.5003187764673 0.50002798705508 0.50000207820758 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514642 0.44974309848145 0.35227207905538 0.24318828591905 0.19253917660732 0.14457807891331 0.12714492989295 0.12532101656264 0.12528782035508 0.12929122548272 0.16226606562178 0.26265282429878 0.42521408199435 0.64581708335391 0.89881714539825 0.95813343372903 0.93194668806982 0.8309815916026 0.64793037011579 0.58008744158368 0.52322078005411 0.50293258671921 0.5003187764662 0.50002798705922 0.50000207820752 0.50000013392546 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514638 0.44974309848149 0.35227207905544 0.24318828592318 0.192539176605 0.14457807890825 0.1271449298895 0.1253210165923 0.125287820369 0.12929122536562 0.16226606236185 0.26265300736533 0.42521497358829 0.64583564609176 0.89882145542624 0.9581339343715 0.93194630231941 0.8309815066722 0.64793041429112 0.5800874708955 0.52322078668228 0.502932587175 0.50031877642303 0.50002798706108 0.50000207821031 0.50000013392561 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444729 0.49159137514681 0.44974309848455 0.35227207905104 0.24318828591146 0.1925391766248 0.14457807889435 0.12714492985949 0.12532101645785 0.12528782031931 0.12929121848012 0.16226596158909 0.26265516194965 0.42522643403742 0.64604871756586 0.89887108067992 0.95814036798455 0.93194122965886 0.83098004793425 0.64793079672699 0.58008787033119 0.52322089264406 0.50293259478219 0.50031877693935 0.50002798702813 0.50000207821346 0.5000001339268 0.50000000765928 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553892 0.49883319444738 0.49159137514761 0.44974309848265 0.35227207906292 0.24318828589025 0.19253917655369 0.14457807939102 0.12714493026704 0.12532101174067 0.12528781518775 0.12929104746187 0.16226386964688 0.26267602795445 0.4253478555662 0.64800804544877 0.89933033928241 0.95820906500162 0.93188432436671 0.83095995021693 0.64793213079836 0.5800923147781 0.52322231244399 0.50293270440187 0.50031878484456 0.50002798748851 0.50000207819635 0.50000013392633 0.50000000765939 0.50000000035743 0.49999999993247 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553887 0.49883319444655 0.49159137513842 0.4497430984429 0.35227207919758 0.24318828635193 0.19253917445714 0.144578091314 0.12714494464614 0.12532090599103 0.12528768646305 0.12928782670337 0.16222798618242 0.26279596844584 0.42639538550033 0.66243669103741 0.90270779480151 0.95881580985625 0.93135560847753 0.83074245496204 0.64791903377314 0.58013194902955 0.52323746233688 0.50293399092472 0.50031888382452 0.50002799399973 0.50000207849688 0.50000013392212 0.50000000765793 0.50000000035736 0.49999999993249 0.50000000000381 0.50000000000686 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553881 0.49883319444676 0.49159137516825 0.44974309890148 0.35227208087812 0.24318829424258 0.19253913377802 0.14457831322335 0.12714526141236 0.12531900814995 0.12528572857803 0.12924457150699 0.16177315998182 0.26303283669169 0.4320295738415 0.69944351525988 0.91417039137444 0.96164451802645 0.9272628844419 0.82896266025665 0.6475920208275 0.580346584557 0.52336623564712 0.5029461282133 0.50031988612531 0.50002806243348 0.50000208266363 0.50000013415124 0.50000000766575 0.50000000035749 0.49999999993251 0.50000000000381 0.50000000000686 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747011 0.49987441554007 0.49883319447167 0.49159137563868 0.44974310342903 0.35227209160809 0.243188346471 0.19253865823693 0.14458036723767 0.127148941201 0.12530467405266 0.12526839452641 0.12892015703488 0.15845359121489 0.26108187804229 0.437950602575 0.93152468465458 0.93685575343341 0.97912954148092 0.90919718044367 0.81629982931573 0.64582138862503 0.58048341734228 0.5238479424671 0.50299968343251 0.50032490764246 0.50002844168751 0.50000210678276 0.50000013557772 0.50000000775427 0.50000000036154 0.49999999993238 0.50000000000371 0.50000000000691 0.49999999999954 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.49999918196821 0.49998896747036 0.49987441554606 0.49883319460621 0.49159137906524 0.44974314095432 0.35227206821854 0.24318809932709 0.19253474001419 0.14459721655047 0.12718612607045 0.12518037458604 0.12519588403579 0.12667846688517 0.13432348229512 0.21584665419358 0.43373769670589 0.91579551807467 0.95933607855872 0.91819261163374 0.83287910037963 0.76060458296266 0.62317069292154 0.57731166901016 0.52503870644601 0.50316991742505 0.50034108613927 0.5000297633324 0.50000219708743 0.50000014087636 0.50000000805287 0.5000000003781 0.49999999993268 0.50000000000301 0.50000000000705 0.49999999999957 0.49999999999973 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.49999918196816 0.49998896746926 0.49987441552678 0.49883319431432 0.49159137492612 0.44974310284102 0.35227195103575 0.24318821454601 0.19253154256495 0.1445762222508 0.12719635835003 0.1252183525873 0.12502725326151 0.12569181656228 0.12822811959815 0.16387367153045 0.36971459560124 0.90454173001004 0.91052446036202 0.81500336565782 0.74711005087299 0.72810282119661 0.6068506649529 0.56335971445384 0.52009984915678 0.50256393183298 0.50028098391622 0.50002491147445 0.50000186466756 0.50000012093219 0.50000000697996 0.50000000032941 0.49999999993357 0.5000000000044 0.50000000000654 0.49999999999952 0.49999999999976 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.4999999474756 0.49999918196793 0.49998896746487 0.49987441545451 0.49883319330151 0.49159136225338 0.44974299184008 0.35227201982205 0.24318769404661 0.19253175583663 0.14455460298492 0.12721179734004 0.12520396822272 0.12508496901662 0.12504629487882 0.12518740197722 0.12818136174779 0.2701225797684 0.95074225606158 0.64546541848146 0.59687362292255 0.59975704168606 0.5864929739942 0.53637643546695 0.52463789671977 0.50658315152947 0.5008291618924 0.50009053060382 0.50000806786926 0.50000060945395 0.5000000399526 0.50000000225881 0.50000000004902 0.49999999996064 0.5000000000113 0.50000000000257 0.49999999999932 0.49999999999996 0.50000000000004 0.5 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819681 0.49998896746807 0.4998744155058 0.49883319399109 0.49159137027328 0.4497430570795 0.35227196069538 0.24318801407687 0.1925321912195 0.14456070518323 0.12720154742646 0.12520972990382 0.12517563703539 0.12534267218221 0.12636998770527 0.12531920820479 0.30067497364733 1.0 0.50299232060043 0.50720589621132 0.51693930773198 0.52370802558525 0.52395695923259 0.50920048522293 0.50212946103409 0.50025381073595 0.50002611224629 0.50000226004769 0.50000016830513 0.50000001095282 0.50000000056893 0.49999999992541 0.49999999999636 0.50000000001 0.4999999999999 0.49999999999952 0.50000000000007 0.50000000000002 0.49999999999999 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747562 0.49999918196827 0.49998896747157 0.4998744155681 0.4988331949447 0.49159138380126 0.44974318397366 0.35227191650083 0.24318839508791 0.19253187920075 0.14459249934973 0.12719883585912 0.12517908985555 0.125170110401 0.1267525680515 0.14267696007156 0.16761189234405 0.125 +D/cons.1.00.000050.dat 1.0 0.51043075105762 0.50914843433861 0.53746937852237 0.5744039135955 0.53073582667354 0.51427650265833 0.50282160533058 0.50036941362314 0.50003958288045 0.50000349200902 0.50000026142309 0.50000001696457 0.5000000009121 0.49999999995051 0.49999999998516 0.50000000001107 0.5000000000006 0.49999999999942 0.50000000000004 0.50000000000003 0.49999999999999 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747562 0.49999918196833 0.49998896747283 0.49987441558983 0.49883319525548 0.49159138747038 0.44974321494722 0.3522719055169 0.24318851988032 0.19253161327859 0.14459194079761 0.12719698366321 0.12518126590012 0.12517077995377 0.12659327448592 0.14270539315164 0.16678116200749 0.125 0.95072868983487 0.64523183514755 0.59353413125036 0.59356348142983 0.58679015645055 0.54376288449459 0.52614369728682 0.50683415528736 0.5008723767016 0.50009650657605 0.50000867334875 0.50000065829167 0.50000004309271 0.50000000242627 0.50000000005926 0.49999999995823 0.50000000001132 0.50000000000277 0.49999999999931 0.49999999999995 0.50000000000005 0.5 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747562 0.49999918196835 0.49998896747309 0.49987441559026 0.49883319517623 0.4915913843737 0.44974317864824 0.35227189657132 0.24318846783252 0.19253174817458 0.14456682311491 0.12719144580763 0.1252111392919 0.12515623400709 0.1253461026974 0.12636488538847 0.12531596741075 0.30064797256645 0.9044527213652 0.91021685285956 0.81240500885839 0.73664088064436 0.7130822256633 0.5996328228091 0.5616129982527 0.52041482966071 0.50259291929662 0.50028127248097 0.50002479188194 0.50000184736327 0.50000011945464 0.50000000688777 0.50000000032344 0.49999999993363 0.50000000000465 0.50000000000649 0.49999999999951 0.49999999999976 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747563 0.49999918196849 0.49998896747589 0.49987441564026 0.49883319593146 0.49159139428891 0.44974326554532 0.35227173157218 0.24318902382593 0.19253028932223 0.1445749690617 0.12717535707629 0.12521075356276 0.1249727562415 0.12500325709618 0.12517487790483 0.12815422051682 0.27006982020504 0.91536466912977 0.95885698669035 0.91724697743707 0.82776067002862 0.75005552208988 0.61674551508496 0.57472798669626 0.52470706264064 0.50314282861692 0.50033856574943 0.50002958462135 0.50000218577744 0.50000014023644 0.50000000801864 0.50000000037658 0.49999999993268 0.50000000000305 0.50000000000703 0.49999999999957 0.49999999999973 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747562 0.49999918196831 0.49998896747228 0.49987441557977 0.49883319509652 0.49159138500342 0.44974319213186 0.35227189260898 0.24318858320468 0.19253002675269 0.14458095225109 0.12719220042869 0.1252088485695 0.12498453385354 0.12563284606598 0.12812609715842 0.16375946113618 0.36947600740272 0.93091870655547 0.93621890052843 0.97806892915767 0.90819897394461 0.81358274232151 0.64392377409552 0.58001564091531 0.52380459983127 0.50299650490622 0.50032466523703 0.50002842526043 0.5000021056931 0.50000013550933 0.50000000775096 0.50000000036144 0.49999999993238 0.50000000000371 0.50000000000691 0.49999999999954 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747562 0.49999918196824 0.49998896747095 0.49987441555582 0.49883319474484 0.4915913809069 0.44974315768844 0.35227203123439 0.24318815022442 0.19253336010566 0.14459540418593 0.12719093639369 0.12517012402885 0.12518305049218 0.12657859586128 0.13415897906839 0.21565242354672 0.43341479311069 0.69913808216375 0.91361700123503 0.96113677438347 0.92658816798526 0.82851953009158 0.64734337737922 0.58028428996242 0.5233732616337 0.50294710697412 0.50031998260471 0.50002806925502 0.50000208304166 0.50000013417287 0.50000000766706 0.50000000035755 0.4999999999325 0.50000000000381 0.50000000000686 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.49999918196821 0.49998896747019 0.49987441554143 0.49883319449343 0.49159137603035 0.44974310790739 0.35227207914048 0.24318836578862 0.19253826810679 0.14457994507651 0.12714914051218 0.12530119841691 0.12526079966909 0.12885461661009 0.15833911718006 0.26084863231669 0.43762218789982 0.66201542568464 0.90227112800171 0.95869742954856 0.93121772526239 0.83068243279126 0.64788364030861 0.58013401958186 0.52324036329357 0.50293427188016 0.50031890626997 0.50002799543155 0.50000207857389 0.50000013392672 0.5000000076581 0.50000000035736 0.49999999993249 0.50000000000381 0.50000000000686 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.4998744155391 0.49883319445095 0.49159137521548 0.44974309932632 0.35227207875513 0.24318830151111 0.19253907653494 0.14457831115001 0.1271452803891 0.12531827312689 0.12528426187233 0.12922865110337 0.16172520965872 0.26285087835962 0.43177093848594 0.64792300677814 0.89925805736421 0.95819268487764 0.93186551978377 0.83095222016131 0.64792791914122 0.58009261509855 0.52322272639417 0.5029327408517 0.50031878754836 0.50002798765007 0.50000207820522 0.50000013392635 0.50000000765937 0.50000000035743 0.49999999993247 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553889 0.49883319444709 0.49159137514514 0.44974309848471 0.35227207913939 0.24318828694933 0.19253916825366 0.14457809153956 0.12714495078432 0.12532084188047 0.12528750383345 0.12928580849733 0.16221935797328 0.26275511477986 0.42632662021231 0.64603571098897 0.89886185564412 0.95813856776999 0.93193933279498 0.83097921766108 0.64793035419377 0.58008792114178 0.52322093681094 0.50293259832332 0.50031877718442 0.50002798703831 0.50000207821305 0.50000013392672 0.50000000765928 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553892 0.4988331944474 0.4915913751479 0.44974309847869 0.35227207909579 0.24318828593133 0.19253917608077 0.14457807946903 0.12714493097836 0.12532100681458 0.12528779751537 0.12929083908667 0.16226267959637 0.26266889826383 0.42533820630149 0.64583416594091 0.89882053956282 0.95813377614523 0.93194615102478 0.83098143283325 0.64793037876647 0.58008747623764 0.52322079041351 0.50293258745546 0.50031877643547 0.5000279870597 0.50000207821034 0.50000013392563 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444731 0.49159137514701 0.44974309848663 0.35227207904895 0.24318828589761 0.19253917662956 0.1445780788912 0.12714492989989 0.12532101619908 0.12528781910179 0.12929120247843 0.16226585772629 0.26265453436891 0.42522533106949 0.64581694981204 0.89881707039178 0.95813342216666 0.93194667819156 0.83098158599631 0.64793036764791 0.58008744200679 0.52322078033073 0.50293258673082 0.50031877646286 0.50002798705959 0.50000207820759 0.50000013392546 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444727 0.49159137514648 0.44974309848241 0.35227207905328 0.24318828592603 0.19253917661131 0.14457807890173 0.12714492988404 0.12532101659656 0.12528782035558 0.12929122441469 0.16226605467472 0.26265295691472 0.42521487205589 0.64581571913867 0.89881682589216 0.95813339966458 0.93194671306744 0.83098159524344 0.64793036608468 0.58008743968831 0.52322077968271 0.50293258676648 0.50031877646808 0.5000279870552 0.50000207820758 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514642 0.44974309848143 0.35227207905569 0.24318828592061 0.19253917660145 0.1445780789133 0.12714492989587 0.12532101656436 0.12528782036582 0.12929122548165 0.16226606518407 0.2626528207358 0.42521407426831 0.64581564340794 0.89881681096218 0.95813339822554 0.93194671524802 0.83098159588256 0.64793036598898 0.5800874395727 0.52322077973366 0.50293258677357 0.50031877646245 0.50002798705521 0.50000207820765 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848155 0.35227207905521 0.24318828591858 0.19253917660707 0.14457807890984 0.12714492989045 0.12532101656176 0.12528782034923 0.12929122548213 0.16226606559862 0.26265281101334 0.42521402248841 0.64581563922014 0.89881681003781 0.95813339826424 0.93194671531341 0.83098159578098 0.64793036602569 0.58008743963247 0.52322077974482 0.50293258676757 0.50031877646233 0.50002798705534 0.50000207820764 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444727 0.49159137514643 0.44974309848158 0.35227207905515 0.2431882859189 0.19253917660748 0.14457807890926 0.12714492988987 0.12532101656653 0.12528782035591 0.12929122547147 0.16226606558118 0.26265281044289 0.42521401951289 0.64581563898527 0.8988168101072 0.95813339829039 0.93194671526046 0.83098159577182 0.64793036602165 0.5800874396251 0.52322077973761 0.50293258676738 0.50031877646251 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591897 0.19253917660721 0.14457807890939 0.12714492989015 0.12532101656643 0.12528782035683 0.12929122547815 0.16226606558202 0.26265281047033 0.42521401936096 0.64581563905808 0.89881681012294 0.95813339828026 0.93194671527047 0.8309815957819 0.64793036601878 0.58008743962088 0.52322077973717 0.50293258676759 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660722 0.14457807890941 0.12714492989014 0.12532101656625 0.12528782035647 0.12929122547844 0.16226606558585 0.26265281048224 0.42521401942114 0.64581563905256 0.89881681011369 0.95813339827911 0.93194671527363 0.83098159578204 0.64793036601905 0.58008743962146 0.52322077973749 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656628 0.12528782035647 0.12929122547809 0.16226606558521 0.26265281047589 0.42521401941394 0.64581563904741 0.89881681011313 0.95813339827959 0.93194671527295 0.83098159578154 0.64793036601915 0.58008743962161 0.52322077973747 0.50293258676756 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547812 0.16226606558513 0.26265281047533 0.42521401940981 0.64581563904791 0.89881681011354 0.95813339827959 0.93194671527288 0.83098159578159 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547814 0.16226606558518 0.26265281047565 0.42521401941042 0.64581563904809 0.89881681011352 0.95813339827956 0.93194671527293 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047564 0.42521401941054 0.64581563904804 0.8988168101135 0.95813339827956 0.93194671527293 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047562 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827957 0.93194671527292 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444727 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827956 0.93194671527292 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827956 0.93194671527292 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827956 0.93194671527293 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827957 0.93194671527292 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.89881681011351 0.95813339827957 0.93194671527293 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.89881681011351 0.95813339827957 0.93194671527292 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827957 0.93194671527292 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047563 0.42521401941049 0.64581563904804 0.8988168101135 0.95813339827956 0.93194671527293 0.83098159578161 0.64793036601913 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047562 0.42521401941049 0.64581563904809 0.89881681011353 0.95813339827956 0.93194671527293 0.83098159578161 0.64793036601912 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558518 0.26265281047564 0.42521401941055 0.64581563904789 0.89881681011355 0.9581333982796 0.93194671527289 0.8309815957816 0.64793036601914 0.58008743962156 0.52322077973746 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547813 0.16226606558519 0.26265281047565 0.42521401941038 0.6458156390474 0.89881681011299 0.95813339827959 0.93194671527294 0.8309815957816 0.64793036601917 0.58008743962161 0.52322077973747 0.50293258676756 0.50031877646248 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.12528782035649 0.12929122547814 0.16226606558514 0.26265281047528 0.42521401940981 0.64581563905318 0.89881681011396 0.95813339827885 0.93194671527355 0.8309815957817 0.64793036601888 0.58008743962149 0.5232207797375 0.50293258676757 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660723 0.1445780789094 0.12714492989013 0.12532101656629 0.1252878203565 0.12929122547815 0.16226606558512 0.26265281047612 0.42521401941458 0.6458156390577 0.89881681012501 0.95813339828114 0.93194671527099 0.83098159578166 0.64793036601892 0.58008743962081 0.52322077973724 0.5029325867676 0.50031877646248 0.50002798705531 0.50000207820763 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660724 0.1445780789094 0.12714492989013 0.12532101656628 0.12528782035651 0.12929122547805 0.16226606558611 0.26265281048313 0.42521401942061 0.64581563897975 0.89881681010013 0.95813339829339 0.93194671526133 0.83098159577934 0.64793036602498 0.58008743962456 0.52322077973719 0.50293258676743 0.50031877646251 0.50002798705531 0.50000207820763 0.5000001339255 0.50000000765918 0.50000000035741 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848157 0.35227207905518 0.24318828591894 0.19253917660724 0.14457807890943 0.12714492989014 0.12532101656633 0.12528782035635 0.12929122547817 0.16226606558399 0.26265281046555 0.42521401935595 0.64581563926021 0.8988168100509 0.9581333982502 0.93194671530612 0.8309815957792 0.64793036602214 0.58008743963376 0.52322077974327 0.50293258676733 0.50031877646236 0.50002798705534 0.50000207820764 0.50000013392549 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514643 0.44974309848158 0.35227207905518 0.24318828591896 0.19253917660719 0.1445780789093 0.12714492989008 0.12532101656648 0.12528782035654 0.1292912254797 0.16226606557506 0.26265281045356 0.42521401954521 0.64581564405577 0.89881681128742 0.95813339826466 0.93194671528192 0.83098159582031 0.64793036596011 0.58008743957913 0.5232207797417 0.50293258677247 0.50031877646225 0.50002798705522 0.50000207820765 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444727 0.49159137514643 0.44974309848159 0.35227207905516 0.24318828591884 0.19253917660728 0.14457807890924 0.12714492988988 0.12532101656446 0.12528782035818 0.12929122547607 0.16226606561439 0.26265281122408 0.42521402299545 0.64581572912781 0.89881683111679 0.95813340039494 0.93194671359772 0.83098159564867 0.64793036631119 0.58008743964621 0.52322077967469 0.5029325867714 0.5003187764673 0.50002798705508 0.50000207820758 0.5000001339255 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553891 0.49883319444726 0.49159137514642 0.44974309848145 0.35227207905538 0.24318828591905 0.19253917660732 0.14457807891331 0.12714492989295 0.12532101656264 0.12528782035508 0.12929122548272 0.16226606562178 0.26265282429878 0.42521408199435 0.64581708335391 0.89881714539825 0.95813343372903 0.93194668806982 0.8309815916026 0.64793037011579 0.58008744158368 0.52322078005411 0.50293258671921 0.5003187764662 0.50002798705922 0.50000207820752 0.50000013392546 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444726 0.49159137514638 0.44974309848149 0.35227207905544 0.24318828592318 0.192539176605 0.14457807890825 0.1271449298895 0.1253210165923 0.125287820369 0.12929122536562 0.16226606236185 0.26265300736533 0.42521497358829 0.64583564609176 0.89882145542624 0.9581339343715 0.93194630231941 0.8309815066722 0.64793041429112 0.5800874708955 0.52322078668228 0.502932587175 0.50031877642303 0.50002798706108 0.50000207821031 0.50000013392561 0.50000000765918 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553891 0.49883319444729 0.49159137514681 0.44974309848455 0.35227207905104 0.24318828591146 0.1925391766248 0.14457807889435 0.12714492985949 0.12532101645785 0.12528782031931 0.12929121848012 0.16226596158909 0.26265516194965 0.42522643403742 0.64604871756586 0.89887108067993 0.95814036798455 0.93194122965886 0.83098004793425 0.64793079672699 0.58008787033119 0.52322089264406 0.50293259478219 0.50031877693935 0.50002798702813 0.50000207821346 0.5000001339268 0.50000000765928 0.50000000035742 0.49999999993248 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747007 0.49987441553892 0.49883319444738 0.49159137514761 0.44974309848265 0.35227207906292 0.24318828589025 0.19253917655369 0.14457807939102 0.12714493026704 0.12532101174067 0.12528781518775 0.12929104746187 0.16226386964688 0.26267602795445 0.4253478555662 0.64800804544877 0.89933033928241 0.95820906500162 0.93188432436671 0.83095995021693 0.64793213079836 0.5800923147781 0.52322231244399 0.50293270440187 0.50031878484456 0.50002798748851 0.50000207819635 0.50000013392633 0.50000000765939 0.50000000035743 0.49999999993247 0.50000000000381 0.50000000000687 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553887 0.49883319444655 0.49159137513842 0.4497430984429 0.35227207919758 0.24318828635193 0.19253917445714 0.144578091314 0.12714494464614 0.12532090599103 0.12528768646305 0.12928782670337 0.16222798618242 0.26279596844584 0.42639538550033 0.66243669103741 0.90270779480152 0.95881580985625 0.93135560847753 0.83074245496204 0.64791903377314 0.58013194902955 0.52323746233688 0.50293399092473 0.50031888382452 0.50002799399972 0.50000207849688 0.50000013392212 0.50000000765793 0.50000000035736 0.49999999993249 0.50000000000381 0.50000000000686 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747006 0.49987441553881 0.49883319444676 0.49159137516825 0.44974309890148 0.35227208087812 0.24318829424258 0.19253913377802 0.14457831322335 0.12714526141236 0.12531900814995 0.12528572857803 0.12924457150699 0.16177315998182 0.26303283669169 0.4320295738415 0.69944351525988 0.91417039137444 0.96164451802645 0.9272628844419 0.82896266025665 0.6475920208275 0.580346584557 0.52336623564712 0.5029461282133 0.50031988612532 0.50002806243347 0.50000208266363 0.50000013415124 0.50000000766575 0.50000000035749 0.49999999993251 0.50000000000381 0.50000000000686 0.49999999999953 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819682 0.49998896747011 0.49987441554007 0.49883319447167 0.49159137563868 0.44974310342903 0.35227209160809 0.243188346471 0.19253865823693 0.14458036723767 0.127148941201 0.12530467405266 0.12526839452641 0.12892015703488 0.15845359121489 0.26108187804229 0.437950602575 0.93152468465458 0.93685575343341 0.97912954148092 0.90919718044367 0.81629982931572 0.64582138862503 0.58048341734228 0.5238479424671 0.50299968343251 0.50032490764246 0.50002844168751 0.50000210678276 0.50000013557772 0.50000000775427 0.50000000036154 0.49999999993238 0.50000000000371 0.50000000000691 0.49999999999954 0.49999999999974 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.49999918196821 0.49998896747036 0.49987441554606 0.49883319460621 0.49159137906524 0.44974314095432 0.35227206821854 0.24318809932709 0.19253474001419 0.14459721655047 0.12718612607045 0.12518037458604 0.12519588403579 0.12667846688517 0.13432348229512 0.21584665419358 0.43373769670589 0.91579551807467 0.95933607855872 0.91819261163374 0.83287910037963 0.76060458296266 0.62317069292154 0.57731166901015 0.52503870644601 0.50316991742505 0.50034108613927 0.5000297633324 0.50000219708743 0.50000014087636 0.50000000805287 0.5000000003781 0.49999999993268 0.50000000000301 0.50000000000705 0.49999999999957 0.49999999999973 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.49999918196816 0.49998896746926 0.49987441552678 0.49883319431432 0.49159137492612 0.44974310284102 0.35227195103575 0.24318821454601 0.19253154256495 0.1445762222508 0.12719635835003 0.1252183525873 0.12502725326151 0.12569181656228 0.12822811959815 0.16387367153045 0.36971459560124 0.90454173001004 0.91052446036202 0.81500336565782 0.74711005087299 0.72810282119661 0.60685066495291 0.56335971445384 0.52009984915678 0.50256393183298 0.50028098391622 0.50002491147445 0.50000186466756 0.50000012093219 0.50000000697996 0.50000000032941 0.49999999993357 0.5000000000044 0.50000000000655 0.49999999999952 0.49999999999976 0.50000000000006 0.50000000000001 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.4999999474756 0.49999918196793 0.49998896746488 0.49987441545451 0.49883319330151 0.49159136225338 0.44974299184008 0.35227201982205 0.24318769404661 0.19253175583663 0.14455460298492 0.12721179734004 0.12520396822272 0.12508496901662 0.12504629487882 0.12518740197722 0.12818136174779 0.2701225797684 0.95074225606158 0.64546541848146 0.59687362292255 0.59975704168606 0.5864929739942 0.53637643546695 0.52463789671977 0.50658315152947 0.5008291618924 0.50009053060382 0.50000806786926 0.50000060945395 0.5000000399526 0.50000000225881 0.50000000004902 0.49999999996064 0.5000000000113 0.50000000000257 0.49999999999932 0.49999999999996 0.50000000000004 0.5 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747561 0.4999991819681 0.49998896746807 0.4998744155058 0.49883319399109 0.49159137027328 0.4497430570795 0.35227196069538 0.24318801407687 0.1925321912195 0.14456070518323 0.12720154742646 0.12520972990382 0.12517563703539 0.12534267218221 0.12636998770527 0.12531920820479 0.30067497364733 1.0 0.50299232060043 0.50720589621132 0.51693930773198 0.52370802558525 0.52395695923259 0.50920048522293 0.50212946103409 0.50025381073595 0.50002611224629 0.50000226004769 0.50000016830513 0.50000001095282 0.50000000056893 0.49999999992541 0.49999999999636 0.50000000001 0.4999999999999 0.49999999999952 0.50000000000007 0.50000000000002 0.49999999999999 0.5 0.5 0.49999999999995 0.50000000000008 0.50000000000071 0.49999999999656 0.49999999998895 0.50000000004864 0.49999999990507 0.49999999702752 0.49999994747562 0.49999918196827 0.49998896747157 0.4998744155681 0.4988331949447 0.49159138380126 0.44974318397366 0.35227191650083 0.24318839508791 0.19253187920075 0.14459249934973 0.12719883585912 0.12517908985555 0.125170110401 0.1267525680515 0.14267696007156 0.16761189234405 0.125 D/cons.2.00.000000.dat 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.001 0.001 0.001 0.001 0.001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 0.000125 -D/cons.2.00.000050.dat 0.0 0.0 0.0 0.0 0.0 -0.01432163110564 -0.0060421031393 -0.00053292310506 0.00038875051231 0.000489731076 0.00049920889572 0.00049994760845 0.00049999696879 0.00049999986347 0.00050000000339 0.00050000000365 0.00049999999879 0.00049999999983 0.00050000000006 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896744 0.00049987441526 0.00049883319798 0.00049159134174 0.00044974054465 0.00035224551313 0.00024326640117 0.0001922703913 0.00014900647414 0.00012888325862 0.00011989630684 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.03705376624279 -0.01959752193492 -0.00329309746997 0.00011588246081 0.00046484017512 0.00049729180828 0.00049981974588 0.00049998937221 0.00049999940856 0.00049999997585 0.00050000000894 0.0004999999988 0.00049999999938 0.00050000000008 0.00050000000002 0.00049999999999 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994747 0.00049999918195 0.00049998896709 0.00049987440824 0.00049883307719 0.00049159023912 0.00044973372772 0.00035227347799 0.00024316260212 0.0001927212351 0.00014461878434 0.00013088029345 0.00012358457775 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.09741391402673 -0.04274563454263 -0.02378299139823 -0.00461661170363 2.871775002e-05 0.00045965921663 0.00049707847084 0.00049981655867 0.00049998973884 0.00049999944907 0.00049999997405 0.00050000000628 0.00049999999956 0.0004999999995 0.00050000000004 0.00050000000002 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896755 0.00049987441677 0.00049883320676 0.00049159151132 0.00044974552644 0.0003522752539 0.00024316626684 0.00019294048929 0.00014358593599 0.00012785036207 0.00012588616899 9.630097776e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.05668464476674 -0.02033766676665 -0.00480548545562 0.00026338938519 0.00048908658052 0.000499822988 0.00050002444688 0.00050000266969 0.00050000001221 0.00050000001212 0.00050000000167 0.00049999999932 0.00050000000005 0.00050000000005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918199 0.00049998896802 0.00049987442654 0.00049883337832 0.00049159348196 0.00044976452966 0.00035226507118 0.00024322859854 0.00019207674056 0.00014353803244 0.0001234204676 0.00012672691267 7.663096583e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.00320359405583 -0.02504708407512 -0.01918063705468 -0.00522120833689 0.00077507041285 0.00086237145056 0.00053035540099 0.00050247568463 0.0005001706165 0.00050001053393 0.00050000080768 0.00050000006064 0.00050000000277 0.00049999999956 0.0005 0.00050000000004 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896759 0.00049987441816 0.00049883324438 0.00049159227549 0.00044975580724 0.00035224946732 0.000243257642 0.0001909464657 0.00014478632718 0.00013256716049 0.0001202589274 9.369134514e-05 -0.00039775000242 -0.00546501594161 0.0 0.0 0.09744920748275 0.00741325612019 0.00332980424034 -0.00587639364127 -0.00178892971534 2.43223836e-05 0.0008289075732 0.00062375397074 0.00051021014494 0.00050084340682 0.00050006028769 0.00050000393958 0.00050000020807 0.00050000000715 0.00050000000024 0.00049999999996 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896753 0.00049987441683 0.00049883321848 0.00049159180491 0.00044974776051 0.00035224275386 0.00024326741546 0.00019173466549 0.00014629287999 0.00013147811575 0.00010576633438 0.00011617136939 -0.00023848592197 -0.00499115776482 -0.00440869136694 0.01680453038225 0.02269919168666 0.00291322913295 0.00139602063098 4.86213527e-06 0.0005180671794 0.00058955043853 0.00063888781819 0.00053873679966 0.00050399005649 0.00050039065694 0.00050003215587 0.00050000226542 0.00050000012684 0.00050000000654 0.00050000000033 0.00049999999995 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441556 0.00049883319513 0.00049159138867 0.00044974373672 0.00035226816165 0.00024320379215 0.00019245012037 0.00014477309137 0.00012749927071 0.000122776701 0.00012372103264 8.179438305e-05 -0.00048816091193 -5.862022714e-05 0.00724088338917 0.00328160307352 0.00121782572953 0.00100737354333 0.00082923685626 0.00080065639923 0.00064475400169 0.00058659275451 0.00052489629032 0.00050304074371 0.00050032573451 0.00050002838975 0.00050000204811 0.00050000013358 0.00050000000773 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441553 0.00049883319434 0.0004915913725 0.00044974305726 0.00035227195145 0.00024318960814 0.00019253201254 0.00014458861153 0.00012716427009 0.0001251603493 0.00012510683719 0.00012523328378 0.00010843637255 0.00032341641351 0.00163535805328 0.00091113961573 0.00093546807466 0.00096264009016 0.00092269284726 0.0008285319885 0.00064790357835 0.00058068847582 0.0005233607478 0.00050294121673 0.00050031934777 0.00050002793895 0.00050000208522 0.00050000013514 0.00050000000774 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.0004988331945 0.0004915913763 0.00044974309354 0.00035227212758 0.00024318827589 0.00019253854251 0.00014457874941 0.00012714610906 0.0001253120503 0.00012527277609 0.00012900066729 0.00015843512691 0.00027683553634 0.00056116281844 0.00066766670342 0.00090207728644 0.00095847536266 0.0009312459891 0.0008308131992 0.00064794553475 0.00058013287217 0.00052323048843 0.00050293320225 0.00050031871748 0.00050002799331 0.00050000208086 0.00050000013401 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319449 0.00049159137568 0.0004497431053 0.00035227207201 0.00024318826331 0.00019253923897 0.00014457803117 0.00012714488943 0.00012532049218 0.00012528667829 0.0001292734603 0.00016203531994 0.0002643354818 0.00043767349264 0.00064733885807 0.00089905550483 0.00095815567636 0.00093190103498 0.00083097143469 0.00064793249437 0.00058009048646 0.00052322139496 0.0005029325194 0.00050031877882 0.00050002799169 0.00050000207807 0.00050000013389 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137517 0.00044974309932 0.00035227207583 0.00024318829393 0.00019253917782 0.00014457807488 0.00012714492283 0.00012532107855 0.00012528785787 0.00012929018602 0.00016225434619 0.00026280343747 0.0004261561147 0.00064590777671 0.0008988317407 0.00095813468633 0.00093194405552 0.00083098108486 0.00064793036557 0.00058008749741 0.0005232207057 0.00050293258766 0.0005003187827 0.00050002798679 0.00050000207815 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137513 0.00044974309829 0.00035227207948 0.00024318828778 0.00019253917024 0.00014457808264 0.00012714493671 0.00012532101314 0.00012528782985 0.00012929127536 0.0001622654133 0.00026266370687 0.00042527473313 0.00064582068344 0.00089881760151 0.00095813333332 0.00093194670195 0.00083098170685 0.0006479303256 0.00058008738182 0.00052322077834 0.00050293259373 0.00050031877628 0.00050002798695 0.00050000207822 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309846 0.00035227207912 0.00024318828551 0.0001925391765 0.00014457807925 0.00012714493021 0.00012532101209 0.00012528781329 0.00012929123001 0.00016226612172 0.00026265352955 0.000425217584 0.00064581583121 0.00089881671562 0.00095813338098 0.00093194676209 0.00083098159014 0.00064793037827 0.00058008745349 0.00052322078737 0.00050293258658 0.00050031877629 0.00050002798709 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309849 0.00035227207903 0.00024318828588 0.00019253917689 0.00014457807879 0.00012714492958 0.00012532101683 0.00012528781986 0.00012929121877 0.0001622660599 0.00026265274663 0.00042521411131 0.00064581556672 0.00089881680615 0.00095813341111 0.00093194669919 0.00083098158501 0.00064793036948 0.00058008744396 0.00052322077975 0.00050293258656 0.0005003187765 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828595 0.00019253917657 0.0001445780789 0.00012714492992 0.00012532101672 0.0001252878207 0.00012929122536 0.00016226606149 0.00026265280725 0.00042521396468 0.00064581565047 0.00089881682048 0.00095813339898 0.00093194671244 0.00083098159633 0.0006479303654 0.00058008743875 0.00052322077945 0.00050293258681 0.00050031877647 0.00050002798705 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917659 0.00014457807892 0.0001271449299 0.00012532101653 0.00012528782033 0.0001292912258 0.0001622660663 0.00026265281763 0.0004252140312 0.00064581564418 0.00089881681016 0.00095813339774 0.00093194671615 0.00083098159624 0.00064793036593 0.00058008743951 0.00052322077977 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101656 0.00012528782034 0.00012929122544 0.00016226606565 0.00026265281073 0.00042521402321 0.00064581563833 0.00089881680971 0.00095813339831 0.00093194671529 0.0008309815957 0.00064793036606 0.00058008743968 0.00052322077975 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122546 0.00016226606552 0.00026265281014 0.00042521401864 0.00064581563891 0.00089881681015 0.0009581333983 0.00093194671522 0.00083098159576 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.0002626528105 0.00042521401933 0.0006458156391 0.00089881681013 0.00095813339828 0.00093194671528 0.00083098159579 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281049 0.00042521401946 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606558 0.00026265281047 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281047 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563904 0.00089881681012 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563899 0.00089881681009 0.00095813339829 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606558 0.00026265281046 0.00042521401935 0.00064581563922 0.00089881681005 0.00095813339824 0.00093194671532 0.00083098159579 0.00064793036601 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606558 0.00026265281045 0.00042521401953 0.00064581563977 0.00089881681069 0.00095813339824 0.00093194671527 0.00083098159579 0.00064793036596 0.00058008743956 0.00052322077973 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122547 0.00016226606563 0.00026265281086 0.00042521402019 0.00064581563323 0.0008988168098 0.00095813339913 0.00093194671449 0.0008309815957 0.00064793036631 0.0005800874397 0.0005232207797 0.00050293258676 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782035 0.00012929122545 0.00016226606563 0.00026265280998 0.00042521401487 0.00064581562817 0.00089881679717 0.00095813339658 0.00093194671741 0.00083098159565 0.00064793036645 0.00058008744054 0.00052322077994 0.00050293258673 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.0001925391766 0.00014457807891 0.00012714492989 0.00012532101658 0.00012528782033 0.00012929122559 0.0001622660646 0.00026265280231 0.00042521400819 0.00064581571836 0.00089881682202 0.00095813338187 0.00093194673055 0.00083098159769 0.00064793035849 0.00058008743605 0.00052322078014 0.00050293258691 0.00050031877642 0.00050002798705 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207905 0.00024318828592 0.0001925391766 0.00014457807887 0.00012714492988 0.00012532101652 0.00012528782049 0.00012929122563 0.00016226606753 0.00026265281865 0.00042521408152 0.00064581539649 0.00089881688969 0.00095813343287 0.00093194667969 0.00083098160172 0.0006479303583 0.00058008742502 0.00052322077395 0.0005029325872 0.00050031877659 0.00050002798702 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.0002431882859 0.00019253917665 0.00014457807902 0.00012714492996 0.00012532101635 0.00012528782039 0.00012929122331 0.00016226607768 0.00026265286744 0.00042521388571 0.00064580988785 0.0008988156688 0.00095813341628 0.00093194668359 0.00083098155044 0.00064793044666 0.0005800874882 0.00052322077355 0.00050293258125 0.00050031877685 0.00050002798714 0.00050000207819 0.00050000013392 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137514 0.00044974309846 0.00035227207909 0.00024318828601 0.00019253917652 0.00014457807918 0.00012714493007 0.00012532101851 0.00012528781857 0.00012929122685 0.00016226600197 0.0002626518038 0.00042520991125 0.00064571239169 0.00089879595329 0.00095813134309 0.00093194875714 0.00083098169892 0.00064793006995 0.00058008742945 0.00052322085293 0.00050293258021 0.00050031877118 0.00050002798744 0.00050000207827 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137516 0.00044974309863 0.00035227207881 0.00024318828582 0.00019253917691 0.00014457807483 0.0001271449267 0.00012532102128 0.00012528782213 0.00012929121659 0.00016226614716 0.00026263789574 0.00042514486556 0.00064414348865 0.00089849309045 0.00095809879864 0.00093198095497 0.00083098513634 0.00064792547032 0.00058008499566 0.00052322046397 0.00050293265818 0.00050031877011 0.00050002798288 0.00050000207841 0.00050000013396 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.0004915913752 0.00044974309869 0.00035227207896 0.00024318828151 0.00019253917971 0.00014457807649 0.00012714492987 0.00012532097483 0.00012528779925 0.00012929124916 0.0001622704407 0.00026244462747 0.00042416134488 0.00062230244867 0.00089451642459 0.00095762574529 0.0009324720305 0.00083106450918 0.00064787416358 0.00058004996582 0.00052321447887 0.00050293220127 0.00050031884121 0.00050002797891 0.00050000207557 0.00050000013386 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319442 0.00049159137469 0.00044974309402 0.00035227208481 0.00024318829086 0.00019253915074 0.00014457813252 0.00012714499001 0.00012532121362 0.00012528790966 0.00012929520723 0.00016239994426 0.00026024857878 0.0004115602869 0.00036565412148 0.0008516259525 0.00095178962946 0.00093900040602 0.00083248247116 0.00064744644864 0.00057956791077 0.00052311937875 0.0005029263013 0.00050031836892 0.00050002803896 0.00050000207046 0.00050000013263 0.00050000000758 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441553 0.00049883319438 0.00049159137414 0.0004497430982 0.00035227207671 0.00024318835522 0.00019253923828 0.00014457742553 0.00012714426592 0.00012532601798 0.00012529073596 0.0001294082984 0.00016510575403 0.00024020621067 0.00027901846296 -0.0020871732815 0.00049607804787 0.00089281750264 0.00101300091015 0.00085244044695 0.00064618788468 0.00057414877152 0.00052187674419 0.00050284607422 0.00050031317313 0.00050002767376 0.0005000021122 0.00050000013395 0.00050000000756 0.00050000000035 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441557 0.00049883319505 0.00049159138262 0.0004497431492 0.00035227198364 0.0002431875427 0.00019254138075 0.000144566864 0.0001271296077 0.00012542835478 0.00012535207554 0.00013155740302 0.00020898671768 0.0001585785818 -0.00085962504848 -0.0219201003326 -0.00165264617488 0.00041306577731 0.00170425464304 0.00107286065956 0.00066627354657 0.00052526869502 0.00050934246677 0.00050198863551 0.00050025473407 0.00050002424033 0.00050000192258 0.00050000014412 0.00050000000888 0.00050000000039 0.00049999999992 0.00050000000001 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441563 0.00049883319612 0.00049159138964 0.00044974285089 0.00035227295298 0.00024317900299 0.00019257887202 0.00014436936595 0.00012679505823 0.00012723804396 0.00012607131343 0.00016225965296 0.00077559295422 0.00037627069532 -0.00664169840396 -0.09692822491122 -0.00669685912456 -0.00190046797971 0.00694678008702 0.0029489930742 0.00098920389148 0.00026577005448 0.00042168065922 0.00049557529326 0.000499791151 0.00049999552727 0.000500000211 0.00050000006179 0.00050000000857 0.00050000000048 0.0004999999999 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896743 0.00049987441454 0.00049883317316 0.00049159102032 0.00044974041857 0.00035228977572 0.00024312409074 0.00019302666042 0.00014220621951 0.00012285101811 0.00014200779516 0.00013097169196 0.00042505784605 0.00520767172031 0.00464599140185 -0.0164646573092 0.0 0.0 -0.00238098648062 0.02561214840019 0.0174843010501 0.00438912908043 -8.968462902e-05 0.00013754649077 0.00047221439636 0.00049793612889 0.00049987170801 0.00049999284762 0.00049999940773 0.00049999995308 0.00049999999791 0.0005000000003 0.00050000000001 0.00049999999997 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896746 0.00049987441533 0.00049883319066 0.00049159136519 0.00044974335668 0.00035230925494 0.00024314511565 0.00019364554982 0.00014486894622 0.00012229537071 0.00012935005975 0.00015371812806 0.00055617780546 0.00560743638406 0.0 0.0 0.0 0.0 0.0 0.0 0.04757944191431 0.01633435030523 0.00371316705592 0.00059876780326 0.00049882589853 0.00049962570322 0.00049996727997 0.00049999828982 0.00050000011927 0.00049999998963 0.00049999999833 0.00050000000071 0.00049999999995 0.00049999999995 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.000499999182 0.00049998896812 0.00049987442806 0.00049883339802 0.0004915941594 0.00044977723944 0.00035226620976 0.00024324251255 0.00019210857678 0.00015006599772 0.00012367153027 0.00012596846851 0.00011840228865 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.06561311719966 0.03836397342633 0.02445562042836 0.00576289489932 0.00097479988831 0.00054021228734 0.00050288024114 0.00050017944977 0.00050001011642 0.00050000057772 0.0005000000274 0.00049999999345 0.00050000000045 0.00050000000053 0.00049999999996 0.00049999999998 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918198 0.00049998896763 0.00049987441886 0.00049883325236 0.00049159182775 0.00044974229453 0.00035225941638 0.0002432273315 0.00019235577819 0.00014722726612 0.00012708426979 0.00012615538238 5.723384888e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.05014940764881 0.02667017616768 0.00483173864463 0.00095884539594 0.00054224602849 0.00050325998986 0.00050021675026 0.0005000127152 0.00050000066424 0.00050000002244 0.00049999998956 0.00050000000174 0.0005000000007 0.00049999999989 0.00049999999998 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994747 0.00049999918193 0.00049998896669 0.0004998744005 0.00049883294636 0.00049158828431 0.00044970866796 0.00035229783323 0.00024307986349 0.00019338085518 0.00013849403155 0.00012804638478 0.00012733806777 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.01174734293411 0.00378120342069 0.0011602381397 0.00056207651516 0.00050558762993 0.00050043474966 0.00050002953158 0.00050000164094 0.0005000000726 0.0004999999983 0.00049999999772 0.00050000000071 0.0005000000001 0.00049999999996 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918195 0.00049998896708 0.00049987440741 0.00049883304962 0.00049158921534 0.00044971775989 0.0003522907976 0.00024308998213 0.00019318831176 0.00014028958842 0.00012723771752 0.00013032216398 0.0 0.0 0.0 0.0 0.0 +D/cons.2.00.000050.dat 0.0 0.0 0.0 0.0 0.0 -0.01432163110564 -0.0060421031393 -0.00053292310506 0.00038875051231 0.000489731076 0.00049920889572 0.00049994760845 0.00049999696879 0.00049999986347 0.00050000000339 0.00050000000365 0.00049999999879 0.00049999999983 0.00050000000006 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896744 0.00049987441526 0.00049883319798 0.00049159134174 0.00044974054465 0.00035224551313 0.00024326640117 0.0001922703913 0.00014900647414 0.00012888325862 0.00011989630684 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.03705376624279 -0.01959752193492 -0.00329309746997 0.00011588246081 0.00046484017512 0.00049729180828 0.00049981974587 0.00049998937221 0.00049999940856 0.00049999997585 0.00050000000894 0.0004999999988 0.00049999999938 0.00050000000008 0.00050000000002 0.00049999999999 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994747 0.00049999918195 0.00049998896709 0.00049987440824 0.00049883307719 0.00049159023912 0.00044973372772 0.00035227347799 0.00024316260212 0.0001927212351 0.00014461878434 0.00013088029345 0.00012358457775 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.09741391402673 -0.04274563454263 -0.02378299139823 -0.00461661170363 2.871775001e-05 0.00045965921663 0.00049707847084 0.00049981655867 0.00049998973884 0.00049999944907 0.00049999997405 0.00050000000628 0.00049999999956 0.0004999999995 0.00050000000004 0.00050000000002 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896755 0.00049987441677 0.00049883320676 0.00049159151132 0.00044974552644 0.0003522752539 0.00024316626684 0.00019294048929 0.00014358593599 0.00012785036207 0.00012588616899 9.630097776e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -0.05668464476674 -0.02033766676665 -0.00480548545562 0.00026338938519 0.00048908658052 0.000499822988 0.00050002444688 0.00050000266969 0.00050000001221 0.00050000001212 0.00050000000167 0.00049999999932 0.00050000000005 0.00050000000005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918199 0.00049998896802 0.00049987442654 0.00049883337832 0.00049159348196 0.00044976452966 0.00035226507118 0.00024322859854 0.00019207674056 0.00014353803244 0.0001234204676 0.00012672691267 7.663096583e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.00320359405583 -0.02504708407512 -0.01918063705468 -0.00522120833689 0.00077507041285 0.00086237145056 0.00053035540099 0.00050247568463 0.0005001706165 0.00050001053393 0.00050000080768 0.00050000006064 0.00050000000277 0.00049999999956 0.0005 0.00050000000004 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896759 0.00049987441816 0.00049883324438 0.00049159227549 0.00044975580724 0.00035224946732 0.000243257642 0.0001909464657 0.00014478632718 0.00013256716049 0.0001202589274 9.369134514e-05 -0.00039775000242 -0.00546501594161 0.0 0.0 0.09744920748275 0.00741325612019 0.00332980424034 -0.00587639364127 -0.00178892971534 2.43223836e-05 0.0008289075732 0.00062375397074 0.00051021014494 0.00050084340682 0.00050006028769 0.00050000393958 0.00050000020807 0.00050000000715 0.00050000000024 0.00049999999996 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896753 0.00049987441683 0.00049883321848 0.00049159180491 0.00044974776051 0.00035224275386 0.00024326741546 0.00019173466549 0.00014629287999 0.00013147811575 0.00010576633438 0.00011617136939 -0.00023848592197 -0.00499115776482 -0.00440869136694 0.01680453038225 0.02269919168666 0.00291322913295 0.00139602063098 4.86213527e-06 0.0005180671794 0.00058955043853 0.00063888781819 0.00053873679966 0.00050399005649 0.00050039065694 0.00050003215587 0.00050000226542 0.00050000012684 0.00050000000654 0.00050000000033 0.00049999999995 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441556 0.00049883319513 0.00049159138867 0.00044974373672 0.00035226816165 0.00024320379215 0.00019245012037 0.00014477309137 0.00012749927071 0.000122776701 0.00012372103264 8.179438305e-05 -0.00048816091193 -5.862022714e-05 0.00724088338917 0.00328160307352 0.00121782572953 0.00100737354333 0.00082923685626 0.00080065639923 0.00064475400169 0.00058659275451 0.00052489629032 0.00050304074371 0.0005003257345 0.00050002838975 0.00050000204811 0.00050000013358 0.00050000000773 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441553 0.00049883319434 0.0004915913725 0.00044974305726 0.00035227195145 0.00024318960814 0.00019253201254 0.00014458861153 0.00012716427009 0.0001251603493 0.00012510683719 0.00012523328378 0.00010843637255 0.00032341641351 0.00163535805328 0.00091113961573 0.00093546807466 0.00096264009016 0.00092269284726 0.0008285319885 0.00064790357835 0.00058068847582 0.0005233607478 0.00050294121673 0.00050031934777 0.00050002793895 0.00050000208522 0.00050000013514 0.00050000000774 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.0004988331945 0.0004915913763 0.00044974309354 0.00035227212758 0.00024318827589 0.00019253854251 0.00014457874941 0.00012714610906 0.0001253120503 0.00012527277609 0.00012900066729 0.00015843512691 0.00027683553634 0.00056116281844 0.00066766670342 0.00090207728644 0.00095847536266 0.0009312459891 0.0008308131992 0.00064794553475 0.00058013287217 0.00052323048843 0.00050293320225 0.00050031871748 0.00050002799331 0.00050000208086 0.00050000013401 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319449 0.00049159137568 0.0004497431053 0.00035227207201 0.00024318826331 0.00019253923897 0.00014457803117 0.00012714488943 0.00012532049218 0.00012528667829 0.0001292734603 0.00016203531994 0.0002643354818 0.00043767349264 0.00064733885807 0.00089905550483 0.00095815567636 0.00093190103498 0.00083097143469 0.00064793249437 0.00058009048646 0.00052322139496 0.0005029325194 0.00050031877882 0.00050002799169 0.00050000207807 0.00050000013389 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137517 0.00044974309932 0.00035227207583 0.00024318829393 0.00019253917782 0.00014457807488 0.00012714492283 0.00012532107855 0.00012528785787 0.00012929018602 0.00016225434619 0.00026280343747 0.0004261561147 0.00064590777671 0.0008988317407 0.00095813468633 0.00093194405552 0.00083098108486 0.00064793036557 0.00058008749741 0.0005232207057 0.00050293258766 0.0005003187827 0.00050002798679 0.00050000207815 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137513 0.00044974309829 0.00035227207948 0.00024318828778 0.00019253917024 0.00014457808264 0.00012714493671 0.00012532101314 0.00012528782985 0.00012929127536 0.0001622654133 0.00026266370687 0.00042527473313 0.00064582068344 0.00089881760151 0.00095813333332 0.00093194670195 0.00083098170685 0.0006479303256 0.00058008738182 0.00052322077834 0.00050293259373 0.00050031877628 0.00050002798695 0.00050000207822 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309846 0.00035227207912 0.00024318828551 0.0001925391765 0.00014457807925 0.00012714493021 0.00012532101209 0.00012528781329 0.00012929123001 0.00016226612172 0.00026265352955 0.000425217584 0.00064581583121 0.00089881671562 0.00095813338098 0.00093194676209 0.00083098159014 0.00064793037827 0.00058008745349 0.00052322078737 0.00050293258658 0.00050031877629 0.00050002798709 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309849 0.00035227207903 0.00024318828588 0.00019253917689 0.00014457807879 0.00012714492958 0.00012532101683 0.00012528781986 0.00012929121877 0.0001622660599 0.00026265274663 0.00042521411131 0.00064581556672 0.00089881680615 0.00095813341111 0.00093194669919 0.00083098158501 0.00064793036948 0.00058008744396 0.00052322077975 0.00050293258656 0.0005003187765 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828595 0.00019253917657 0.0001445780789 0.00012714492992 0.00012532101672 0.0001252878207 0.00012929122536 0.00016226606149 0.00026265280725 0.00042521396468 0.00064581565047 0.00089881682048 0.00095813339898 0.00093194671244 0.00083098159633 0.0006479303654 0.00058008743875 0.00052322077945 0.00050293258681 0.00050031877647 0.00050002798705 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917659 0.00014457807892 0.0001271449299 0.00012532101653 0.00012528782033 0.0001292912258 0.0001622660663 0.00026265281763 0.0004252140312 0.00064581564418 0.00089881681016 0.00095813339774 0.00093194671615 0.00083098159624 0.00064793036593 0.00058008743951 0.00052322077977 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207905 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101656 0.00012528782034 0.00012929122544 0.00016226606565 0.00026265281073 0.00042521402321 0.00064581563833 0.00089881680971 0.00095813339831 0.00093194671529 0.0008309815957 0.00064793036606 0.00058008743968 0.00052322077975 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122546 0.00016226606552 0.00026265281014 0.00042521401864 0.00064581563891 0.00089881681015 0.0009581333983 0.00093194671522 0.00083098159576 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.0002626528105 0.00042521401933 0.0006458156391 0.00089881681013 0.00095813339828 0.00093194671528 0.00083098159579 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281049 0.00042521401946 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606558 0.00026265281047 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563905 0.00089881681011 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563904 0.00089881681012 0.00095813339828 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606559 0.00026265281048 0.00042521401941 0.00064581563899 0.00089881681009 0.00095813339829 0.00093194671527 0.00083098159578 0.00064793036602 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606558 0.00026265281046 0.00042521401935 0.00064581563922 0.00089881681005 0.00095813339824 0.00093194671532 0.00083098159579 0.00064793036601 0.00058008743962 0.00052322077974 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122548 0.00016226606558 0.00026265281045 0.00042521401953 0.00064581563977 0.00089881681069 0.00095813339824 0.00093194671527 0.00083098159579 0.00064793036596 0.00058008743956 0.00052322077973 0.00050293258677 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782036 0.00012929122547 0.00016226606563 0.00026265281086 0.00042521402019 0.00064581563323 0.0008988168098 0.00095813339913 0.00093194671449 0.0008309815957 0.00064793036631 0.0005800874397 0.0005232207797 0.00050293258676 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.00019253917661 0.00014457807891 0.00012714492989 0.00012532101657 0.00012528782035 0.00012929122545 0.00016226606563 0.00026265280998 0.00042521401487 0.00064581562817 0.00089881679717 0.00095813339658 0.00093194671741 0.00083098159565 0.00064793036645 0.00058008744054 0.00052322077994 0.00050293258673 0.00050031877646 0.00050002798706 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.00024318828592 0.0001925391766 0.00014457807891 0.00012714492989 0.00012532101658 0.00012528782033 0.00012929122559 0.0001622660646 0.00026265280231 0.00042521400819 0.00064581571836 0.00089881682202 0.00095813338187 0.00093194673055 0.00083098159769 0.00064793035849 0.00058008743605 0.00052322078014 0.00050293258691 0.00050031877642 0.00050002798705 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207905 0.00024318828592 0.0001925391766 0.00014457807887 0.00012714492988 0.00012532101652 0.00012528782049 0.00012929122563 0.00016226606753 0.00026265281865 0.00042521408152 0.00064581539649 0.00089881688969 0.00095813343287 0.00093194667969 0.00083098160172 0.0006479303583 0.00058008742502 0.00052322077395 0.0005029325872 0.00050031877659 0.00050002798702 0.00050000207821 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137515 0.00044974309848 0.00035227207906 0.0002431882859 0.00019253917665 0.00014457807902 0.00012714492996 0.00012532101635 0.00012528782039 0.00012929122331 0.00016226607768 0.00026265286744 0.00042521388571 0.00064580988785 0.0008988156688 0.00095813341628 0.00093194668359 0.00083098155044 0.00064793044666 0.0005800874882 0.00052322077355 0.00050293258125 0.00050031877685 0.00050002798714 0.00050000207819 0.00050000013392 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137514 0.00044974309846 0.00035227207909 0.00024318828601 0.00019253917652 0.00014457807918 0.00012714493007 0.00012532101851 0.00012528781857 0.00012929122685 0.00016226600197 0.0002626518038 0.00042520991125 0.00064571239169 0.00089879595329 0.00095813134309 0.00093194875714 0.00083098169892 0.00064793006995 0.00058008742945 0.00052322085293 0.00050293258021 0.00050031877118 0.00050002798744 0.00050000207827 0.00050000013393 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.00049159137516 0.00044974309863 0.00035227207881 0.00024318828582 0.00019253917691 0.00014457807483 0.0001271449267 0.00012532102128 0.00012528782213 0.00012929121659 0.00016226614716 0.00026263789574 0.00042514486556 0.00064414348865 0.00089849309045 0.00095809879864 0.00093198095497 0.00083098513634 0.00064792547032 0.00058008499566 0.00052322046397 0.00050293265818 0.00050031877011 0.00050002798288 0.00050000207841 0.00050000013396 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319445 0.0004915913752 0.00044974309869 0.00035227207896 0.00024318828151 0.00019253917971 0.00014457807649 0.00012714492987 0.00012532097483 0.00012528779925 0.00012929124916 0.0001622704407 0.00026244462747 0.00042416134488 0.00062230244867 0.00089451642459 0.00095762574529 0.0009324720305 0.00083106450918 0.00064787416358 0.00058004996583 0.00052321447887 0.00050293220127 0.00050031884121 0.00050002797891 0.00050000207557 0.00050000013386 0.00050000000766 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441554 0.00049883319442 0.00049159137469 0.00044974309402 0.00035227208481 0.00024318829086 0.00019253915074 0.00014457813252 0.00012714499001 0.00012532121362 0.00012528790966 0.00012929520723 0.00016239994426 0.00026024857878 0.0004115602869 0.00036565412148 0.0008516259525 0.00095178962946 0.00093900040602 0.00083248247116 0.00064744644864 0.00057956791077 0.00052311937875 0.0005029263013 0.00050031836892 0.00050002803896 0.00050000207046 0.00050000013263 0.00050000000758 0.00050000000036 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441553 0.00049883319438 0.00049159137414 0.0004497430982 0.00035227207671 0.00024318835522 0.00019253923828 0.00014457742553 0.00012714426592 0.00012532601798 0.00012529073596 0.0001294082984 0.00016510575403 0.00024020621067 0.00027901846296 -0.0020871732815 0.00049607804787 0.00089281750264 0.00101300091015 0.00085244044695 0.00064618788468 0.00057414877152 0.00052187674419 0.00050284607422 0.00050031317313 0.00050002767376 0.0005000021122 0.00050000013395 0.00050000000756 0.00050000000035 0.00049999999993 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441557 0.00049883319505 0.00049159138262 0.0004497431492 0.00035227198364 0.0002431875427 0.00019254138075 0.000144566864 0.0001271296077 0.00012542835478 0.00012535207554 0.00013155740302 0.00020898671768 0.0001585785818 -0.00085962504848 -0.0219201003326 -0.00165264617488 0.00041306577731 0.00170425464304 0.00107286065956 0.00066627354657 0.00052526869502 0.00050934246677 0.00050198863551 0.00050025473407 0.00050002424033 0.00050000192258 0.00050000014412 0.00050000000888 0.00050000000039 0.00049999999992 0.00050000000001 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896747 0.00049987441563 0.00049883319612 0.00049159138964 0.00044974285089 0.00035227295298 0.00024317900299 0.00019257887202 0.00014436936595 0.00012679505823 0.00012723804396 0.00012607131343 0.00016225965296 0.00077559295422 0.00037627069532 -0.00664169840396 -0.09692822491122 -0.00669685912456 -0.00190046797971 0.00694678008702 0.0029489930742 0.00098920389148 0.00026577005448 0.00042168065922 0.00049557529326 0.000499791151 0.00049999552727 0.000500000211 0.00050000006179 0.00050000000857 0.00050000000048 0.0004999999999 0.0005 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896743 0.00049987441454 0.00049883317316 0.00049159102032 0.00044974041857 0.00035228977572 0.00024312409074 0.00019302666042 0.00014220621951 0.00012285101811 0.00014200779516 0.00013097169196 0.00042505784605 0.00520767172031 0.00464599140185 -0.0164646573092 0.0 0.0 -0.00238098648062 0.02561214840019 0.0174843010501 0.00438912908043 -8.968462902e-05 0.00013754649077 0.00047221439636 0.00049793612889 0.00049987170801 0.00049999284762 0.00049999940773 0.00049999995308 0.00049999999791 0.0005000000003 0.00050000000001 0.00049999999997 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.0004999999999 0.00049999999703 0.00049999994748 0.00049999918197 0.00049998896746 0.00049987441533 0.00049883319066 0.00049159136519 0.00044974335668 0.00035230925494 0.00024314511565 0.00019364554982 0.00014486894622 0.00012229537071 0.00012935005975 0.00015371812806 0.00055617780546 0.00560743638406 0.0 0.0 0.0 0.0 0.0 0.0 0.04757944191431 0.01633435030523 0.00371316705592 0.00059876780326 0.00049882589853 0.00049962570322 0.00049996727997 0.00049999828982 0.00050000011927 0.00049999998963 0.00049999999833 0.00050000000071 0.00049999999995 0.00049999999995 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.000499999182 0.00049998896812 0.00049987442806 0.00049883339802 0.0004915941594 0.00044977723944 0.00035226620976 0.00024324251255 0.00019210857678 0.00015006599772 0.00012367153027 0.00012596846851 0.00011840228865 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.06561311719966 0.03836397342633 0.02445562042836 0.00576289489932 0.00097479988831 0.00054021228734 0.00050288024114 0.00050017944977 0.00050001011642 0.00050000057772 0.0005000000274 0.00049999999345 0.00050000000045 0.00050000000053 0.00049999999996 0.00049999999998 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918198 0.00049998896763 0.00049987441886 0.00049883325236 0.00049159182775 0.00044974229453 0.00035225941638 0.0002432273315 0.00019235577819 0.00014722726612 0.00012708426979 0.00012615538238 5.723384888e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.05014940764881 0.02667017616768 0.00483173864463 0.00095884539594 0.00054224602849 0.00050325998986 0.00050021675026 0.0005000127152 0.00050000066424 0.00050000002244 0.00049999998956 0.00050000000174 0.0005000000007 0.00049999999989 0.00049999999998 0.00050000000001 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994747 0.00049999918193 0.00049998896669 0.0004998744005 0.00049883294636 0.00049158828431 0.00044970866796 0.00035229783323 0.00024307986349 0.00019338085518 0.00013849403155 0.00012804638478 0.00012733806777 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.01174734293411 0.00378120342069 0.0011602381397 0.00056207651516 0.00050558762993 0.00050043474966 0.00050002953158 0.00050000164094 0.0005000000726 0.0004999999983 0.00049999999772 0.00050000000071 0.0005000000001 0.00049999999996 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.0005 0.00049999999999 0.00050000000005 0.00049999999991 0.00049999999703 0.00049999994748 0.00049999918195 0.00049998896708 0.00049987440741 0.00049883304962 0.00049158921534 0.00044971775989 0.0003522907976 0.00024308998213 0.00019318831176 0.00014028958842 0.00012723771752 0.00013032216398 0.0 0.0 0.0 0.0 0.0 D/cons.3.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 -D/cons.3.00.000050.dat 0.0 0.0 0.0 0.0 0.0 0.03174808335338 0.01345420708904 0.00293100450106 0.00039786317896 4.369980519e-05 3.91923991e-06 2.9685443e-07 1.946492e-08 1.20196e-09 -7.466e-11 -1.652e-11 1.284e-11 7.2e-13 -6.8e-13 5e-14 3e-14 -1e-14 -0.0 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.216589e-08 9.6787535e-07 1.305359006e-05 0.0001485614105 0.00137807763111 0.00984084254932 0.0555012747518 0.14652419179682 0.16793187018781 0.092003603696 0.02400963377805 0.00236863807335 0.00030572819805 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.04126976969797 0.02335115363958 0.00677349131879 0.00090004423485 0.00010263616427 9.41031102e-06 7.241786e-07 4.797885e-08 2.86937e-09 5.128e-11 -4.751e-11 1.294e-11 3.22e-12 -8.1e-13 -5e-14 5e-14 -0.0 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.216589e-08 9.6787533e-07 1.305358987e-05 0.0001485614126 0.0013780777737 0.00984084710535 0.05550133721662 0.14652451948886 0.16792962736714 0.09200290452217 0.02403596348889 0.0023932162089 0.00019759330931 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.08324824252392 0.14387701951487 0.07795081620287 0.02634223756466 0.0031983533184 0.00034303609199 3.009308082e-05 2.23529841e-06 1.442008e-07 8.31193e-09 4.2326e-10 -8.846e-11 5.8e-12 7.78e-12 -6e-13 -2.9e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.216588e-08 9.6787516e-07 1.305358624e-05 0.00014856134689 0.00137807676411 0.00984083331591 0.05550120731227 0.14652416883617 0.16793243390753 0.09200293764545 0.02403714937912 0.00237519010897 0.00025974142571 1.22254269e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.11885451700917 0.16128759294263 0.09463228272988 0.0317200095734 0.00382606514072 0.00040676118801 3.537974697e-05 2.6076939e-06 1.6704605e-07 9.54095e-09 5.0046e-10 -9.006e-11 3.77e-12 8.33e-12 -5.2e-13 -3.2e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.216589e-08 9.6787539e-07 1.305359082e-05 0.00014856142474 0.0013780778576 0.00984084587195 0.05550130692953 0.14652434200803 0.16793127464741 0.09200452313714 0.02402555100329 0.00236465155553 0.00027652881122 -4.731816071e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.002903743555 0.0794673059959 0.19802170918038 0.18443033088273 0.09838060726126 0.02937937537624 0.00356770875313 0.000384219427 3.361372156e-05 2.49001242e-06 1.6022922e-07 9.18571e-09 4.7818e-10 -8.977e-11 4.4e-12 8.18e-12 -5.5e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787546e-07 1.30535923e-05 0.00014856145123 0.0013780782458 0.00984085044047 0.05550134023063 0.14652438271383 0.16793048054366 0.09200344884649 0.02400538977902 0.00236827425926 0.00031253233001 -0.00020079610572 -0.0016051211348 -0.00930093999612 0.0 0.0 -0.28833063766983 -0.10519206125941 -0.00410553863076 0.08276788382547 0.20266427424638 0.18732621834974 0.09889823154215 0.02882286364851 0.00350988342369 0.00037880763364 3.320326931e-05 2.46393037e-06 1.5874892e-07 9.10506e-09 4.7281e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.678755e-07 1.30535932e-05 0.00014856146829 0.00137807854043 0.00984085614234 0.05550140501821 0.14652469483881 0.16792782098565 0.09199754015421 0.02403695421726 0.00238379792733 0.00027315433796 -0.00052175129906 -0.00444866873838 -0.04840489380043 -0.21199137303894 -0.4253433415068 -0.30828511375012 -0.11564182857003 -0.00782271834346 0.08242901812155 0.20417825778229 0.18803986351487 0.09881707274253 0.02867726819526 0.00349643744665 0.00037768524358 3.312600063e-05 2.45936337e-06 1.5850833e-07 9.09461e-09 4.7239e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359333e-05 0.0001485614709 0.00137807858762 0.00984085701293 0.05550141403017 0.1465247569364 0.16792745516948 0.0919974911107 0.02403934660132 0.00238080446991 0.00026902503685 -0.00054378186112 -0.00471375317682 -0.05030059891547 -0.21038042613128 -0.41905648456675 -0.30573645238323 -0.11767143255576 -0.00847036207444 0.08243966817503 0.20435244848777 0.18809816049589 0.09880851135575 0.02866201278849 0.00349511893867 0.0003775802233 3.311895289e-05 2.45898644e-06 1.5849747e-07 9.09498e-09 4.7247e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147111 0.00137807859149 0.00984085708499 0.05550141473313 0.14652476379233 0.1679274156868 0.09199749568283 0.02403960815391 0.00238038231637 0.000268584626 -0.00054605256598 -0.00475417153095 -0.05064938960541 -0.20898358746255 -0.41132506084637 -0.30526315761105 -0.1178770225645 -0.00853859452709 0.08244463028711 0.20437000230084 0.18810209218149 0.09880761670726 0.02866067287343 0.00349501166201 0.00037757209111 3.311845232e-05 2.45896969e-06 1.5849739e-07 9.09492e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859129 0.00984085708594 0.05550141477533 0.14652476421498 0.16792741300529 0.09199749602284 0.02403962151147 0.00238036389514 0.00026855189641 -0.0005462307008 -0.00475761711073 -0.05068027629319 -0.20876089306519 -0.41010288065378 -0.30520487743757 -0.11789421092505 -0.00854444279056 0.08244529671856 0.20437144475819 0.18810228711632 0.09880753070235 0.02866057209541 0.00349500425755 0.00037757157078 3.311843772e-05 2.45896901e-06 1.5849694e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859135 0.00984085708609 0.05550141477812 0.14652476420665 0.1679274128946 0.09199749605473 0.02403962206965 0.00238036327402 0.00026854984491 -0.00054624212104 -0.00475785679786 -0.05068239442552 -0.20873540884312 -0.40997059390897 -0.30519949557605 -0.1178953995985 -0.00854485943447 0.08244535727076 0.20437154494628 0.18810229292562 0.09880752384629 0.02866056553233 0.00349500381259 0.00037757156386 3.311843733e-05 2.45896822e-06 1.5849684e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708634 0.05550141477793 0.14652476420282 0.16792741292717 0.09199749602701 0.02403962205895 0.00238036329615 0.00026854975929 -0.00054624272526 -0.00475787061521 -0.05068250493769 -0.20873309260508 -0.40995880699497 -0.30519908988362 -0.11789546987355 -0.00854488498896 0.08244536152006 0.20437155104349 0.1881022928686 0.09880752334103 0.02866056512231 0.00349500381391 0.00037757156467 3.31184363e-05 2.45896813e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477809 0.14652476420522 0.16792741292081 0.09199749602439 0.02403962205749 0.00238036330392 0.00026854976278 -0.00054624274204 -0.0047578712994 -0.05068250952129 -0.2087329161641 -0.40995793156197 -0.30519906392207 -0.11789547355491 -0.00854488642075 0.08244536182595 0.20437155140799 0.18810229280764 0.09880752332026 0.02866056514256 0.00349500381543 0.00037757156329 3.311843621e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420544 0.16792741291801 0.09199749602735 0.0240396220607 0.00238036329992 0.00026854976175 -0.00054624273728 -0.00475787131159 -0.0506825096399 -0.20873290462493 -0.40995787581817 -0.30519906243386 -0.11789547377976 -0.00854488644121 0.08244536188705 0.20437155135562 0.1881022928021 0.09880752333602 0.02866056514975 0.00349500381404 0.00037757156319 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291837 0.09199749602742 0.02403962206078 0.0023803632995 0.00026854976105 -0.00054624273829 -0.0047578713116 -0.05068250963931 -0.20873290398712 -0.40995787263451 -0.30519906234549 -0.117895473761 -0.00854488642738 0.08244536187556 0.20437155135178 0.18810229280643 0.09880752333407 0.02866056514635 0.0034950038139 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291845 0.0919974960273 0.02403962206064 0.00238036329969 0.00026854976109 -0.00054624273864 -0.00475787131379 -0.05068250964678 -0.20873290401113 -0.40995787247304 -0.30519906236948 -0.11789547375711 -0.00854488643146 0.08244536187339 0.20437155135718 0.1881022928064 0.09880752333307 0.02866056514598 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329969 0.00026854976111 -0.00054624273857 -0.0047578713137 -0.05068250964654 -0.20873290402309 -0.40995787253903 -0.30519906236858 -0.11789547375893 -0.00854488643234 0.08244536187412 0.20437155135725 0.18810229280619 0.09880752333321 0.02866056514614 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206067 0.00238036329968 0.00026854976111 -0.00054624273856 -0.00475787131359 -0.05068250964584 -0.2087329040168 -0.40995787253139 -0.30519906236672 -0.11789547375908 -0.00854488643216 0.08244536187416 0.20437155135701 0.18810229280622 0.09880752333324 0.02866056514614 0.00349500381393 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964588 -0.20873290401621 -0.40995787252698 -0.30519906236685 -0.117895473759 -0.00854488643215 0.08244536187412 0.20437155135703 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381393 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964592 -0.20873290401652 -0.40995787252762 -0.30519906236692 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.20873290401652 -0.40995787252776 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381393 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381393 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.4099578725277 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381393 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381393 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.4099578725277 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.30519906236692 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.20873290401652 -0.40995787252776 -0.30519906236685 -0.11789547375899 -0.00854488643214 0.08244536187412 0.20437155135703 0.18810229280623 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964592 -0.20873290401652 -0.40995787252759 -0.30519906236671 -0.1178954737591 -0.00854488643216 0.08244536187416 0.20437155135701 0.18810229280623 0.09880752333324 0.02866056514614 0.00349500381393 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964588 -0.20873290401616 -0.40995787252698 -0.30519906236873 -0.11789547375895 -0.00854488643238 0.08244536187412 0.20437155135718 0.18810229280611 0.0988075233332 0.02866056514615 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964577 -0.20873290401704 -0.40995787253206 -0.30519906236962 -0.11789547375658 -0.00854488643134 0.08244536187343 0.20437155135725 0.18810229280633 0.09880752333297 0.02866056514601 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.0002685497611 -0.00054624273858 -0.00475787131362 -0.05068250964681 -0.20873290402393 -0.40995787253841 -0.30519906234417 -0.11789547376175 -0.00854488642684 0.08244536187552 0.20437155135292 0.18810229280847 0.09880752333432 0.02866056514614 0.0034950038139 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206068 0.00238036329967 0.00026854976111 -0.00054624273853 -0.00475787131371 -0.05068250964776 -0.20873290400614 -0.40995787246774 -0.30519906244622 -0.11789547378302 -0.00854488644134 0.08244536188496 0.20437155135296 0.1881022928031 0.09880752333805 0.02866056514929 0.00349500381397 0.00037757156319 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291843 0.0919974960273 0.02403962206068 0.0023803632996 0.00026854976115 -0.00054624273843 -0.00475787131367 -0.05068250963454 -0.20873290399724 -0.40995787266905 -0.30519906417864 -0.11789547349742 -0.0085448864049 0.08244536182836 0.20437155140523 0.18810229278485 0.09880752331679 0.02866056514623 0.00349500381527 0.00037757156322 3.311843621e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477811 0.14652476420534 0.16792741291839 0.0919974960274 0.02403962206043 0.00238036330004 0.00026854976089 -0.00054624273965 -0.00475787131315 -0.05068250965386 -0.20873290483031 -0.40995787633556 -0.30519909371592 -0.11789546900119 -0.00854488461364 0.08244536148405 0.20437155116445 0.18810229298276 0.09880752333621 0.02866056511694 0.00349500381466 0.00037757156451 3.311843625e-05 2.45896813e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.0555014147781 0.14652476420541 0.1679274129185 0.09199749602676 0.02403962206034 0.00238036330212 0.00026854976036 -0.00054624274292 -0.0047578713024 -0.05068250996141 -0.20873291955604 -0.4099579394879 -0.30519954623305 -0.11789538444733 -0.00854485331453 0.08244535662643 0.20437154685599 0.18810229453051 0.09880752399306 0.02866056536136 0.00349500380364 0.00037757156425 3.311843727e-05 2.45896819e-06 1.5849684e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.0001485614711 0.00137807859139 0.0098408570864 0.05550141477817 0.14652476420503 0.16792741292125 0.09199749602446 0.02403962206324 0.00238036329546 0.00026854976083 -0.00054624273896 -0.00475787109148 -0.05068251204579 -0.20873314110636 -0.40995891146308 -0.30520543136122 -0.11789398964564 -0.00854435802231 0.08244528857854 0.20437147327294 0.18810231104917 0.09880753289025 0.02866056971826 0.00349500405432 0.00037757155987 3.311843768e-05 2.458969e-06 1.5849693e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859137 0.0098408570863 0.0555014147787 0.14652476420508 0.1679274129082 0.09199749604022 0.02403962206451 0.00238036329745 0.00026854975252 -0.00054624275671 -0.00475786479831 -0.05068249314089 -0.20873601553912 -0.40997173020608 -0.30526806948862 -0.11787431513069 -0.00853759990558 0.0824445337652 0.20437036207249 0.18810240949778 0.09880764532991 0.02866064184902 0.0034950088653 0.00037757189015 3.311844174e-05 2.45896953e-06 1.5849742e-07 9.09492e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859132 0.00984085708602 0.05550141477799 0.14652476421292 0.16792741289996 0.09199749599423 0.0240396217899 0.00238036394198 0.00026854998504 -0.00054624092283 -0.00475773596543 -0.05068165491846 -0.2087676544148 -0.41011244941903 -0.30576787693259 -0.11764475455183 -0.00846076197637 0.08243860451545 0.20435625166097 0.18810156650254 0.09880881392423 0.02866167191536 0.00349508625637 0.00037757771719 3.31187972e-05 2.45897846e-06 1.584972e-07 9.09498e-09 4.7247e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147112 0.00137807859174 0.00984085708859 0.05550141476535 0.1465247640782 0.16792741369725 0.09199749535362 0.0240396139173 0.00238037923873 0.00026856060275 -0.00054617005198 -0.00475530413592 -0.05065942265445 -0.20902610659684 -0.41139467090141 -0.30846456097354 -0.11541297661493 -0.00773937395671 0.08241602234054 0.20420969393834 0.18807210218922 0.09881884636427 0.0286739314486 0.00349611914945 0.00037766026254 3.312440147e-05 2.45927715e-06 1.5850407e-07 9.09442e-09 4.7239e-10 -8.965e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359335e-05 0.00014856147118 0.00137807859145 0.00984085706528 0.05550141445955 0.14652476073698 0.16792743195849 0.09199748616738 0.02403942431004 0.00238072266641 0.00026878493504 -0.00054487924577 -0.0047229553548 -0.05036036814543 -0.21058953959141 -0.41933480332063 -0.28861592464942 -0.10492765177475 -0.00403158840983 0.08277818285588 0.20290344982976 0.18754093781795 0.09892342011329 0.02880665611416 0.00350810651759 0.00037865386439 3.319298544e-05 2.46337395e-06 1.5872227e-07 9.10378e-09 4.7273e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.30535933e-05 0.00014856147012 0.0013780785707 0.00984085663056 0.0555014094163 0.14652471522468 0.16792765565038 0.09199737806172 0.02403751045195 0.00238354424518 0.00027142286334 -0.00052950748207 -0.00448837480191 -0.04848936142425 -0.21229977587483 -0.42599674689978 0.0 0.0 0.0031349858265 0.07928039274837 0.19836935994254 0.1855765184693 0.09888941940196 0.0294325081631 0.00357076041696 0.00038444048197 3.362826683e-05 2.49097674e-06 1.6028942e-07 9.18878e-09 4.7833e-10 -8.977e-11 4.4e-12 8.18e-12 -5.5e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787549e-07 1.305359297e-05 0.00014856146206 0.00137807838969 0.00984085212037 0.05550135226131 0.14652441732219 0.16792997811154 0.09200236486724 0.02400618280011 0.00236504299502 0.00031782644451 -0.00023734545321 -0.0016755011474 -0.00931854733915 0.0 0.0 0.0 0.0 0.0 0.0 0.11852908155854 0.16740919328852 0.0971362637036 0.03205968645666 0.00384654252988 0.00040901657944 3.555604583e-05 2.61959769e-06 1.6775612e-07 9.57825e-09 5.0275e-10 -9.008e-11 3.71e-12 8.34e-12 -5.2e-13 -3.2e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787555e-07 1.305359415e-05 0.00014856148283 0.0013780787058 0.00984085651621 0.05550139395974 0.14652458807124 0.16792947745147 0.09200469442459 0.02402690813353 0.00236860471509 0.00025864735582 -6.380844418e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.08163939405688 0.15734644469257 0.08159978557714 0.02586298614701 0.00316704196968 0.00034285264518 3.024030177e-05 2.25635069e-06 1.4603557e-07 8.43082e-09 4.3168e-10 -8.872e-11 5.55e-12 7.84e-12 -5.9e-13 -2.9e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.216591e-08 9.6787584e-07 1.305359973e-05 0.00014856157576 0.00137808002406 0.0098408733939 0.05550154757543 0.14652503370365 0.16792638633793 0.09200607473665 0.02403489082555 0.00239839783288 0.00017142235231 2.144081753e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.04046409185891 0.02141295970751 0.00661010378828 0.00086162772385 9.670265494e-05 8.78111161e-06 6.7197908e-07 4.446435e-08 2.67489e-09 3.751e-11 -4.458e-11 1.302e-11 2.98e-12 -8e-13 -4e-14 5e-14 -0.0 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787563e-07 1.305359567e-05 0.00014856150992 0.00137807912995 0.00984086296426 0.05550146087045 0.14652482067957 0.16792776157841 0.09200461268218 0.02403465968044 0.00239941432965 0.00017978975883 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00553050301052 0.00767056873707 0.00202217912408 0.00025015275698 2.664961522e-05 2.36452258e-06 1.7945236e-07 1.189151e-08 7.29e-10 -9.607e-11 -3.87e-12 1.128e-11 -1.1e-13 -5.5e-13 8e-14 2e-14 -1e-14 -0.0 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787543e-07 1.30535915e-05 0.00014856143508 0.00137807797521 0.00984084639712 0.05550130241935 0.14652424693627 0.16793155129081 0.09200412767475 0.02400735981967 0.00236819822035 0.00031313450631 0.0 0.0 0.0 0.0 0.0 +D/cons.3.00.000050.dat 0.0 0.0 0.0 0.0 0.0 0.03174808335338 0.01345420708904 0.00293100450106 0.00039786317896 4.369980519e-05 3.91923992e-06 2.9685443e-07 1.946492e-08 1.20196e-09 -7.466e-11 -1.652e-11 1.284e-11 7.2e-13 -6.8e-13 5e-14 3e-14 -1e-14 -0.0 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.216589e-08 9.6787535e-07 1.305359006e-05 0.0001485614105 0.00137807763111 0.00984084254932 0.0555012747518 0.14652419179682 0.16793187018781 0.092003603696 0.02400963377805 0.00236863807335 0.00030572819805 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.04126976969797 0.02335115363958 0.00677349131879 0.00090004423485 0.00010263616427 9.41031102e-06 7.241786e-07 4.797885e-08 2.86937e-09 5.128e-11 -4.751e-11 1.294e-11 3.22e-12 -8.1e-13 -5e-14 5e-14 -0.0 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.216589e-08 9.6787533e-07 1.305358987e-05 0.0001485614126 0.0013780777737 0.00984084710535 0.05550133721662 0.14652451948886 0.16792962736714 0.09200290452217 0.02403596348889 0.0023932162089 0.00019759330931 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.08324824252392 0.14387701951487 0.07795081620287 0.02634223756466 0.0031983533184 0.00034303609199 3.009308082e-05 2.23529841e-06 1.442008e-07 8.31193e-09 4.2326e-10 -8.846e-11 5.8e-12 7.78e-12 -6e-13 -2.9e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.216588e-08 9.6787516e-07 1.305358624e-05 0.00014856134689 0.00137807676411 0.00984083331591 0.05550120731227 0.14652416883617 0.16793243390753 0.09200293764545 0.02403714937912 0.00237519010897 0.00025974142571 1.22254269e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.11885451700917 0.16128759294263 0.09463228272988 0.0317200095734 0.00382606514072 0.00040676118801 3.537974697e-05 2.6076939e-06 1.6704605e-07 9.54095e-09 5.0046e-10 -9.006e-11 3.77e-12 8.33e-12 -5.2e-13 -3.2e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.216589e-08 9.6787539e-07 1.305359082e-05 0.00014856142474 0.0013780778576 0.00984084587195 0.05550130692953 0.14652434200803 0.16793127464741 0.09200452313714 0.02402555100329 0.00236465155553 0.00027652881122 -4.731816071e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.002903743555 0.0794673059959 0.19802170918038 0.18443033088273 0.09838060726126 0.02937937537624 0.00356770875313 0.000384219427 3.361372156e-05 2.49001242e-06 1.6022922e-07 9.18571e-09 4.7818e-10 -8.977e-11 4.4e-12 8.18e-12 -5.5e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787546e-07 1.30535923e-05 0.00014856145123 0.0013780782458 0.00984085044047 0.05550134023063 0.14652438271383 0.16793048054366 0.09200344884649 0.02400538977902 0.00236827425926 0.00031253233001 -0.00020079610572 -0.0016051211348 -0.00930093999612 0.0 0.0 -0.28833063766983 -0.10519206125941 -0.00410553863076 0.08276788382547 0.20266427424638 0.18732621834974 0.09889823154215 0.02882286364851 0.00350988342369 0.00037880763364 3.320326931e-05 2.46393037e-06 1.5874892e-07 9.10506e-09 4.7281e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.678755e-07 1.30535932e-05 0.00014856146829 0.00137807854043 0.00984085614234 0.05550140501821 0.14652469483881 0.16792782098565 0.09199754015421 0.02403695421726 0.00238379792733 0.00027315433796 -0.00052175129906 -0.00444866873838 -0.04840489380043 -0.21199137303894 -0.4253433415068 -0.30828511375012 -0.11564182857003 -0.00782271834346 0.08242901812155 0.20417825778229 0.18803986351487 0.09881707274253 0.02867726819526 0.00349643744665 0.00037768524358 3.312600063e-05 2.45936337e-06 1.5850833e-07 9.09461e-09 4.7239e-10 -8.965e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359333e-05 0.0001485614709 0.00137807858762 0.00984085701293 0.05550141403017 0.1465247569364 0.16792745516948 0.0919974911107 0.02403934660132 0.00238080446991 0.00026902503685 -0.00054378186112 -0.00471375317682 -0.05030059891547 -0.21038042613128 -0.41905648456675 -0.30573645238323 -0.11767143255576 -0.00847036207444 0.08243966817503 0.20435244848777 0.18809816049589 0.09880851135575 0.02866201278849 0.00349511893868 0.0003775802233 3.311895289e-05 2.45898644e-06 1.5849747e-07 9.09498e-09 4.7247e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147111 0.00137807859149 0.00984085708499 0.05550141473313 0.14652476379233 0.1679274156868 0.09199749568283 0.02403960815391 0.00238038231637 0.000268584626 -0.00054605256598 -0.00475417153095 -0.05064938960541 -0.20898358746255 -0.41132506084637 -0.30526315761105 -0.1178770225645 -0.00853859452709 0.08244463028711 0.20437000230084 0.18810209218149 0.09880761670726 0.02866067287343 0.00349501166201 0.00037757209111 3.311845232e-05 2.45896969e-06 1.5849739e-07 9.09492e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859129 0.00984085708594 0.05550141477533 0.14652476421498 0.16792741300529 0.09199749602284 0.02403962151147 0.00238036389514 0.00026855189641 -0.0005462307008 -0.00475761711073 -0.05068027629319 -0.20876089306519 -0.41010288065378 -0.30520487743757 -0.11789421092505 -0.00854444279056 0.08244529671856 0.20437144475819 0.18810228711632 0.09880753070235 0.02866057209541 0.00349500425755 0.00037757157078 3.311843772e-05 2.45896901e-06 1.5849694e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859135 0.00984085708609 0.05550141477812 0.14652476420665 0.1679274128946 0.09199749605473 0.02403962206965 0.00238036327402 0.00026854984491 -0.00054624212104 -0.00475785679786 -0.05068239442552 -0.20873540884312 -0.40997059390897 -0.30519949557605 -0.1178953995985 -0.00854485943447 0.08244535727076 0.20437154494628 0.18810229292562 0.09880752384629 0.02866056553233 0.00349500381259 0.00037757156386 3.311843733e-05 2.45896822e-06 1.5849684e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708634 0.05550141477793 0.14652476420282 0.16792741292717 0.09199749602701 0.02403962205895 0.00238036329615 0.00026854975929 -0.00054624272526 -0.00475787061521 -0.05068250493769 -0.20873309260508 -0.40995880699497 -0.30519908988362 -0.11789546987355 -0.00854488498896 0.08244536152006 0.20437155104349 0.1881022928686 0.09880752334103 0.02866056512231 0.00349500381391 0.00037757156467 3.31184363e-05 2.45896813e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477809 0.14652476420522 0.16792741292081 0.09199749602439 0.02403962205749 0.00238036330392 0.00026854976278 -0.00054624274204 -0.0047578712994 -0.05068250952129 -0.2087329161641 -0.40995793156197 -0.30519906392207 -0.11789547355491 -0.00854488642075 0.08244536182595 0.20437155140799 0.18810229280764 0.09880752332026 0.02866056514256 0.00349500381543 0.00037757156329 3.311843621e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420544 0.16792741291801 0.09199749602735 0.0240396220607 0.00238036329992 0.00026854976175 -0.00054624273728 -0.00475787131159 -0.0506825096399 -0.20873290462493 -0.40995787581817 -0.30519906243386 -0.11789547377976 -0.00854488644121 0.08244536188705 0.20437155135562 0.1881022928021 0.09880752333602 0.02866056514975 0.00349500381404 0.00037757156319 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291837 0.09199749602742 0.02403962206078 0.0023803632995 0.00026854976105 -0.00054624273829 -0.0047578713116 -0.05068250963931 -0.20873290398712 -0.40995787263451 -0.30519906234549 -0.117895473761 -0.00854488642738 0.08244536187556 0.20437155135178 0.18810229280643 0.09880752333407 0.02866056514635 0.0034950038139 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291845 0.0919974960273 0.02403962206064 0.00238036329969 0.00026854976109 -0.00054624273864 -0.00475787131379 -0.05068250964678 -0.20873290401113 -0.40995787247304 -0.30519906236948 -0.11789547375711 -0.00854488643146 0.08244536187339 0.20437155135718 0.1881022928064 0.09880752333307 0.02866056514598 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329969 0.00026854976111 -0.00054624273857 -0.0047578713137 -0.05068250964654 -0.20873290402309 -0.40995787253903 -0.30519906236858 -0.11789547375893 -0.00854488643234 0.08244536187412 0.20437155135725 0.18810229280619 0.09880752333321 0.02866056514614 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206067 0.00238036329968 0.00026854976111 -0.00054624273856 -0.00475787131359 -0.05068250964584 -0.2087329040168 -0.40995787253139 -0.30519906236672 -0.11789547375908 -0.00854488643216 0.08244536187416 0.20437155135701 0.18810229280622 0.09880752333324 0.02866056514614 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964588 -0.20873290401621 -0.40995787252698 -0.30519906236685 -0.117895473759 -0.00854488643215 0.08244536187412 0.20437155135703 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964592 -0.20873290401652 -0.40995787252762 -0.30519906236692 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.20873290401652 -0.40995787252776 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.4099578725277 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.4099578725277 -0.3051990623669 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.2087329040165 -0.40995787252771 -0.30519906236692 -0.117895473759 -0.00854488643216 0.08244536187412 0.20437155135704 0.18810229280622 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964591 -0.20873290401652 -0.40995787252776 -0.30519906236685 -0.11789547375899 -0.00854488643214 0.08244536187412 0.20437155135703 0.18810229280623 0.09880752333323 0.02866056514613 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964592 -0.20873290401652 -0.40995787252759 -0.30519906236671 -0.1178954737591 -0.00854488643216 0.08244536187416 0.20437155135701 0.18810229280623 0.09880752333324 0.02866056514614 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964588 -0.20873290401616 -0.40995787252698 -0.30519906236873 -0.11789547375895 -0.00854488643238 0.08244536187412 0.20437155135718 0.18810229280611 0.0988075233332 0.02866056514615 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.00026854976111 -0.00054624273857 -0.00475787131361 -0.05068250964577 -0.20873290401704 -0.40995787253206 -0.30519906236962 -0.11789547375658 -0.00854488643134 0.08244536187343 0.20437155135725 0.18810229280633 0.09880752333297 0.02866056514601 0.00349500381394 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206066 0.00238036329968 0.0002685497611 -0.00054624273858 -0.00475787131362 -0.05068250964681 -0.20873290402393 -0.40995787253841 -0.30519906234417 -0.11789547376175 -0.00854488642684 0.08244536187552 0.20437155135292 0.18810229280847 0.09880752333432 0.02866056514614 0.0034950038139 0.00037757156322 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291842 0.09199749602731 0.02403962206068 0.00238036329967 0.00026854976111 -0.00054624273853 -0.00475787131371 -0.05068250964776 -0.20873290400614 -0.40995787246774 -0.30519906244622 -0.11789547378302 -0.00854488644134 0.08244536188496 0.20437155135296 0.1881022928031 0.09880752333805 0.02866056514929 0.00349500381397 0.00037757156319 3.311843623e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477812 0.14652476420535 0.16792741291843 0.0919974960273 0.02403962206068 0.0023803632996 0.00026854976115 -0.00054624273843 -0.00475787131367 -0.05068250963454 -0.20873290399724 -0.40995787266905 -0.30519906417864 -0.11789547349742 -0.0085448864049 0.08244536182836 0.20437155140523 0.18810229278485 0.09880752331679 0.02866056514623 0.00349500381527 0.00037757156322 3.311843621e-05 2.45896815e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.05550141477811 0.14652476420534 0.16792741291839 0.0919974960274 0.02403962206043 0.00238036330004 0.00026854976089 -0.00054624273965 -0.00475787131315 -0.05068250965386 -0.20873290483031 -0.40995787633556 -0.30519909371592 -0.11789546900119 -0.00854488461364 0.08244536148405 0.20437155116445 0.18810229298276 0.09880752333621 0.02866056511694 0.00349500381466 0.00037757156451 3.311843625e-05 2.45896813e-06 1.5849685e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859138 0.00984085708638 0.0555014147781 0.14652476420541 0.1679274129185 0.09199749602676 0.02403962206034 0.00238036330212 0.00026854976036 -0.00054624274292 -0.0047578713024 -0.05068250996141 -0.20873291955604 -0.4099579394879 -0.30519954623305 -0.11789538444733 -0.00854485331453 0.08244535662643 0.20437154685599 0.18810229453051 0.09880752399306 0.02866056536136 0.00349500380364 0.00037757156425 3.311843727e-05 2.45896819e-06 1.5849684e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859139 0.0098408570864 0.05550141477817 0.14652476420503 0.16792741292125 0.09199749602446 0.02403962206324 0.00238036329546 0.00026854976083 -0.00054624273896 -0.00475787109148 -0.05068251204579 -0.20873314110636 -0.40995891146308 -0.30520543136122 -0.11789398964564 -0.00854435802231 0.08244528857854 0.20437147327294 0.18810231104917 0.09880753289025 0.02866056971826 0.00349500405432 0.00037757155987 3.311843768e-05 2.458969e-06 1.5849693e-07 9.09486e-09 4.7245e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859137 0.0098408570863 0.0555014147787 0.14652476420508 0.1679274129082 0.09199749604022 0.02403962206451 0.00238036329745 0.00026854975252 -0.00054624275671 -0.00475786479831 -0.05068249314089 -0.20873601553912 -0.40997173020608 -0.30526806948862 -0.11787431513069 -0.00853759990558 0.0824445337652 0.20437036207249 0.18810240949778 0.09880764532991 0.02866064184902 0.0034950088653 0.00037757189015 3.311844174e-05 2.45896953e-06 1.5849742e-07 9.09492e-09 4.7246e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147109 0.00137807859132 0.00984085708602 0.05550141477799 0.14652476421292 0.16792741289996 0.09199749599423 0.0240396217899 0.00238036394198 0.00026854998504 -0.00054624092283 -0.00475773596543 -0.05068165491846 -0.2087676544148 -0.41011244941903 -0.30576787693259 -0.11764475455183 -0.00846076197637 0.08243860451545 0.20435625166097 0.18810156650254 0.09880881392423 0.02866167191536 0.00349508625637 0.00037757771719 3.31187972e-05 2.45897846e-06 1.584972e-07 9.09498e-09 4.7247e-10 -8.966e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359334e-05 0.00014856147112 0.00137807859174 0.00984085708859 0.05550141476535 0.1465247640782 0.16792741369725 0.09199749535362 0.0240396139173 0.00238037923873 0.00026856060275 -0.00054617005198 -0.00475530413592 -0.05065942265445 -0.20902610659684 -0.41139467090141 -0.30846456097354 -0.11541297661493 -0.00773937395671 0.08241602234054 0.20420969393834 0.18807210218922 0.09881884636427 0.0286739314486 0.00349611914945 0.00037766026254 3.312440147e-05 2.45927715e-06 1.5850407e-07 9.09442e-09 4.7239e-10 -8.965e-11 4.54e-12 8.14e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.305359335e-05 0.00014856147118 0.00137807859145 0.00984085706528 0.05550141445955 0.14652476073698 0.16792743195849 0.09199748616738 0.02403942431004 0.00238072266641 0.00026878493504 -0.00054487924577 -0.0047229553548 -0.05036036814543 -0.21058953959141 -0.41933480332063 -0.28861592464942 -0.10492765177475 -0.00403158840983 0.08277818285588 0.20290344982976 0.18754093781795 0.09892342011329 0.02880665611416 0.00350810651759 0.00037865386439 3.319298544e-05 2.46337395e-06 1.5872227e-07 9.10378e-09 4.7273e-10 -8.965e-11 4.54e-12 8.13e-12 -5.6e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787551e-07 1.30535933e-05 0.00014856147012 0.0013780785707 0.00984085663056 0.0555014094163 0.14652471522468 0.16792765565038 0.09199737806172 0.02403751045195 0.00238354424518 0.00027142286334 -0.00052950748207 -0.00448837480191 -0.04848936142425 -0.21229977587483 -0.42599674689978 0.0 0.0 0.0031349858265 0.07928039274837 0.19836935994254 0.1855765184693 0.09888941940196 0.0294325081631 0.00357076041696 0.00038444048197 3.362826683e-05 2.49097674e-06 1.6028942e-07 9.18878e-09 4.7833e-10 -8.977e-11 4.4e-12 8.18e-12 -5.5e-13 -3.1e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787549e-07 1.305359297e-05 0.00014856146206 0.00137807838969 0.00984085212037 0.05550135226131 0.14652441732219 0.16792997811154 0.09200236486724 0.02400618280011 0.00236504299502 0.00031782644451 -0.00023734545321 -0.0016755011474 -0.00931854733915 0.0 0.0 0.0 0.0 0.0 0.0 0.11852908155854 0.16740919328852 0.0971362637036 0.03205968645666 0.00384654252988 0.00040901657944 3.555604584e-05 2.61959769e-06 1.6775612e-07 9.57825e-09 5.0275e-10 -9.008e-11 3.71e-12 8.34e-12 -5.2e-13 -3.2e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787555e-07 1.305359415e-05 0.00014856148283 0.0013780787058 0.00984085651621 0.05550139395974 0.14652458807124 0.16792947745147 0.09200469442459 0.02402690813353 0.00236860471509 0.00025864735582 -6.380844418e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.08163939405688 0.15734644469257 0.08159978557714 0.02586298614701 0.00316704196968 0.00034285264518 3.024030177e-05 2.25635069e-06 1.4603557e-07 8.43082e-09 4.3168e-10 -8.872e-11 5.55e-12 7.84e-12 -5.9e-13 -2.9e-13 7e-14 1e-14 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.216591e-08 9.6787584e-07 1.305359973e-05 0.00014856157576 0.00137808002406 0.0098408733939 0.05550154757543 0.14652503370365 0.16792638633793 0.09200607473665 0.02403489082555 0.00239839783288 0.00017142235231 2.144081753e-05 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.04046409185891 0.02141295970751 0.00661010378828 0.00086162772385 9.670265494e-05 8.78111161e-06 6.7197908e-07 4.446435e-08 2.67489e-09 3.751e-11 -4.458e-11 1.302e-11 2.98e-12 -8e-13 -4e-14 5e-14 -0.0 -1e-14 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787563e-07 1.305359567e-05 0.00014856150992 0.00137807912995 0.00984086296426 0.05550146087045 0.14652482067957 0.16792776157841 0.09200461268218 0.02403465968044 0.00239941432965 0.00017978975883 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.00553050301052 0.00767056873707 0.00202217912408 0.00025015275698 2.664961522e-05 2.36452258e-06 1.7945236e-07 1.189151e-08 7.29e-10 -9.607e-11 -3.87e-12 1.128e-11 -1.1e-13 -5.5e-13 8e-14 2e-14 -1e-14 -0.0 -0.0 6e-14 -9e-14 -8.5e-13 4.1e-12 1.271e-11 -5.753e-11 9.938e-11 3.62365e-09 6.21659e-08 9.6787543e-07 1.30535915e-05 0.00014856143508 0.00137807797521 0.00984084639712 0.05550130241935 0.14652424693627 0.16793155129081 0.09200412767475 0.02400735981967 0.00236819822035 0.00031313450631 0.0 0.0 0.0 0.0 0.0 D/cons.4.00.000000.dat 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 2.5000005 2.5000005 2.5000005 2.5000005 2.5000005 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 1.25000025 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 0.2500000625 -D/cons.4.00.000050.dat 2.5000005 1.28765665157671 1.28233774583049 1.3730431173692 1.43481445157317 1.35661926521261 1.30052380036225 1.25990953083113 1.25129375719234 1.25013878904764 1.25001247132286 1.25000116492886 1.25000030937296 1.25000025319221 1.25000024982678 1.25000024994805 1.25000025003876 1.2500002500021 1.25000024999797 1.25000025000015 1.2500002500001 1.25000024999998 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616466 1.24999738689441 1.24996163705958 1.24956080701305 1.24592396807319 1.22089826115419 1.08410590450285 0.80688085036114 0.59415378170774 0.47924915719521 0.31247866534241 0.25626209003631 0.25050861264119 0.25047883151923 0.2545214981436 0.30455668455819 0.3784040959543 0.2500000625 2.33081897571178 1.65527415948872 1.53803410542435 1.48153655394781 1.45011105656182 1.39737987380852 1.34362189930212 1.27412527013766 1.25305687749988 1.25033804094179 1.25003060450773 1.25000255384404 1.25000040081421 1.25000025849137 1.25000025020738 1.25000024985381 1.2500002500396 1.2500002500097 1.25000024999758 1.25000024999983 1.25000025000016 1.25000024999999 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616467 1.24999738689448 1.2499616370605 1.24956080701457 1.24592396779781 1.2208982507209 1.0841058098054 0.80688107410509 0.59415311126975 0.47924870687498 0.31240925036942 0.25624716941571 0.25059222302881 0.25043805660611 0.2509760912935 0.25387231470168 0.25088683490529 0.70393129585016 2.17910745481097 2.19605345582199 1.88280392522102 1.67349190863522 1.60050626427292 1.50824073129327 1.47376040991629 1.32479188942019 1.25911903948391 1.25098520617626 1.25008702343883 1.25000671561657 1.25000066808089 1.25000027410664 1.25000025113203 1.2500002497677 1.25000025001627 1.25000025002272 1.25000024999829 1.25000024999916 1.2500002500002 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616469 1.24999738689496 1.2499616370703 1.24956080718946 1.24592397042853 1.22089828433326 1.08410605645389 0.80688034010881 0.5941557829314 0.47924443262362 0.31243198434529 0.25620153220573 0.25059124012382 0.24992377766829 0.25000918055091 0.25049001964705 0.25904448628118 0.65969589214596 2.21465764257259 2.3578380443945 2.21745177288698 1.93244205289062 1.70097176095038 1.56836554309338 1.52393342610464 1.34076453277863 1.26106317314241 1.25118600149179 1.25010380287696 1.25000790026364 1.25000074082765 1.25000027806525 1.25000025131804 1.25000024976439 1.25000025001068 1.25000025002462 1.25000024999849 1.25000024999905 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616466 1.24999738689432 1.24996163705768 1.24956080697786 1.24592396751982 1.220898252791 1.08410584018065 0.80688092826328 0.59415396001275 0.47924404741606 0.31244877262358 0.25624872759161 0.25058589527898 0.24995672136299 0.25178499671554 0.25937105602028 0.37409017634176 0.80988488663987 2.26583803530046 2.28352910774286 2.423959882721 2.19062050163885 1.90533204196797 1.66970502991196 1.54504651214616 1.33688295329616 1.26054122007877 1.25113727122432 1.25009974462094 1.25000761997243 1.2500007242834 1.25000027712842 1.25000025126504 1.25000024976334 1.25000025001299 1.25000025002418 1.25000024999838 1.25000024999908 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.2499973868941 1.24996163705301 1.2495608068941 1.24592396629385 1.22089823881935 1.08410573442657 0.80688135739176 0.5941520613169 0.47925472186346 0.31248840509227 0.2562450338771 0.25047745339528 0.25051310789835 0.25446583398383 0.27728892538585 0.51668532577007 0.91369629277167 1.62875423104341 2.21433416584633 2.36524902440639 2.25376797026712 1.94955202503688 1.68673906018752 1.54630613608229 1.33519856730151 1.26036607567906 1.25112085985883 1.25009849833521 1.25000754068539 1.25000071960541 1.25000027683472 1.25000025125141 1.25000024976376 1.25000025001333 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689397 1.24996163705036 1.24956080684374 1.24592396541785 1.22089822225606 1.08410559514668 0.80688173902133 0.59415185611001 0.4792682561123 0.31244614438582 0.25612773168047 0.25084453346312 0.25073355205009 0.2611421950968 0.36709607874767 0.73180263309101 1.12602005149118 1.50810773678471 2.17916219721121 2.35688056282079 2.26961221060938 1.95616102830422 1.68938697019561 1.54575582132277 1.33469387024147 1.2603205924002 1.25111708774072 1.25009823989394 1.25000752504637 1.25000071874376 1.25000027680336 1.25000025125077 1.25000024976371 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704995 1.24956080683558 1.24592396526981 1.22089821948155 1.08410557010082 0.80688179040657 0.59415152238893 0.4792707981183 0.31244153990989 0.25611680519282 0.25089238524692 0.25079970399871 0.26222745883976 0.37837229707366 0.73567111049254 1.10529352860691 1.46391187236619 2.16975329902974 2.35515490903136 2.27183673558191 1.95699469068369 1.68962336351348 1.54560464300319 1.33462732832857 1.26031517324429 1.25111667170621 1.25009821265214 1.25000752375569 1.25000071874245 1.2500002768078 1.25000025125102 1.25000024976366 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683487 1.24592396525636 1.22089821924188 1.08410556758697 0.806881797274 0.59415146352566 0.47927108978961 0.31244091450737 0.25611586932915 0.25089958571369 0.25080884016986 0.26239719486976 0.38025305743535 0.73475677106473 1.08452970894232 1.45813915142467 2.16849958645291 2.35496999231165 2.27209023537466 1.95707912457489 1.68963860396564 1.54558747256569 1.33462059691913 1.26031466920266 1.2511166353901 1.25009821051025 1.25000752378315 1.25000071874374 1.25000027680748 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683496 1.24592396525745 1.22089821925159 1.08410556758795 0.80688179749901 0.5941514593878 0.47927111483397 0.31244088002367 0.25611581319156 0.25090004804712 0.25080966715201 0.26241235661417 0.38041984691865 0.73441065243879 1.08088322920947 1.45752457011839 2.16836750742587 2.35495362167862 2.27211364453789 1.95708610857827 1.68963914715607 1.54558584031272 1.33462004623658 1.26031463079388 1.2511166327657 1.2500982105851 1.25000752377365 1.25000071873992 1.25000027680715 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683494 1.24592396525713 1.22089821924848 1.08410556761514 0.80688179736025 0.59415145924273 0.47927111660625 0.31244087836049 0.25611581013949 0.25090007435307 0.25080972790069 0.26241346332821 0.38043200375621 0.73435630552198 1.08047243087626 1.45747205294573 2.16835633428957 2.35495241228708 2.27211545383615 1.95708659435412 1.68963913442083 1.54558571442991 1.33462000828895 1.26031462823468 1.2511166328615 1.25009821058475 1.25000752376402 1.25000071873935 1.25000027680713 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924666 1.08410556760071 0.80688179737031 0.59415145934367 0.47927111654091 0.31244087838519 0.25611581009498 0.25090007546754 0.25080973142821 0.2624135309034 0.38043272667346 0.73435048353358 1.0804347551429 1.45746829502039 2.16835554245043 2.35495233540072 2.2721155734934 1.95708662382261 1.68963913023032 1.5455857058837 1.33462000585052 1.26031462835906 1.25111663287978 1.25009821056939 1.25000752376399 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.22089821924645 1.08410556759749 0.80688179737904 0.5941514593243 0.47927111650726 0.31244087841994 0.25611581012849 0.25090007537724 0.25080973145741 0.26241353426035 0.38043276297954 0.73434998585076 1.08043190339454 1.4574680635083 2.16835549388864 2.35495233047904 2.27211558097385 1.95708662586375 1.68963912997129 1.54558570545882 1.33462000602773 1.26031462838404 1.25111663286008 1.25009821056942 1.25000752376423 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.2208982192465 1.08410556759792 0.80688179737783 0.59415145931692 0.47927111652623 0.31244087841033 0.25611581011315 0.25090007536995 0.25080973141084 0.2624135342789 0.38043276428807 0.73434995045169 1.08043171942795 1.45746805069441 2.16835549086488 2.35495233061409 2.27211558119852 1.95708662553035 1.68963913009993 1.54558570568034 1.33462000607052 1.26031462836298 1.25111663285965 1.25009821056985 1.2500075237642 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759802 0.80688179737761 0.59415145931806 0.47927111652762 0.31244087840859 0.25611581011151 0.25090007538333 0.25080973142958 0.26241353424956 0.38043276424283 0.73434994838131 1.080431708874 1.45746804997175 2.16835549109964 2.35495233070397 2.27211558101723 1.95708662550136 1.68963913008374 1.54558570565296 1.33462000604436 1.26031462836231 1.25111663286029 1.25009821056977 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759799 0.8068817973777 0.59415145931829 0.47927111652669 0.31244087840896 0.25611581011228 0.25090007538306 0.25080973143215 0.26241353426876 0.38043276425231 0.73434994848992 1.080431708342 1.45746805019298 2.16835549115101 2.35495233066908 2.27211558105144 1.95708662553437 1.6896391300739 1.54558570563732 1.3346200060426 1.26031462836304 1.2511166328602 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.2208982192465 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652674 0.31244087840901 0.25611581011226 0.25090007538255 0.25080973143116 0.26241353426955 0.38043276426284 0.73434994853124 1.08043170855919 1.45746805017681 2.16835549112024 2.35495233066513 2.27211558106226 1.95708662553478 1.68963913007495 1.54558570563948 1.33462000604376 1.26031462836296 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125096 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011222 0.25090007538263 0.25080973143116 0.26241353426856 0.38043276426027 0.73434994850782 1.08043170853285 1.45746805016106 2.16835549111845 2.35495233066677 2.27211558105992 1.95708662553315 1.6896391300753 1.54558570564001 1.33462000604372 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538265 0.25080973143121 0.26241353426864 0.38043276426007 0.73434994850585 1.08043170851824 1.45746805016255 2.1683554911198 2.35495233066677 2.27211558105969 1.95708662553331 1.68963913007521 1.54558570563984 1.33462000604366 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966775 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426027 0.73434994850701 1.08043170852043 1.45746805016309 2.16835549111974 2.35495233066669 2.27211558105985 1.95708662553338 1.6896391300752 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.734349948507 1.08043170852086 1.45746805016295 2.16835549111968 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426867 0.38043276426024 0.73434994850693 1.08043170852069 1.45746805016294 2.16835549111968 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.2208982192465 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.0804317085207 1.45746805016294 2.16835549111968 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111967 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426024 0.73434994850693 1.0804317085207 1.4574680501631 2.16835549111976 2.35495233066668 2.27211558105984 1.95708662553337 1.6896391300752 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.2208982192465 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.734349948507 1.08043170852088 1.45746805016249 2.16835549111985 2.35495233066683 2.27211558105971 1.95708662553335 1.68963913007524 1.54558570563983 1.33462000604366 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704992 1.24956080683492 1.24592396525697 1.2208982192465 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426867 0.38043276426028 0.73434994850702 1.0804317085203 1.45746805016102 2.16835549111798 2.35495233066679 2.2721155810599 1.95708662553335 1.68963913007535 1.54558570564002 1.3346200060437 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.2508097314312 0.26241353426869 0.38043276426009 0.73434994850568 1.08043170851823 1.45746805017864 2.16835549112114 2.35495233066424 2.27211558106197 1.95708662553369 1.68963913007434 1.54558570563958 1.3346200060438 1.26031462836296 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652677 0.31244087840898 0.25611581011223 0.25090007538264 0.25080973143123 0.26241353426873 0.38043276425998 0.73434994850861 1.08043170853517 1.45746805019196 2.16835549115795 2.35495233067208 2.27211558105322 1.95708662553354 1.6896391300745 1.54558570563706 1.33462000604287 1.26031462836305 1.25111663286019 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652679 0.31244087840899 0.25611581011223 0.25090007538262 0.25080973143127 0.26241353426843 0.38043276426381 0.73434994853471 1.08043170855719 1.45746804995556 2.16835549107605 2.35495233071427 2.2721155810202 1.95708662552599 1.68963913009597 1.54558570565103 1.33462000604283 1.26031462836247 1.2511166328603 1.25009821056977 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.2208982192465 1.08410556759798 0.80688179737769 0.59415145931819 0.47927111652681 0.31244087840908 0.25611581011227 0.25090007538276 0.25080973143082 0.26241353426884 0.38043276425843 0.73434994847231 1.08043170832356 1.45746805081435 2.16835549090851 2.35495233056587 2.27211558117293 1.95708662552623 1.68963913008517 1.5455857056854 1.334620006065 1.26031462836211 1.25111663285976 1.25009821056986 1.2500075237642 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.22089821924651 1.084105567598 0.80688179737767 0.59415145931825 0.47927111652662 0.31244087840869 0.25611581011208 0.25090007538318 0.25080973143135 0.26241353427293 0.38043276422173 0.73434994841986 1.08043170899007 1.45746806549051 2.16835549496869 2.35495233061293 2.27211558109007 1.95708662566124 1.68963912986423 1.54558570548147 1.33462000605711 1.26031462838015 1.25111663285939 1.25009821056946 1.25000752376424 1.25000071873948 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.22089821924652 1.08410556759805 0.80688179737761 0.5941514593179 0.47927111652695 0.31244087840848 0.25611581011154 0.25090007537752 0.25080973143594 0.26241353426175 0.3804327643569 0.73434995123822 1.08043172118334 1.45746832551825 2.16835555977729 2.3549523379012 2.27211557530395 1.95708662514858 1.68963913107792 1.54558570572989 1.33462000581927 1.26031462837631 1.25111663287704 1.25009821056896 1.25000752376398 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924646 1.08410556759756 0.80688179737831 0.59415145931852 0.4792711165269 0.31244087842055 0.25611581012023 0.25090007537241 0.25080973142728 0.26241353426669 0.38043276468976 0.73434999921205 1.08043193012482 1.45747245995579 2.16835658274987 2.35495245185752 2.27211548752739 1.95708661301177 1.6896391434892 1.54558571291607 1.33462000726625 1.26031462819337 1.2511166328732 1.25009821058343 1.25000752376378 1.25000071873934 1.25000027680713 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683492 1.24592396525695 1.22089821924633 1.08410556759771 0.80688179737824 0.59415145933219 0.47927111651882 0.31244087840526 0.2561158101104 0.2509000754555 0.25080973146634 0.26241353367781 0.38043275606449 0.73435067343356 1.08043510606384 1.45752907394649 2.1683705373936 2.35495416308514 2.27211416127343 1.95708635403651 1.68963927865814 1.54558582126409 1.33462003242339 1.26031462979922 1.25111663272217 1.25009821058994 1.25000752377355 1.25000071873986 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525705 1.22089821924782 1.08410556760819 0.80688179736539 0.59415145929143 0.47927111658769 0.31244087836575 0.25611581002586 0.2509000750789 0.25080973132617 0.26241350993599 0.38043240170661 0.73435868101014 1.08047622954944 1.4581787744914 2.1685300714832 2.35497615027326 2.27209672452053 1.95708187049529 1.68964026451837 1.54558729283373 1.33462043351033 1.26031465663464 1.25111663453046 1.25009821047468 1.25000752378457 1.25000071874403 1.25000027680749 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683495 1.24592396525735 1.22089821925059 1.08410556760199 0.80688179740343 0.59415145921863 0.4792711163484 0.31244087981158 0.25611581118424 0.2509000618634 0.25080971687545 0.26241296785098 0.38042467185415 0.73443800103679 1.08091555275111 1.46417033782862 2.1699919985533 2.35521091860033 2.27190120319509 1.95702001598881 1.68963948495305 1.54560360570551 1.33462579231949 1.26031504377633 1.25111666222006 1.25009821208581 1.25000752372473 1.25000071874239 1.25000027680788 1.25000025125102 1.25000024976366 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683477 1.24592396525446 1.22089821921875 1.08410556746144 0.80688179768203 0.59415146082731 0.47927110963694 0.31244091435702 0.25611585194215 0.25089976561372 0.25080935420615 0.26240307396464 0.38028783096425 0.7349124815943 1.08476371717182 1.50942402388759 2.18060409951054 2.35728523419551 2.27008615952001 1.95635451152281 1.6895250758447 1.54574851912279 1.33468294899948 1.26031959174731 1.25111700894544 1.25009823487439 1.25000752477638 1.25000071872766 1.25000027680275 1.25000025125076 1.25000024976371 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.2499616370499 1.24956080683456 1.24592396525519 1.22089821932065 1.08410556886677 0.80688179963215 0.59415148993559 0.47927098107482 0.31244155272276 0.25611674976915 0.25089444916566 0.25080383469713 0.26227365554431 0.3785662488825 0.73638915677395 1.10616739491852 1.62974875991391 2.21618285112401 2.366992842546 2.25609104194899 1.95095326812402 1.68772815520182 1.54653964631414 1.33517098019701 1.26036256379197 1.25112052056991 1.25009847439115 1.25000753935875 1.2500007195295 1.25000027683013 1.25000025125123 1.25000024976377 1.25000025001334 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689396 1.24996163705009 1.24956080683899 1.24592396534203 1.22089822092577 1.08410558187201 0.80688179146288 0.5941517170881 0.47926947605692 0.31244743098031 0.25612715973264 0.25085430491742 0.2507549459406 0.26133030279298 0.36750354935289 0.73271890991897 1.12728587981424 2.26791708185569 2.28571793083681 2.42764063846559 2.19389657080241 1.91442568563395 1.67617302945929 1.54686776013768 1.33704928577119 1.26055229798282 1.25113811607497 1.25009980182324 1.25000762376917 1.2500007245216 1.2500002771399 1.25000025126538 1.25000024976334 1.25000025001299 1.25000025002418 1.25000024999838 1.25000024999908 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689399 1.24996163705095 1.24956080685994 1.24592396581043 1.22089823251606 1.08410568273989 0.80688149091124 0.59415162843628 0.47925893167167 0.31249345709582 0.25623140603882 0.25050617926101 0.25054922314366 0.25474790059491 0.27777253679665 0.51729560042779 0.91448673723827 2.21612188244279 2.35948682340333 2.22058296127633 1.94925140591769 1.73469034636912 1.58987780971214 1.53391874892138 1.34204628649221 1.26115862045317 1.25119483239181 1.25010442838112 1.25000793984356 1.25000074306701 1.25000027818502 1.25000025132337 1.25000024976439 1.25000025001053 1.25000025002467 1.2500002499985 1.25000024999905 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.2499973868938 1.2499616370471 1.2495608067925 1.24592396479323 1.22089821840462 1.08410556834778 0.80688129227664 0.59415215611865 0.47924875641227 0.3124354705258 0.25626052185933 0.25061249688352 0.25007637753012 0.25195047948161 0.25966050542929 0.3744678625474 0.81058221737992 2.17940797009678 2.19709293639394 1.89153756237321 1.70720396609073 1.64110364598582 1.52811423751231 1.48079718848581 1.32349333286744 1.2590168116281 1.25098427340035 1.2500874478413 1.25000677654527 1.25000067327283 1.2500002744304 1.25000025115295 1.25000024976748 1.25000025001539 1.25000025002291 1.25000024999834 1.25000024999914 1.2500002500002 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.2500000661646 1.249997386893 1.24996163703176 1.24956080653969 1.24592396126457 1.22089817537839 1.08410524703674 0.8068818360251 0.59414973185394 0.47924899579988 0.31237501679347 0.25630465228026 0.25057211353169 0.25023798469088 0.25012969234205 0.25052514113226 0.25912180048615 0.65986714374634 2.33086517759199 1.6561560508728 1.54934759161017 1.49604165985539 1.44485122674365 1.37065471804297 1.33834043992907 1.27326821550054 1.25290625054857 1.2503171973125 1.25002849123902 1.25000238330855 1.25000038984718 1.25000025790649 1.2500002501716 1.25000024986222 1.25000025003954 1.25000025000898 1.25000024999762 1.25000024999986 1.25000025000015 1.25000024999999 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616463 1.24999738689359 1.24996163704294 1.24956080671908 1.24592396366688 1.22089820263912 1.08410543886537 0.80688150001411 0.5941511182129 0.47925027975854 0.312392036881 0.25627574352595 0.25058825830015 0.25049239814947 0.25096654385822 0.25388663646986 0.25089591587278 0.7040172157362 2.5000005 1.26053275251026 1.27541084638636 1.30888767624713 1.33383135647922 1.33510916859123 1.28247853039544 1.25747233541763 1.25088895202862 1.25009165220174 1.2500081606332 1.25000083909762 1.25000028833653 1.25000025199133 1.25000024973893 1.25000024998727 1.25000025003499 1.25000024999965 1.25000024999832 1.25000025000023 1.25000025000008 1.25000024999998 1.25000025000001 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616466 1.24999738689419 1.24996163705518 1.24956080693702 1.24592396698969 1.2208982486198 1.08410580808548 0.80688092803326 0.59415327331845 0.47925013697964 0.31248014319911 0.25626728215957 0.25050253131758 0.25047687778508 0.25497411867236 0.30446948960777 0.38095126350649 0.2500000625 +D/cons.4.00.000050.dat 2.5000005 1.28765665157671 1.28233774583049 1.3730431173692 1.43481445157317 1.35661926521261 1.30052380036225 1.25990953083113 1.25129375719234 1.25013878904765 1.25001247132286 1.25000116492886 1.25000030937296 1.25000025319221 1.25000024982678 1.25000024994805 1.25000025003876 1.2500002500021 1.25000024999797 1.25000025000015 1.2500002500001 1.25000024999998 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616466 1.24999738689441 1.24996163705958 1.24956080701305 1.24592396807319 1.22089826115419 1.08410590450285 0.80688085036114 0.59415378170774 0.47924915719521 0.31247866534241 0.25626209003631 0.25050861264119 0.25047883151923 0.2545214981436 0.30455668455819 0.3784040959543 0.2500000625 2.33081897571178 1.65527415948872 1.53803410542435 1.48153655394781 1.45011105656182 1.39737987380852 1.34362189930212 1.27412527013766 1.25305687749988 1.25033804094179 1.25003060450773 1.25000255384404 1.25000040081421 1.25000025849137 1.25000025020738 1.25000024985381 1.2500002500396 1.2500002500097 1.25000024999758 1.25000024999983 1.25000025000016 1.25000024999999 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616467 1.24999738689448 1.2499616370605 1.24956080701457 1.24592396779781 1.2208982507209 1.0841058098054 0.80688107410509 0.59415311126975 0.47924870687498 0.31240925036942 0.25624716941571 0.25059222302881 0.25043805660611 0.2509760912935 0.25387231470168 0.25088683490529 0.70393129585016 2.17910745481097 2.19605345582199 1.88280392522102 1.67349190863522 1.60050626427292 1.50824073129327 1.47376040991629 1.32479188942019 1.25911903948391 1.25098520617626 1.25008702343883 1.25000671561657 1.25000066808089 1.25000027410664 1.25000025113203 1.2500002497677 1.25000025001627 1.25000025002272 1.25000024999829 1.25000024999916 1.2500002500002 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616469 1.24999738689496 1.2499616370703 1.24956080718946 1.24592397042853 1.22089828433326 1.08410605645389 0.80688034010881 0.5941557829314 0.47924443262362 0.31243198434529 0.25620153220573 0.25059124012382 0.24992377766829 0.25000918055091 0.25049001964705 0.25904448628118 0.65969589214596 2.21465764257259 2.3578380443945 2.21745177288698 1.93244205289062 1.70097176095038 1.56836554309338 1.52393342610464 1.34076453277863 1.26106317314241 1.25118600149179 1.25010380287696 1.25000790026364 1.25000074082765 1.25000027806525 1.25000025131804 1.25000024976439 1.25000025001068 1.25000025002462 1.25000024999849 1.25000024999905 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616466 1.24999738689432 1.24996163705768 1.24956080697786 1.24592396751982 1.220898252791 1.08410584018065 0.80688092826328 0.59415396001275 0.47924404741606 0.31244877262358 0.25624872759161 0.25058589527898 0.24995672136299 0.25178499671554 0.25937105602028 0.37409017634176 0.80988488663987 2.26583803530046 2.28352910774286 2.423959882721 2.19062050163885 1.90533204196798 1.66970502991196 1.54504651214616 1.33688295329616 1.26054122007877 1.25113727122432 1.25009974462094 1.25000761997243 1.2500007242834 1.25000027712842 1.25000025126504 1.25000024976334 1.25000025001299 1.25000025002418 1.25000024999838 1.25000024999908 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.2499973868941 1.24996163705301 1.2495608068941 1.24592396629385 1.22089823881935 1.08410573442657 0.80688135739176 0.5941520613169 0.47925472186346 0.31248840509227 0.2562450338771 0.25047745339528 0.25051310789835 0.25446583398383 0.27728892538585 0.51668532577007 0.91369629277167 1.62875423104341 2.21433416584632 2.36524902440639 2.25376797026712 1.94955202503688 1.68673906018752 1.54630613608229 1.33519856730151 1.26036607567906 1.25112085985883 1.2500984983352 1.25000754068539 1.25000071960541 1.25000027683472 1.25000025125141 1.25000024976376 1.25000025001333 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689397 1.24996163705036 1.24956080684374 1.24592396541785 1.22089822225606 1.08410559514668 0.80688173902133 0.59415185611001 0.4792682561123 0.31244614438582 0.25612773168047 0.25084453346312 0.25073355205009 0.2611421950968 0.36709607874767 0.73180263309101 1.12602005149118 1.50810773678471 2.17916219721121 2.35688056282079 2.26961221060938 1.95616102830422 1.68938697019561 1.54575582132277 1.33469387024147 1.2603205924002 1.25111708774072 1.25009823989394 1.25000752504637 1.25000071874376 1.25000027680336 1.25000025125077 1.25000024976371 1.25000025001334 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704995 1.24956080683558 1.24592396526981 1.22089821948155 1.08410557010082 0.80688179040657 0.59415152238893 0.4792707981183 0.31244153990989 0.25611680519282 0.25089238524692 0.25079970399871 0.26222745883976 0.37837229707366 0.73567111049253 1.10529352860691 1.46391187236619 2.16975329902974 2.35515490903136 2.27183673558191 1.95699469068369 1.68962336351348 1.54560464300319 1.33462732832857 1.26031517324429 1.25111667170621 1.25009821265214 1.25000752375569 1.25000071874245 1.2500002768078 1.25000025125102 1.25000024976366 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704992 1.24956080683487 1.24592396525636 1.22089821924188 1.08410556758697 0.806881797274 0.59415146352566 0.47927108978961 0.31244091450737 0.25611586932915 0.25089958571369 0.25080884016986 0.26239719486976 0.38025305743535 0.73475677106473 1.08452970894232 1.45813915142467 2.16849958645291 2.35496999231165 2.27209023537466 1.95707912457489 1.68963860396564 1.54558747256569 1.33462059691913 1.26031466920266 1.2511166353901 1.25009821051025 1.25000752378315 1.25000071874374 1.25000027680748 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683496 1.24592396525745 1.22089821925159 1.08410556758795 0.80688179749901 0.5941514593878 0.47927111483397 0.31244088002367 0.25611581319156 0.25090004804712 0.25080966715201 0.26241235661417 0.38041984691865 0.73441065243879 1.08088322920947 1.45752457011839 2.16836750742587 2.35495362167862 2.2721136445379 1.95708610857827 1.68963914715607 1.54558584031272 1.33462004623658 1.26031463079388 1.2511166327657 1.2500982105851 1.25000752377365 1.25000071873992 1.25000027680715 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683494 1.24592396525713 1.22089821924849 1.08410556761514 0.80688179736025 0.59415145924273 0.47927111660625 0.31244087836049 0.25611581013949 0.25090007435307 0.25080972790069 0.26241346332821 0.38043200375621 0.73435630552198 1.08047243087626 1.45747205294573 2.16835633428957 2.35495241228708 2.27211545383615 1.95708659435412 1.68963913442083 1.54558571442991 1.33462000828895 1.26031462823468 1.2511166328615 1.25009821058475 1.25000752376402 1.25000071873935 1.25000027680713 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.22089821924666 1.08410556760071 0.80688179737031 0.59415145934367 0.47927111654091 0.31244087838519 0.25611581009498 0.25090007546754 0.25080973142821 0.2624135309034 0.38043272667346 0.73435048353358 1.0804347551429 1.45746829502039 2.16835554245043 2.35495233540072 2.2721155734934 1.95708662382261 1.68963913023032 1.5455857058837 1.33462000585052 1.26031462835906 1.25111663287978 1.25009821056939 1.25000752376399 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.22089821924645 1.08410556759749 0.80688179737904 0.5941514593243 0.47927111650726 0.31244087841994 0.25611581012849 0.25090007537724 0.25080973145741 0.26241353426035 0.38043276297954 0.73434998585076 1.08043190339454 1.4574680635083 2.16835549388864 2.35495233047904 2.27211558097385 1.95708662586375 1.68963912997129 1.54558570545882 1.33462000602773 1.26031462838404 1.25111663286008 1.25009821056942 1.25000752376423 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.2208982192465 1.08410556759792 0.80688179737783 0.59415145931692 0.47927111652623 0.31244087841033 0.25611581011315 0.25090007536995 0.25080973141084 0.2624135342789 0.38043276428807 0.73434995045169 1.08043171942795 1.45746805069441 2.16835549086488 2.35495233061409 2.27211558119852 1.95708662553035 1.68963913009993 1.54558570568034 1.33462000607052 1.26031462836298 1.25111663285965 1.25009821056985 1.2500075237642 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759802 0.80688179737761 0.59415145931806 0.47927111652762 0.31244087840859 0.25611581011151 0.25090007538333 0.25080973142958 0.26241353424956 0.38043276424283 0.73434994838131 1.080431708874 1.45746804997175 2.16835549109964 2.35495233070397 2.27211558101723 1.95708662550136 1.68963913008374 1.54558570565296 1.33462000604436 1.26031462836231 1.25111663286029 1.25009821056977 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759799 0.8068817973777 0.59415145931829 0.47927111652669 0.31244087840896 0.25611581011228 0.25090007538306 0.25080973143215 0.26241353426876 0.38043276425231 0.73434994848992 1.080431708342 1.45746805019298 2.16835549115101 2.35495233066908 2.27211558105144 1.95708662553437 1.68963913007391 1.54558570563732 1.3346200060426 1.26031462836304 1.2511166328602 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.2208982192465 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652674 0.31244087840901 0.25611581011226 0.25090007538255 0.25080973143116 0.26241353426955 0.38043276426284 0.73434994853124 1.08043170855919 1.45746805017681 2.16835549112024 2.35495233066513 2.27211558106226 1.95708662553478 1.68963913007496 1.54558570563948 1.33462000604376 1.26031462836296 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011222 0.25090007538263 0.25080973143116 0.26241353426856 0.38043276426027 0.73434994850782 1.08043170853285 1.45746805016106 2.16835549111845 2.35495233066677 2.27211558105992 1.95708662553315 1.6896391300753 1.54558570564001 1.33462000604372 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538265 0.25080973143121 0.26241353426864 0.38043276426007 0.73434994850585 1.08043170851824 1.45746805016255 2.1683554911198 2.35495233066677 2.2721155810597 1.95708662553331 1.68963913007521 1.54558570563984 1.33462000604366 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.2208982192465 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426027 0.73434994850701 1.08043170852043 1.45746805016309 2.16835549111974 2.35495233066669 2.27211558105985 1.95708662553338 1.6896391300752 1.54558570563982 1.33462000604367 1.26031462836295 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.734349948507 1.08043170852086 1.45746805016295 2.16835549111968 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.2208982192465 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426867 0.38043276426025 0.73434994850693 1.08043170852069 1.45746805016294 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016295 2.16835549111969 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852069 1.45746805016294 2.16835549111968 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.73434994850694 1.08043170852068 1.45746805016295 2.16835549111967 2.3549523306667 2.27211558105984 1.95708662553337 1.68963913007521 1.54558570563983 1.33462000604367 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.2208982192465 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426024 0.73434994850693 1.0804317085207 1.45746805016311 2.16835549111976 2.35495233066668 2.27211558105984 1.95708662553337 1.6896391300752 1.54558570563983 1.33462000604367 1.26031462836295 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426868 0.38043276426025 0.734349948507 1.08043170852088 1.45746805016249 2.16835549111985 2.35495233066683 2.27211558105971 1.95708662553335 1.68963913007524 1.54558570563983 1.33462000604366 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.25080973143121 0.26241353426867 0.38043276426028 0.73434994850702 1.0804317085203 1.45746805016102 2.16835549111798 2.35495233066679 2.2721155810599 1.95708662553335 1.68963913007535 1.54558570564002 1.3346200060437 1.26031462836294 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759798 0.80688179737769 0.5941514593182 0.47927111652678 0.31244087840899 0.25611581011223 0.25090007538264 0.2508097314312 0.26241353426869 0.38043276426009 0.73434994850568 1.08043170851823 1.45746805017864 2.16835549112114 2.35495233066424 2.27211558106197 1.95708662553369 1.68963913007434 1.54558570563958 1.3346200060438 1.26031462836296 1.25111663286018 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525696 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652677 0.31244087840898 0.25611581011223 0.25090007538264 0.25080973143123 0.26241353426873 0.38043276425998 0.73434994850861 1.08043170853517 1.45746805019196 2.16835549115795 2.35495233067208 2.27211558105322 1.95708662553354 1.6896391300745 1.54558570563706 1.33462000604287 1.26031462836305 1.25111663286019 1.25009821056976 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525697 1.22089821924651 1.08410556759799 0.80688179737769 0.5941514593182 0.47927111652679 0.31244087840899 0.25611581011223 0.25090007538262 0.25080973143127 0.26241353426843 0.38043276426381 0.73434994853471 1.08043170855719 1.45746804995556 2.16835549107605 2.35495233071427 2.2721155810202 1.95708662552599 1.68963913009597 1.54558570565103 1.33462000604283 1.26031462836247 1.25111663286029 1.25009821056977 1.25000752376419 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.2208982192465 1.08410556759798 0.80688179737769 0.59415145931819 0.47927111652681 0.31244087840908 0.25611581011227 0.25090007538276 0.25080973143082 0.26241353426884 0.38043276425843 0.73434994847231 1.08043170832356 1.45746805081435 2.16835549090851 2.35495233056587 2.27211558117293 1.95708662552623 1.68963913008517 1.5455857056854 1.334620006065 1.26031462836212 1.25111663285976 1.25009821056986 1.2500075237642 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683493 1.24592396525697 1.22089821924651 1.084105567598 0.80688179737767 0.59415145931825 0.47927111652662 0.31244087840869 0.25611581011208 0.25090007538318 0.25080973143135 0.26241353427293 0.38043276422173 0.73434994841986 1.08043170899007 1.45746806549051 2.16835549496869 2.35495233061293 2.27211558109008 1.95708662566124 1.68963912986423 1.54558570548147 1.33462000605711 1.26031462838015 1.25111663285939 1.25009821056946 1.25000752376424 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924652 1.08410556759805 0.80688179737761 0.5941514593179 0.47927111652695 0.31244087840848 0.25611581011154 0.25090007537752 0.25080973143594 0.26241353426175 0.3804327643569 0.73434995123822 1.08043172118335 1.45746832551825 2.16835555977729 2.3549523379012 2.27211557530395 1.95708662514858 1.68963913107792 1.54558570572989 1.33462000581927 1.26031462837631 1.25111663287704 1.25009821056896 1.25000752376398 1.25000071873947 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525696 1.22089821924646 1.08410556759756 0.80688179737831 0.59415145931852 0.4792711165269 0.31244087842055 0.25611581012023 0.25090007537241 0.25080973142728 0.26241353426669 0.38043276468976 0.73434999921205 1.08043193012482 1.45747245995579 2.16835658274987 2.35495245185752 2.27211548752739 1.95708661301177 1.6896391434892 1.54558571291607 1.33462000726625 1.26031462819337 1.2511166328732 1.25009821058343 1.25000752376378 1.25000071873934 1.25000027680713 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683492 1.24592396525695 1.22089821924633 1.08410556759771 0.80688179737824 0.59415145933219 0.47927111651883 0.31244087840526 0.2561158101104 0.2509000754555 0.25080973146634 0.26241353367781 0.38043275606449 0.73435067343357 1.08043510606384 1.45752907394649 2.1683705373936 2.35495416308514 2.27211416127343 1.95708635403651 1.68963927865814 1.54558582126409 1.33462003242339 1.26031462979922 1.25111663272217 1.25009821058994 1.25000752377355 1.25000071873986 1.25000027680714 1.25000025125095 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683493 1.24592396525705 1.22089821924782 1.08410556760819 0.80688179736539 0.59415145929143 0.47927111658769 0.31244087836575 0.25611581002586 0.2509000750789 0.25080973132617 0.26241350993599 0.38043240170661 0.73435868101014 1.08047622954944 1.4581787744914 2.1685300714832 2.35497615027326 2.27209672452053 1.95708187049529 1.68964026451837 1.54558729283373 1.33462043351033 1.26031465663464 1.25111663453046 1.25009821047468 1.25000752378457 1.25000071874403 1.25000027680749 1.25000025125097 1.25000024976367 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.24996163704993 1.24956080683495 1.24592396525735 1.22089821925059 1.08410556760199 0.80688179740343 0.59415145921863 0.4792711163484 0.31244087981158 0.25611581118424 0.2509000618634 0.25080971687545 0.26241296785098 0.38042467185415 0.73443800103679 1.08091555275111 1.46417033782862 2.1699919985533 2.35521091860033 2.27190120319509 1.95702001598881 1.68963948495305 1.54560360570551 1.33462579231949 1.26031504377633 1.25111666222006 1.25009821208581 1.25000752372473 1.25000071874239 1.25000027680788 1.25000025125102 1.25000024976366 1.25000025001334 1.25000025002403 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689395 1.24996163704992 1.24956080683477 1.24592396525446 1.22089821921875 1.08410556746144 0.80688179768203 0.59415146082731 0.47927110963694 0.31244091435702 0.25611585194215 0.25089976561372 0.25080935420615 0.26240307396464 0.38028783096425 0.7349124815943 1.08476371717182 1.50942402388759 2.18060409951054 2.35728523419551 2.27008615952001 1.95635451152281 1.6895250758447 1.54574851912279 1.33468294899948 1.26031959174731 1.25111700894544 1.25009823487439 1.25000752477638 1.25000071872766 1.25000027680275 1.25000025125076 1.25000024976371 1.25000025001334 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.24999738689395 1.2499616370499 1.24956080683456 1.24592396525519 1.22089821932065 1.08410556886677 0.80688179963215 0.59415148993559 0.47927098107482 0.31244155272276 0.25611674976915 0.25089444916566 0.25080383469713 0.26227365554431 0.3785662488825 0.73638915677395 1.10616739491852 1.62974875991391 2.21618285112401 2.366992842546 2.25609104194899 1.95095326812402 1.68772815520182 1.54653964631414 1.33517098019701 1.26036256379198 1.25112052056991 1.25009847439115 1.25000753935875 1.2500007195295 1.25000027683013 1.25000025125123 1.25000024976377 1.25000025001334 1.25000025002402 1.25000024999837 1.25000024999909 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689396 1.24996163705009 1.24956080683899 1.24592396534203 1.22089822092577 1.08410558187201 0.80688179146288 0.5941517170881 0.47926947605692 0.31244743098031 0.25612715973264 0.25085430491742 0.2507549459406 0.26133030279298 0.36750354935289 0.73271890991897 1.12728587981424 2.26791708185569 2.28571793083681 2.42764063846559 2.19389657080241 1.91442568563395 1.67617302945929 1.54686776013768 1.33704928577119 1.26055229798282 1.25113811607497 1.25009980182324 1.25000762376917 1.2500007245216 1.2500002771399 1.25000025126538 1.25000024976334 1.25000025001299 1.25000025002418 1.25000024999838 1.25000024999908 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616465 1.24999738689399 1.24996163705095 1.24956080685994 1.24592396581043 1.22089823251606 1.08410568273989 0.80688149091124 0.59415162843628 0.47925893167167 0.31249345709582 0.25623140603882 0.25050617926101 0.25054922314366 0.25474790059491 0.27777253679665 0.51729560042779 0.91448673723827 2.21612188244279 2.35948682340333 2.22058296127633 1.94925140591768 1.73469034636912 1.58987780971214 1.53391874892138 1.34204628649221 1.26115862045317 1.25119483239181 1.25010442838112 1.25000793984356 1.25000074306701 1.25000027818502 1.25000025132337 1.25000024976439 1.25000025001053 1.25000025002467 1.2500002499985 1.25000024999905 1.25000025000021 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616464 1.2499973868938 1.2499616370471 1.2495608067925 1.24592396479323 1.22089821840462 1.08410556834778 0.80688129227664 0.59415215611865 0.47924875641227 0.3124354705258 0.25626052185933 0.25061249688352 0.25007637753011 0.25195047948161 0.25966050542929 0.3744678625474 0.81058221737992 2.17940797009678 2.19709293639394 1.89153756237321 1.70720396609073 1.64110364598582 1.52811423751231 1.48079718848581 1.32349333286743 1.2590168116281 1.25098427340035 1.2500874478413 1.25000677654527 1.25000067327283 1.2500002744304 1.25000025115295 1.25000024976748 1.25000025001539 1.25000025002291 1.25000024999834 1.25000024999914 1.2500002500002 1.25000025000003 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.2500000661646 1.249997386893 1.24996163703176 1.24956080653969 1.24592396126457 1.22089817537839 1.08410524703674 0.8068818360251 0.59414973185394 0.47924899579988 0.31237501679347 0.25630465228026 0.25057211353169 0.25023798469088 0.25012969234205 0.25052514113226 0.25912180048615 0.65986714374634 2.33086517759199 1.6561560508728 1.54934759161017 1.49604165985539 1.44485122674365 1.37065471804297 1.33834043992907 1.27326821550054 1.25290625054857 1.2503171973125 1.25002849123902 1.25000238330855 1.25000038984718 1.25000025790649 1.2500002501716 1.25000024986222 1.25000025003954 1.25000025000898 1.25000024999762 1.25000024999986 1.25000025000015 1.25000024999999 1.25000025 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616463 1.24999738689359 1.24996163704294 1.24956080671908 1.24592396366688 1.22089820263912 1.08410543886537 0.80688150001411 0.5941511182129 0.47925027975854 0.312392036881 0.25627574352595 0.25058825830015 0.25049239814947 0.25096654385822 0.25388663646986 0.25089591587278 0.7040172157362 2.5000005 1.26053275251026 1.27541084638636 1.30888767624713 1.33383135647922 1.33510916859123 1.28247853039544 1.25747233541763 1.25088895202862 1.25009165220174 1.2500081606332 1.25000083909762 1.25000028833653 1.25000025199133 1.25000024973893 1.25000024998727 1.25000025003499 1.25000024999965 1.25000024999832 1.25000025000023 1.25000025000008 1.25000024999998 1.25000025000001 1.25000025 1.25000024999982 1.25000025000027 1.25000025000249 1.25000024998796 1.25000024996134 1.25000025017023 1.25000024966774 1.25000023959633 1.25000006616466 1.24999738689419 1.24996163705518 1.24956080693702 1.24592396698969 1.2208982486198 1.08410580808548 0.80688092803326 0.59415327331845 0.47925013697964 0.31248014319911 0.25626728215957 0.25050253131758 0.25047687778508 0.25497411867236 0.30446948960777 0.38095126350649 0.2500000625 D/cons.5.00.000000.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 D/cons.5.00.000050.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 \ No newline at end of file diff --git a/tests/CE7B0BC7/golden-metadata.txt b/tests/CE7B0BC7/golden-metadata.txt index 09d00c7d93..884fe638c1 100644 --- a/tests/CE7B0BC7/golden-metadata.txt +++ b/tests/CE7B0BC7/golden-metadata.txt @@ -1,24 +1,24 @@ -This file was created on 2026-02-25 22:45:42.319357. +This file was created on 2026-03-15 15:33:24.218067. mfc.sh: - Invocation: test --generate --only CE7B0BC7 -j 8 --no-build -- -c phoenix + Invocation: test --generate --only CE7B0BC7 016C1B8B -j 4 Lock: mpi=Yes & gpu=No & debug=No & gcov=No & unified=No & single=No & mixed=No & fastmath=No - Git: 0ce91cc551508e01d2fc4127caeb9ac010cfa258 on fix/time-stepping-order (dirty) + Git: 37668dcbdbf4d7402b2fc086a4b9767034ffb45a on moving-bubbles (dirty) -syscheck: +pre_process: CMake Configuration: - CMake v3.26.5 on atl1-1-02-007-5-2.pace.gatech.edu + CMake v3.26.5 on atl1-1-02-002-28-2.pace.gatech.edu C : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc) Fortran : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran) - PRE_PROCESS : OFF + PRE_PROCESS : ON SIMULATION : OFF POST_PROCESS : OFF - SYSCHECK : ON + SYSCHECK : OFF DOCUMENTATION : OFF ALL : OFF @@ -26,7 +26,7 @@ syscheck: OpenACC : OFF OpenMP : OFF - Fypp : /storage/home/hcoda1/6/sbryngelson3/scratch/MFC-prs/build/venv/bin/fypp + Fypp : /storage/scratch1/6/sbryngelson3/MFC-ruff/build/venv/bin/fypp Doxygen : Build Type : Release @@ -40,11 +40,45 @@ syscheck: OMPI_CXX : OMPI_FC : +documentation: + + CMake Configuration: + + CMake v3.26.5 on atl1-1-02-002-23-1.pace.gatech.edu + + C : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc) + Fortran : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : OFF + SYSCHECK : OFF + DOCUMENTATION : ON + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : OFF + + Fypp : /storage/home/hcoda1/6/sbryngelson3/scratch/MFC-ruff/build/venv/bin/fypp + Doxygen : /storage/home/hcoda1/6/sbryngelson3/.local/bin/doxygen + + Build Type : Release + + Configuration Environment: + + CC : /usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc + CXX : /usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/g++ + FC : /usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran + OMPI_CC : + OMPI_CXX : + OMPI_FC : + simulation: CMake Configuration: - CMake v3.26.5 on atl1-1-02-007-5-2.pace.gatech.edu + CMake v3.26.5 on atl1-1-02-002-28-2.pace.gatech.edu C : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc) Fortran : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran) @@ -60,7 +94,7 @@ simulation: OpenACC : OFF OpenMP : OFF - Fypp : /storage/home/hcoda1/6/sbryngelson3/scratch/MFC-prs/build/venv/bin/fypp + Fypp : /storage/scratch1/6/sbryngelson3/MFC-ruff/build/venv/bin/fypp Doxygen : Build Type : Release @@ -74,18 +108,52 @@ simulation: OMPI_CXX : OMPI_FC : -pre_process: +syscheck: CMake Configuration: - CMake v3.26.5 on atl1-1-02-007-5-2.pace.gatech.edu + CMake v3.26.5 on atl1-1-02-002-23-1.pace.gatech.edu C : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc) Fortran : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran) - PRE_PROCESS : ON + PRE_PROCESS : OFF SIMULATION : OFF POST_PROCESS : OFF + SYSCHECK : ON + DOCUMENTATION : OFF + ALL : OFF + + MPI : ON + OpenACC : OFF + OpenMP : OFF + + Fypp : /storage/home/hcoda1/6/sbryngelson3/scratch/MFC-ruff/build/venv/bin/fypp + Doxygen : + + Build Type : Release + + Configuration Environment: + + CC : /usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc + CXX : /usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/g++ + FC : /usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran + OMPI_CC : + OMPI_CXX : + OMPI_FC : + +post_process: + + CMake Configuration: + + CMake v3.26.5 on atl1-1-02-002-28-2.pace.gatech.edu + + C : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gcc) + Fortran : GNU v12.3.0 (/usr/local/pace-apps/spack/packages/linux-rhel9-x86_64_v3/gcc-11.3.1/gcc-12.3.0-ukkkutsxfl5kpnnaxflpkq2jtliwthfz/bin/gfortran) + + PRE_PROCESS : OFF + SIMULATION : OFF + POST_PROCESS : ON SYSCHECK : OFF DOCUMENTATION : OFF ALL : OFF @@ -94,7 +162,7 @@ pre_process: OpenACC : OFF OpenMP : OFF - Fypp : /storage/home/hcoda1/6/sbryngelson3/scratch/MFC-prs/build/venv/bin/fypp + Fypp : /storage/scratch1/6/sbryngelson3/MFC-ruff/build/venv/bin/fypp Doxygen : Build Type : Release @@ -126,7 +194,7 @@ CPU: Core(s) per socket: 12 Socket(s): 2 Stepping: 7 - CPU(s) scaling MHz: 97% + CPU(s) scaling MHz: 95% CPU max MHz: 2700.0000 CPU min MHz: 1200.0000 BogoMIPS: 5400.00 diff --git a/tests/CE7B0BC7/golden.txt b/tests/CE7B0BC7/golden.txt index b1011e6325..d02ecc3b2d 100644 --- a/tests/CE7B0BC7/golden.txt +++ b/tests/CE7B0BC7/golden.txt @@ -1,4 +1,4 @@ -D/beta.9.00.000050.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999999708435 0.9999999644801 0.99999984081087 0.99999973754149 0.99999984081087 0.9999999644801 0.99999999708435 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067934 0.99999680260077 0.99999806067934 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067934 0.99999130856777 0.99998567025082 0.99999130856777 0.99999806067934 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754149 0.99999680260077 0.99998567025082 0.99997637423772 0.99998567025082 0.99999680260077 0.99999973754149 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067934 0.99999130856777 0.99998567025082 0.99999130856777 0.99999806067934 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067934 0.99999680260077 0.99999806067934 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999999708435 0.9999999644801 0.99999984081087 0.99999973754149 0.99999984081087 0.9999999644801 0.99999999708435 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067934 0.99999680260077 0.99999806067934 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956727907 0.99999472837988 0.99997637423772 0.99996104770319 0.99997637423772 0.99999472837988 0.99999956727907 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067934 0.99997637423772 0.9998941166794 0.99982542791712 0.9998941166794 0.99997637423772 0.99999806067934 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680260077 0.99996104770319 0.99982542791712 0.99971217929369 0.99982542791712 0.99996104770319 0.99999680260077 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067934 0.99997637423772 0.9998941166794 0.99982542791712 0.9998941166794 0.99997637423772 0.99999806067934 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956727907 0.99999472837988 0.99997637423772 0.99996104770319 0.99997637423772 0.99999472837988 0.99999956727907 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067934 0.99999680260077 0.99999806067934 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067934 0.99999130856777 0.99998567025082 0.99999130856777 0.99999806067934 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067934 0.99997637423772 0.9998941166794 0.99982542791712 0.9998941166794 0.99997637423772 0.99999806067934 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130856777 0.9998941166794 0.99952546387935 0.99921762220417 0.99952546387935 0.9998941166794 0.99999130856777 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567025082 0.99982542791712 0.99921762220417 0.99871007708629 0.99921762220417 0.99982542791712 0.99998567025082 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130856777 0.9998941166794 0.99952546387935 0.99921762220417 0.99952546387935 0.9998941166794 0.99999130856777 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067934 0.99997637423772 0.9998941166794 0.99982542791712 0.9998941166794 0.99997637423772 0.99999806067934 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067934 0.99999130856777 0.99998567025082 0.99999130856777 0.99999806067934 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754149 0.99999680260077 0.99998567025082 0.99997637423772 0.99998567025082 0.99999680260077 0.99999973754149 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680260077 0.99996104770319 0.99982542791712 0.99971217929369 0.99982542791712 0.99996104770319 0.99999680260077 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567025082 0.99982542791712 0.99921762220417 0.99871007708629 0.99921762220417 0.99982542791712 0.99998567025082 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99997637423772 0.99971217929369 0.99871007708629 0.99787327665461 0.99871007708629 0.99971217929369 0.99997637423772 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567025082 0.99982542791712 0.99921762220417 0.99871007708629 0.99921762220417 0.99982542791712 0.99998567025082 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680260077 0.99996104770319 0.99982542791712 0.99971217929369 0.99982542791712 0.99996104770319 0.99999680260077 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754149 0.99999680260077 0.99998567025082 0.99997637423772 0.99998567025082 0.99999680260077 0.99999973754149 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067934 0.99999130856777 0.99998567025082 0.99999130856777 0.99999806067934 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067934 0.99997637423772 0.9998941166794 0.99982542791712 0.9998941166794 0.99997637423772 0.99999806067934 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130856777 0.9998941166794 0.99952546387935 0.99921762220417 0.99952546387935 0.9998941166794 0.99999130856777 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567025082 0.99982542791712 0.99921762220417 0.99871007708629 0.99921762220417 0.99982542791712 0.99998567025082 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130856777 0.9998941166794 0.99952546387935 0.99921762220417 0.99952546387935 0.9998941166794 0.99999130856777 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067934 0.99997637423772 0.9998941166794 0.99982542791712 0.9998941166794 0.99997637423772 0.99999806067934 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067934 0.99999130856777 0.99998567025082 0.99999130856777 0.99999806067934 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067934 0.99999680260077 0.99999806067934 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956727907 0.99999472837988 0.99997637423772 0.99996104770319 0.99997637423772 0.99999472837988 0.99999956727907 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067934 0.99997637423772 0.9998941166794 0.99982542791712 0.9998941166794 0.99997637423772 0.99999806067934 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680260077 0.99996104770319 0.99982542791712 0.99971217929369 0.99982542791712 0.99996104770319 0.99999680260077 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999806067934 0.99997637423772 0.9998941166794 0.99982542791712 0.9998941166794 0.99997637423772 0.99999806067934 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956727907 0.99999472837988 0.99997637423772 0.99996104770319 0.99997637423772 0.99999472837988 0.99999956727907 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067934 0.99999680260077 0.99999806067934 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999999708435 0.9999999644801 0.99999984081087 0.99999973754149 0.99999984081087 0.9999999644801 0.99999999708435 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067934 0.99999680260077 0.99999806067934 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067934 0.99999130856777 0.99998567025082 0.99999130856777 0.99999806067934 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754149 0.99999680260077 0.99998567025082 0.99997637423772 0.99998567025082 0.99999680260077 0.99999973754149 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081087 0.99999806067934 0.99999130856777 0.99998567025082 0.99999130856777 0.99999806067934 0.99999984081087 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999644801 0.99999956727907 0.99999806067934 0.99999680260077 0.99999806067934 0.99999956727907 0.9999999644801 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999999708435 0.9999999644801 0.99999984081087 0.99999973754149 0.99999984081087 0.9999999644801 0.99999999708435 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 +D/beta.9.00.000050.dat 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999970844 0.99999996448075 0.99999984081375 0.99999973754625 0.99999984081375 0.99999996448075 0.9999999970844 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728692 0.9999980607145 0.99999680265875 0.9999980607145 0.99999956728692 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872539 0.99998567051068 0.99999130872539 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754625 0.99999680265875 0.99998567051068 0.99997637466616 0.99998567051068 0.99999680265875 0.99999973754625 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872539 0.99998567051068 0.99999130872539 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728692 0.9999980607145 0.99999680265875 0.9999980607145 0.99999956728692 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999970844 0.99999996448075 0.99999984081375 0.99999973754625 0.99999984081375 0.99999996448075 0.9999999970844 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728692 0.9999980607145 0.99999680265875 0.9999980607145 0.99999956728692 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956728692 0.99999472847548 0.99997637466616 0.99996104840957 0.99997637466616 0.99999472847548 0.99999956728692 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466616 0.99989411859955 0.9998254310829 0.99989411859955 0.99997637466616 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680265875 0.99996104840957 0.9998254310829 0.99971218451318 0.9998254310829 0.99996104840957 0.99999680265875 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466616 0.99989411859955 0.9998254310829 0.99989411859955 0.99997637466616 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956728692 0.99999472847548 0.99997637466616 0.99996104840957 0.99997637466616 0.99999472847548 0.99999956728692 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728692 0.9999980607145 0.99999680265875 0.9999980607145 0.99999956728692 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872539 0.99998567051068 0.99999130872539 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466616 0.99989411859955 0.9998254310829 0.99989411859955 0.99997637466616 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130872539 0.99989411859955 0.99952547248484 0.99921763639223 0.99952547248484 0.99989411859955 0.99999130872539 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567051068 0.9998254310829 0.99921763639223 0.99871010047844 0.99921763639223 0.9998254310829 0.99998567051068 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130872539 0.99989411859955 0.99952547248484 0.99921763639223 0.99952547248484 0.99989411859955 0.99999130872539 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466616 0.99989411859955 0.9998254310829 0.99989411859955 0.99997637466616 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872539 0.99998567051068 0.99999130872539 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754625 0.99999680265875 0.99998567051068 0.99997637466616 0.99998567051068 0.99999680265875 0.99999973754625 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680265875 0.99996104840957 0.9998254310829 0.99971218451318 0.9998254310829 0.99996104840957 0.99999680265875 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567051068 0.9998254310829 0.99921763639223 0.99871010047844 0.99921763639223 0.9998254310829 0.99998567051068 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99997637466616 0.99971218451318 0.99871010047844 0.99787331522175 0.99871010047844 0.99971218451318 0.99997637466616 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567051068 0.9998254310829 0.99921763639223 0.99871010047844 0.99921763639223 0.9998254310829 0.99998567051068 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680265875 0.99996104840957 0.9998254310829 0.99971218451318 0.9998254310829 0.99996104840957 0.99999680265875 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754625 0.99999680265875 0.99998567051068 0.99997637466616 0.99998567051068 0.99999680265875 0.99999973754625 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872539 0.99998567051068 0.99999130872539 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466616 0.99989411859955 0.9998254310829 0.99989411859955 0.99997637466616 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130872539 0.99989411859955 0.99952547248484 0.99921763639223 0.99952547248484 0.99989411859955 0.99999130872539 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99998567051068 0.9998254310829 0.99921763639223 0.99871010047844 0.99921763639223 0.9998254310829 0.99998567051068 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999130872539 0.99989411859955 0.99952547248484 0.99921763639223 0.99952547248484 0.99989411859955 0.99999130872539 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466616 0.99989411859955 0.9998254310829 0.99989411859955 0.99997637466616 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872539 0.99998567051068 0.99999130872539 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728692 0.9999980607145 0.99999680265875 0.9999980607145 0.99999956728692 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956728692 0.99999472847548 0.99997637466616 0.99996104840957 0.99997637466616 0.99999472847548 0.99999956728692 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466616 0.99989411859955 0.9998254310829 0.99989411859955 0.99997637466616 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999680265875 0.99996104840957 0.9998254310829 0.99971218451318 0.9998254310829 0.99996104840957 0.99999680265875 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999980607145 0.99997637466616 0.99989411859955 0.9998254310829 0.99989411859955 0.99997637466616 0.9999980607145 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999956728692 0.99999472847548 0.99997637466616 0.99996104840957 0.99997637466616 0.99999472847548 0.99999956728692 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728692 0.9999980607145 0.99999680265875 0.9999980607145 0.99999956728692 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999970844 0.99999996448075 0.99999984081375 0.99999973754625 0.99999984081375 0.99999996448075 0.9999999970844 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728692 0.9999980607145 0.99999680265875 0.9999980607145 0.99999956728692 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872539 0.99998567051068 0.99999130872539 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999973754625 0.99999680265875 0.99998567051068 0.99997637466616 0.99998567051068 0.99999680265875 0.99999973754625 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999984081375 0.9999980607145 0.99999130872539 0.99998567051068 0.99999130872539 0.9999980607145 0.99999984081375 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.99999996448075 0.99999956728692 0.9999980607145 0.99999680265875 0.9999980607145 0.99999956728692 0.99999996448075 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 0.9999999970844 0.99999996448075 0.99999984081375 0.99999973754625 0.99999984081375 0.99999996448075 0.9999999970844 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 D/cons.1.00.000000.dat 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 D/cons.1.00.000050.dat 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.95999999999987 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000106 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000071 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000373 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000075 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.96000000000107 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.9600000000001 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000000079 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000002206 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000005987 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000004881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000032881 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000005864 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000008629 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000597 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.9600000000021 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000013587 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000392457 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000386601 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000000372715 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000002634421 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000528784 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000790203 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000059137 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000001228 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.96000000000016 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.96000000002232 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.960000001086 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.96000003357351 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.9600007182478 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000023896672 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000168485738 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000038977218 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000058691047 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000005194927 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000110092 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000002787 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.96000000000033 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000024 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000000461 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000000028923 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000001055314 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000025210076 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96000388888139 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96003762422319 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96024757938339 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96002715152843 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96003089249465 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000375036941 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000008693805 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000244292 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.96000000003463 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.9600000000004 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000021 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.96000000000066 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.9600000000725 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000000306584 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000008513635 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96000153658661 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96001782964953 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96013299338417 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96063533731738 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96190052351632 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96374631791153 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96026255957098 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000700586267 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.96000019245935 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.9600000027078 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000003541 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.96000000000036 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000000004 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000001662 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000000087018 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000002801722 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.96000057403111 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.9600078024614 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96006802884276 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96038137379852 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96137903643732 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96321014680893 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96472448360735 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96430483319369 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96019082432575 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000932467124 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000014529282 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000210283 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000002503 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.96000000000025 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000000049 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000000804388 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000020225341 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96000325281143 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96003298088296 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.96021653301433 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.9609147657699 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.96249799243187 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.964334322046 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96481258179925 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96336759080543 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96143584361298 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96040089864196 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000697925381 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.96000011362105 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.9600000014265 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000001533 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.95999999999997 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000005 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000000918 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000000079179 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.96000003419278 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.9600149885594 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96011618398765 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96057389899636 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96183629361123 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96374953553679 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96487828647848 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96403753353408 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96213071462991 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.96071011797522 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9601508434791 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.9600196248461 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000036744425 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000570381 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000007383 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.96000000000109 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.95999999999988 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000000232 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000000018275 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000001363188 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96000111210589 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96033224617124 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96126932110788 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96305949909787 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96466883490351 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96456048864478 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96281609353146 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96111125786873 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96027471074325 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96004459277341 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000499233933 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000031117462 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000001433426 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000025446 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.96000000000415 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.95999999999996 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.96000000000022 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.9600000000212 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.960000001965 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96000015611273 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96001764480948 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96006279164586 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96400989035802 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96485606976477 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96351313793838 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96163554558384 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.96047642292959 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.9600895136462 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96001112432289 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000091493657 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000005380412 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000216497 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000005184 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.96000000000113 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.95999999999986 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.95999999999994 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000000048 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000004002 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000000333307 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000032143279 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96000308149917 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96017194993358 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96391155244328 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96224311853402 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.96078380667 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.9601705079647 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96002464093767 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000234110585 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.96000014892106 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.9600000065405 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000020369 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.96000000000543 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.95999999999992 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.9600000000006 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000005181 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000000471331 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000009639196 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96000622376079 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96013879588321 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96006476986403 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96027520928189 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96005494775729 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000571977412 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000041848693 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000002077145 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000072415 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000001913 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.96000000000027 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000000062 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000005445 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000000142375 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000009370674 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000254523862 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000117610763 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000524478499 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000087573747 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000085120187 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000007393657 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000267574 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000007354 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.96000000000181 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.95999999999985 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.95999999999995 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000000058 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000001744 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.96000000114058 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.9600000318752 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000001538587 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000008339363 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001383394 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000001361022 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000508758 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000027613 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96000000000723 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.95999999999991 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000000014 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000001185 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.96000000033252 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.9600000001676 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000105006 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000017454 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000021066 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000008263 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000466 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96000000000013 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000006 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000325 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000000187 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000001122 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000219 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.96000000000302 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.9600000000017 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999999 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.95999999999993 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.9599999999999 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.96000000000007 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999989 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.95999999999984 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.95999999999998 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96000000000002 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96000000000001 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 0.96 D/cons.2.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 @@ -17,4 +17,4 @@ D/cons.8.00.000000.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0 D/cons.8.00.000050.dat 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 D/lag_bubble_evol_0.dat 0.0 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093882 0.008 0.0 1.0001782913460961 0.0 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093882 0.008 0.0 1.0001782913460961 1e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093882 0.0079999999991335 -2.5998347812e-06 1.000178291800741 2e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298809388 0.0079999999922017 -1.29983242186e-05 1.000178295437995 3e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093872 0.0079999999688074 -3.63927017024e-05 1.0001783077133188 4e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093845 0.0079999999133575 -7.79781563216e-05 1.000178336808713 5e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298809378 0.0079999998050647 -0.0001429472991708 1.0001783936315034 6e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093644 0.0079999996179507 -0.0002364895241275 1.0001784918128234 7e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988093391 0.0079999993208499 -0.0003637902333544 1.0001786477057284 8e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298809296 0.0079999988774134 -0.0005300298975884 1.000178880382868 9e-06 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988092268 0.0079999982461151 -0.0007403829210309 1.0001792116336214 1e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988091214 0.0079999973802576 -0.0010000162803676 1.0001796659605886 1.1e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988089671 0.0079999962279814 -0.0013140879071025 1.0001802705753133 1.2e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988087485 0.0079999947322742 -0.001687744782021 1.0001810553930972 1.3e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988084475 0.0079999928309829 -0.002126120710193 1.0001820530267498 1.4e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988080425 0.0079999904568284 -0.0026343337445149 1.0001832987791015 1.5e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988075089 0.0079999875374229 -0.0032174832253708 1.0001848306340897 1.6e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988068183 0.0079999839952895 -0.0038806464035904 1.000186689246213 1.7e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988059382 0.0079999797478871 -0.0046288746135072 1.000188917928131 1.8e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988048322 0.0079999747076377 -0.0054671889625894 1.000191562636167 1.9e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988034595 0.0079999687819595 -0.0064005755038528 1.0001946719534596 2e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832988017745 0.0079999618733042 -0.007433979857085 1.0001982970704828 2.1e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987997269 0.0079999538792009 -0.0085723012448426 1.000202491762648 2.2e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987972612 0.0079999446923049 -0.0098203859092421 1.0002073123646718 2.3e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987943166 0.0079999342004551 -0.011183019875789 1.0002128177413845 2.4e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987908266 0.0079999222867377 -0.0126649210309033 1.0002190692546316 2.5e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298786719 0.0079999088295585 -0.0142707304804285 1.000226130725907 2.6e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987819156 0.0079998937027246 -0.0160050031573143 1.0002340683943376 2.7e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987763319 0.0079998767755354 -0.0178721976476137 1.0002429508696198 2.8e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987698769 0.0079998579128844 -0.0198766652057478 1.000252849079501 2.9e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987624528 0.0079998369753724 -0.0220226379315838 1.0002638362113736 3e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987539552 0.007999813819433 -0.0243142160841659 1.0002759876475424 3.1e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987442723 0.0079997882974709 -0.0267553545095958 1.0002893808937117 3.2e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987332852 0.0079997602580149 -0.029349848163718 1.0003040955002234 3.3e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987208674 0.0079997295458849 -0.0321013167136486 1.0003202129755737 3.4e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832987068849 0.0079996960023757 -0.0350131882068714 1.000337816691723 3.5e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832986911959 0.0079996594654568 -0.0380886818013008 1.0003569917807094 3.6e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832986736504 0.0079996197699907 -0.0413307895553177 1.0003778250220763 3.7e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832986540904 0.0079995767479693 -0.0447422572817508 1.0004004047206192 3.8e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832986323498 0.0079995302287701 -0.048325564474873 1.000424820573963 3.9e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832986082539 0.0079994800394327 -0.0520829033325081 1.000451163529485 4e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832985816196 0.0079994260049577 -0.0560161569072351 1.0004795256301158 4.1e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832985522554 0.007999367948626 -0.0601268764180896 1.0005099998485611 4.2e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832985199608 0.0079993056923434 -0.0644162577618181 1.0005426799095096 4.3e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298484527 0.0079992390570073 -0.0688851172641215 1.0005776600994014 4.4e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832984457361 0.007999167862899 -0.0735338667716603 1.0006150350633782 4.5e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832984033616 0.0079990919301005 -0.0783624881671981 1.000654899589073 4.6e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832983571682 0.0079990110789379 -0.0833705073971212 1.000697348376945 4.7e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.014383298306912 0.0079989251304502 -0.0885569681129268 1.0007424757969103 4.8e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832982523402 0.0079988339068849 -0.0939204050483519 1.0007903756310734 4.9e-05 1.0 0.5 0.5 0.5 3.64821e-11 0.0143832981931914 0.0079987372322203 -0.0994588172778342 1.000841140802435 D/stats_lag_bubbles_0.dat 0.0 1.0 0.5 0.5 0.5 1.0 0.9998421540275337 -D/voidfraction.dat 2.1429198e-06 2.1429198e-06 2.1429198e-06 2.1429198e-06 2.1429197e-06 2.1429197e-06 2.1429196e-06 2.1429195e-06 2.1429193e-06 2.142919e-06 2.1429186e-06 2.142918e-06 2.1429172e-06 2.1429161e-06 2.1429148e-06 2.142913e-06 2.1429109e-06 2.1429083e-06 2.1429052e-06 2.1429015e-06 2.1428971e-06 2.1428919e-06 2.1428859e-06 2.142879e-06 2.1428711e-06 2.1428621e-06 2.1428519e-06 2.1428404e-06 2.1428275e-06 2.1428132e-06 2.1427972e-06 2.1427795e-06 2.1427599e-06 2.1427384e-06 2.1427148e-06 2.142689e-06 2.1426608e-06 2.1426302e-06 2.1425969e-06 2.142561e-06 2.1425221e-06 2.1424803e-06 2.1424352e-06 2.1423869e-06 2.1423351e-06 2.1422797e-06 2.1422206e-06 2.1421577e-06 2.1420907e-06 2.1420195e-06 2.141944e-06 \ No newline at end of file +D/voidfraction.dat 2.1429198e-06 2.1429198e-06 2.1429198e-06 2.1429198e-06 2.1429197e-06 2.1429197e-06 2.1429196e-06 2.1429195e-06 2.1429192e-06 2.1429189e-06 2.1429183e-06 2.1429177e-06 2.1429167e-06 2.1429155e-06 2.142914e-06 2.1429121e-06 2.1429097e-06 2.1429069e-06 2.1429035e-06 2.1428994e-06 2.1428947e-06 2.1428891e-06 2.1428827e-06 2.1428753e-06 2.1428669e-06 2.1428573e-06 2.1428465e-06 2.1428343e-06 2.1428207e-06 2.1428056e-06 2.1427888e-06 2.1427701e-06 2.1427496e-06 2.1427271e-06 2.1427024e-06 2.1426755e-06 2.1426461e-06 2.1426142e-06 2.1425797e-06 2.1425423e-06 2.1425019e-06 2.1424585e-06 2.1424119e-06 2.1423619e-06 2.1423083e-06 2.1422511e-06 2.1421901e-06 2.1421252e-06 2.1420561e-06 2.1419828e-06 2.1419052e-06 \ No newline at end of file diff --git a/toolchain/mfc/params/definitions.py b/toolchain/mfc/params/definitions.py index 2f3631c228..e3ea3f45ad 100644 --- a/toolchain/mfc/params/definitions.py +++ b/toolchain/mfc/params/definitions.py @@ -627,8 +627,8 @@ def get_value_label(param_name: str, value: int) -> str: }, # Bubbles "bubble_model": { - "choices": [1, 2, 3], - "value_labels": {1: "Gilmore", 2: "Keller-Miksis", 3: "Rayleigh-Plesset"}, + "choices": [0, 1, 2, 3], + "value_labels": {0: "Particle", 1: "Gilmore", 2: "Keller-Miksis", 3: "Rayleigh-Plesset"}, }, # Output "format": { @@ -1053,6 +1053,13 @@ def _load(): _r(f"p_{d}", REAL, math=r"\f$\phi_" + d + r"\f$") _r(f"bf_{d}", LOG) + # Interfacial flow inputs + _r("normMag", REAL) + _r("p0_ic", REAL) + _r("g0_ic", REAL) + _r("normFac", REAL) + _r("interface_file", STR) + # INDEXED PARAMETERS # patch_icpp (10 patches) @@ -1260,12 +1267,13 @@ def _load(): _r(f"simplex_params%perturb_vel_offset({d},{j})", REAL) # lag_params (Lagrangian bubbles) - for a in ["heatTransfer_model", "massTransfer_model", "pressure_corrector", "write_bubbles", "write_bubbles_stats"]: + for a in ["heatTransfer_model", "massTransfer_model", "pressure_corrector", "write_bubbles", "write_bubbles_stats", "pressure_force", "gravity_force", "write_void_evol"]: _r(f"lag_params%{a}", LOG, {"bubbles"}) - for a in ["solver_approach", "cluster_type", "smooth_type", "nBubs_glb"]: + for a in ["solver_approach", "cluster_type", "smooth_type", "nBubs_glb", "drag_model", "vel_model", "charNz"]: _r(f"lag_params%{a}", INT, {"bubbles"}) for a in ["epsilonb", "valmaxvoid", "charwidth", "c0", "rho0", "T0", "x0", "Thost"]: _r(f"lag_params%{a}", REAL, {"bubbles"}) + _r("lag_params%input_path", STR, {"bubbles"}) # chem_params for a in ["diffusion", "reactions"]: diff --git a/toolchain/mfc/params/descriptions.py b/toolchain/mfc/params/descriptions.py index 7906b6d38d..e903d82e54 100644 --- a/toolchain/mfc/params/descriptions.py +++ b/toolchain/mfc/params/descriptions.py @@ -250,6 +250,12 @@ "lag_mg_wrt": "Write bubble gas mass", "lag_betaT_wrt": "Write bubble heat transfer coefficient", "lag_betaC_wrt": "Write bubble mass transfer coefficient", + # Interfacial flow parameters + "interface_file": "Path to interface geometry data file", + "normFac": "Interface normalization factor", + "normMag": "Interface normal magnitude", + "g0_ic": "Initial gas volume fraction for interfacial IC", + "p0_ic": "Initial pressure for interfacial IC", } # Patterns for auto-generating descriptions of indexed parameters @@ -483,15 +489,17 @@ (r"lag_params%massTransfer_model", "Enable mass transfer at bubble-liquid interface"), (r"lag_params%write_bubbles", "Write bubble evolution data each time step"), (r"lag_params%write_bubbles_stats", "Write max/min radius statistics for bubbles"), + (r"lag_params%write_void_evol", "Write void fraction evolution data"), (r"lag_params%nBubs_glb", "Global number of Lagrangian bubbles"), (r"lag_params%epsilonb", "Standard deviation scaling for Gaussian smoothing"), (r"lag_params%charwidth", "Domain virtual depth for 2D simulations"), + (r"lag_params%charNz", "Number of cells in virtual depth"), (r"lag_params%valmaxvoid", "Maximum permitted void fraction"), - (r"lag_params%T0", "Initial bubble temperature"), - (r"lag_params%Thost", "Host fluid temperature"), - (r"lag_params%c0", "Initial sound speed"), - (r"lag_params%rho0", "Initial density"), - (r"lag_params%x0", "Initial bubble position"), + (r"lag_params%vel_model", "Model for translational motion"), + (r"lag_params%drag_model", "Drag model for translational motion"), + (r"lag_params%pressure_force", "Enable pressure force for Newton's 2nd law force model"), + (r"lag_params%gravity_force", "Enable gravity force for Newton's 2nd law force model"), + (r"lag_params%input_path", "Path to input file for Lagrangian bubbles"), (r"lag_params%(\w+)", "Lagrangian tracking parameter: {0}"), # chem_params patterns - specific fields first (r"chem_params%diffusion", "Enable species diffusion for chemistry"), diff --git a/toolchain/mfc/test/cases.py b/toolchain/mfc/test/cases.py index 3666b930c3..8d431d056f 100644 --- a/toolchain/mfc/test/cases.py +++ b/toolchain/mfc/test/cases.py @@ -1325,6 +1325,7 @@ def alter_lag_bubbles(dimInfo): "lag_betaC_wrt": "T", "lag_params%write_bubbles": "T", "lag_params%write_bubbles_stats": "T", + "lag_params%write_void_evol": "T", "polytropic": "F", "bub_pp%R0ref": 1.0, "bub_pp%p0ref": 1.0, @@ -1542,6 +1543,8 @@ def foreach_example(): "1D_multispecies_diffusion", "2D_ibm_stl_MFCCharacter", "1D_qbmm", # formatted I/O field overflow on gfortran 12 + "2D_moving_lag_bubs", # adap_dt hangs on reduced grid + "3D_moving_lag_particles", # adap_dt hangs on reduced grid ] if path in casesToSkip: continue diff --git a/toolchain/modules b/toolchain/modules index d2169ad865..70c048ff70 100644 --- a/toolchain/modules +++ b/toolchain/modules @@ -45,7 +45,7 @@ f-all cpe/25.03 rocm/6.3.1 f-all cray-fftw cray-hdf5 python cmake f-gpu python craype-accel-amd-gfx90a rocprofiler-compute/3.0.0 -famd OLCF Frontier AMD +famd OLCF Frontier AMD famd-all python cmake famd-all cpe/25.09 famd-all PrgEnv-amd @@ -98,7 +98,7 @@ h-all python/3.12 h-cpu gcc/14.2 openmpi/5.0.7 h-gpu UCX_NET_DEVICES="mlx5_4:1,mlx5_7:1,mlx5_8:1,mlx5_9:1,mlx5_10:1,mlx5_13:1,mlx5_14:1,mlx5_15:1" h-gpu cuda/12.9.1 nvhpc/25.9 openmpi/5.0.7 -h-gpu CC=/apps/compilers/nvhpc/25.9/Linux_x86_64/25.9/comm_libs/mpi/bin/mpicc +h-gpu CC=/apps/compilers/nvhpc/25.9/Linux_x86_64/25.9/comm_libs/mpi/bin/mpicc h-gpu CXX=/apps/compilers/nvhpc/25.9/Linux_x86_64/25.9/comm_libs/mpi/bin/mpicxx h-gpu FC=/apps/compilers/nvhpc/25.9/Linux_x86_64/25.9/comm_libs/mpi/bin/mpifort h-gpu NVCOMPILER_COMM_LIBS_HOME=/apps/compilers/nvhpc/25.9/Linux_x86_64/25.9/comm_libs/12.9