From f14dc2c3958e0a1e807f1c0a0ce46bf9e0f7ddf8 Mon Sep 17 00:00:00 2001 From: Martin Schupfner <k204212@levante4.lvt.dkrz.de> Date: Fri, 7 Feb 2025 11:50:55 +0100 Subject: [PATCH] Updating CMOR scripts/config for MPI-ESM1-2-1 transient-deglaciation-interactive - Adding functionality to add FillValues for missing data to conf/ and aggregation script - Adding FillValue blanko files for echam_plev19 and echam_after aggregation streams - Fixing wrong forcing index for several runs --- cmor/mpiesm/scripts/Create_missing_file.sh | 4 + ...equested_vars_AllExp_ISM_SLM_r1i1p3f1.conf | 89 ++++++++++++++++++ ...d2_requested_vars_AllExp_ISM_SLM_rslc.conf | 44 +++++++++ .../missing_value_echam6_echammon_after.grb | Bin 0 -> 706560 bytes .../missing_value_echam6_echammon_plev19.grb | Bin 0 -> 1467648 bytes cmor/mpiesm/scripts/ncatted_CS.sh | 7 +- .../palmod2_aggregation_MPI-ESM1-2_echam6.h | 28 ++++-- ...deglaciation-interactive_r1i1p1f1-CR.runpp | 2 + ...deglaciation-interactive_r1i1p3f1-CR.runpp | 2 +- ...deglaciation-interactive_r1i1p4f2-CR.runpp | 1 + ...aciation-interactive_r1i1p5f2-CR.cmor_ctl} | 8 +- ...ation-interactive_r1i1p5f2-CR.cmor_ctl.mk} | 10 +- ...eglaciation-interactive_r1i1p5f2-CR.runpp} | 14 +-- ...ation-interactive_r1i1p5f2-CR_cdocmorinfo} | 4 +- ...aciation-interactive_r1i1p6f2-CR.cmor_ctl} | 8 +- ...ation-interactive_r1i1p6f2-CR.cmor_ctl.mk} | 10 +- ...eglaciation-interactive_r1i1p6f2-CR.runpp} | 14 +-- ...ation-interactive_r1i1p6f2-CR_cdocmorinfo} | 4 +- ...aciation-interactive_r1i1p7f2-CR.cmor_ctl} | 8 +- ...ation-interactive_r1i1p7f2-CR.cmor_ctl.mk} | 10 +- ...eglaciation-interactive_r1i1p7f2-CR.runpp} | 14 +-- ...ation-interactive_r1i1p7f2-CR_cdocmorinfo} | 4 +- 22 files changed, 226 insertions(+), 59 deletions(-) create mode 100644 cmor/mpiesm/scripts/Create_missing_file.sh create mode 100755 cmor/mpiesm/scripts/conf/PalMod2_requested_vars_AllExp_ISM_SLM_r1i1p3f1.conf create mode 100755 cmor/mpiesm/scripts/conf/PalMod2_requested_vars_AllExp_ISM_SLM_rslc.conf create mode 100644 cmor/mpiesm/scripts/missing_value_echam6_echammon_after.grb create mode 100644 cmor/mpiesm/scripts/missing_value_echam6_echammon_plev19.grb rename cmor/mpiesm/scripts/{transient-deglaciation-interactive_r1i1p5f1-CR.cmor_ctl => transient-deglaciation-interactive_r1i1p5f2-CR.cmor_ctl} (94%) rename cmor/mpiesm/scripts/{transient-deglaciation-interactive_r1i1p7f1-CR.cmor_ctl.mk => transient-deglaciation-interactive_r1i1p5f2-CR.cmor_ctl.mk} (83%) rename cmor/mpiesm/scripts/{transient-deglaciation-interactive_r1i1p5f1-CR.runpp => transient-deglaciation-interactive_r1i1p5f2-CR.runpp} (98%) rename cmor/mpiesm/scripts/{transient-deglaciation-interactive_r1i1p5f1-CR_cdocmorinfo => transient-deglaciation-interactive_r1i1p5f2-CR_cdocmorinfo} (99%) rename cmor/mpiesm/scripts/{transient-deglaciation-interactive_r1i1p7f1-CR.cmor_ctl => transient-deglaciation-interactive_r1i1p6f2-CR.cmor_ctl} (94%) rename cmor/mpiesm/scripts/{transient-deglaciation-interactive_r1i1p5f1-CR.cmor_ctl.mk => transient-deglaciation-interactive_r1i1p6f2-CR.cmor_ctl.mk} (83%) rename cmor/mpiesm/scripts/{transient-deglaciation-interactive_r1i1p6f1-CR.runpp => transient-deglaciation-interactive_r1i1p6f2-CR.runpp} (98%) rename cmor/mpiesm/scripts/{transient-deglaciation-interactive_r1i1p6f1-CR_cdocmorinfo => transient-deglaciation-interactive_r1i1p6f2-CR_cdocmorinfo} (99%) rename cmor/mpiesm/scripts/{transient-deglaciation-interactive_r1i1p6f1-CR.cmor_ctl => transient-deglaciation-interactive_r1i1p7f2-CR.cmor_ctl} (94%) rename cmor/mpiesm/scripts/{transient-deglaciation-interactive_r1i1p6f1-CR.cmor_ctl.mk => transient-deglaciation-interactive_r1i1p7f2-CR.cmor_ctl.mk} (83%) rename cmor/mpiesm/scripts/{transient-deglaciation-interactive_r1i1p7f1-CR.runpp => transient-deglaciation-interactive_r1i1p7f2-CR.runpp} (98%) rename cmor/mpiesm/scripts/{transient-deglaciation-interactive_r1i1p7f1-CR_cdocmorinfo => transient-deglaciation-interactive_r1i1p7f2-CR_cdocmorinfo} (99%) diff --git a/cmor/mpiesm/scripts/Create_missing_file.sh b/cmor/mpiesm/scripts/Create_missing_file.sh new file mode 100644 index 0000000..d27b79d --- /dev/null +++ b/cmor/mpiesm/scripts/Create_missing_file.sh @@ -0,0 +1,4 @@ +cdo expr,"var131=(var131!=9999999999999)?missval(var131):missval(var131);var132=(var132!=9999999999999)?missval(var132):missval(var132);var134=(var134!=9999999999999)?missval(var134):missval(var134);var151=(var151!=9999999999999)?missval(var151):missval(var151);" -settaxis,19000101,120000,1month echam6_echammon_after.grb missing_value_echam6_echammon_after.grb + +cdo expr,"var130=(var130!=9999999999999)?missval(var130):missval(var130);var131=(var131!=9999999999999)?missval(var131):missval(var131);var132=(var132!=9999999999999)?missval(var132):missval(var132);var133=(var133!=9999999999999)?missval(var133):missval(var133);var135=(var135!=9999999999999)?missval(var135):missval(var135);var156=(var156!=9999999999999)?missval(var156):missval(var156);var157=(var157!=9999999999999)?missval(var157):missval(var157);" -settaxis,19000101,120000,1month echam6_echammon_plev19.grb missing_value_echam6_echammon_plev19.grb + diff --git a/cmor/mpiesm/scripts/conf/PalMod2_requested_vars_AllExp_ISM_SLM_r1i1p3f1.conf b/cmor/mpiesm/scripts/conf/PalMod2_requested_vars_AllExp_ISM_SLM_r1i1p3f1.conf new file mode 100755 index 0000000..93f87f0 --- /dev/null +++ b/cmor/mpiesm/scripts/conf/PalMod2_requested_vars_AllExp_ISM_SLM_r1i1p3f1.conf @@ -0,0 +1,89 @@ +# ################################################## +# ################################################## +# CMIP6 PostProcessing Workflow Configuration File +# ################################################## +# This configuration file specifies which variables will be +# processed for which time intervals. +# It contains + DREQSETTINGS (computed from the CMIP6-DataRequest) and +# + USERSETTINGS (specified by the user) +# for each experiment. +# +# There are 3 types of settings: Standard, TimeSlice, GridAndTimeSlice. +# +# -Use '#' for comments (also inline). +# ################################################## + + +# Data Request Version: 00.00.03 +# Supported MIPs (0): +# Supported Experiments (0): + + +################################################## +EXP=AllExp +################################################## + +DREQSETTINGS +Ofx : Ofx = slice: first_step +fx : fx = slice: first_step +FillerFiles : FillerFiles = slice: 024621010100-024630123124 # Time periods that Lost/Missing echam files are filled with Missing Value files + +USERSETTINGS +# ---> Specify your settings for Experiment AllExp here +#TOTAL : TOTAL = False # only produce variables explicitly set to True +################# +# Aggregation +################# +FillerFiles : FillerFiles = True # Make use of Missing Value files for specified time periods +echammonplev19 : interpolation = True +echammonafter : afterburner = True +jsbachdecfx : input = True +echamdecfx : input = True +vilmadecfx : input = slm # only for SLM runs (i.e. incl vilma) +mpiom : basin = False # basin file does not exist for GR30 +mpiom : basin = slice: first_step +mpiom : gridfile = True +mpiom : gridfile = slice: first_step +mpiom : fx = True +Omon : areacello = True +Ofx : areacello = True +################# +# Ocean +################# +Odec : sftof = slm # only for SLM runs (i.e. incl vilma) +Ofx : deptho = False # variable has decadal or annual frequency +#Ofx : sftof = False # variable has decadal or annual frequency +Ofx : thkcello = False # variable has monthly frequency (uppermost layer) +Ofx : volcello = False # variable has monthly frequency (uppermost layer) +Omon : volcello = False # not required, can be calculated as areacello*thkcello +SImon : sisnconc = False # variable missing in mpiom_data_2d_mm stream +EmonZ : sltbasin = False # variable missing in mpiom_data_moc_mm stream +################# +# Atmosphere +################# +hurs : Amon = False # variable missing in echam stream +huss : Amon = False # variable missing in echam stream +lossch4 : Emon = False # variable only for MPI-ESM1-2-CR-CH4 +ch4 : Emon = False # variable only for MPI-ESM1-2-CR-CH4 +ch4brdn : Emon = False # variable only for MPI-ESM1-2-CR-CH4 +emilnox : AERmon = False # variable only for MPI-ESM1-2-CR-CH4 +fSoilCH4 : Emon = False # variable only for MPI-ESM1-2-CR-CH4 +emich4 : Emon = False # variable only for MPI-ESM1-2-CR-CH4 +################# +# Land +################# +#sftgif : LImon = False # variable has decadal frequency +rh : Lmon = False # variable missing in veg stream +wetlandCH4 : Emon = False # variable only for MPI-ESM1-2-CR-CH4 +wetlandFrac : Emon = False # variable only for MPI-ESM1-2-CR-CH4 +termiteCH4 : Emon = False # variable only for MPI-ESM1-2-CR-CH4 +fVegFireCH4 : Emon = False # variable only for MPI-ESM1-2-CR-CH4 +herbivoreCH4 : Emon = False # variable only for MPI-ESM1-2-CR-CH4 +################## +# solidLand +################## +SLdec : SLdec = slm # only for SLM runs (i.e. incl vilma) +################## +IdecAnt : IdecAnt = ism # only for ISM runs (i.e. incl mPISM) +IdecGre : IdecGre = ism # only for ISM runs (i.e. incl mPISM) +#<---- Specify your settings for Experiment AllExp here diff --git a/cmor/mpiesm/scripts/conf/PalMod2_requested_vars_AllExp_ISM_SLM_rslc.conf b/cmor/mpiesm/scripts/conf/PalMod2_requested_vars_AllExp_ISM_SLM_rslc.conf new file mode 100755 index 0000000..fa6a512 --- /dev/null +++ b/cmor/mpiesm/scripts/conf/PalMod2_requested_vars_AllExp_ISM_SLM_rslc.conf @@ -0,0 +1,44 @@ +# ################################################## +# ################################################## +# CMIP6 PostProcessing Workflow Configuration File +# ################################################## +# This configuration file specifies which variables will be +# processed for which time intervals. +# It contains + DREQSETTINGS (computed from the CMIP6-DataRequest) and +# + USERSETTINGS (specified by the user) +# for each experiment. +# +# There are 3 types of settings: Standard, TimeSlice, GridAndTimeSlice. +# +# -Use '#' for comments (also inline). +# ################################################## + + +# Data Request Version: 00.00.03 +# Supported MIPs (0): +# Supported Experiments (0): + + +################################################## +EXP=AllExp +################################################## + +DREQSETTINGS +Ofx : Ofx = slice: first_step +fx : fx = slice: first_step + +USERSETTINGS +# ---> Specify your settings for Experiment AllExp here +TOTAL : TOTAL = False # only produce variables explicitly set to True +################# +# Aggregation +################# +jsbachdecfx : input = True +echamdecfx : input = True +vilmadecfx : input = slm # only for SLM runs (i.e. incl vilma) +################## +# solidLand +################## +SLdec : rslc = slm # only for SLM runs (i.e. incl vilma) +################## +#<---- Specify your settings for Experiment AllExp here diff --git a/cmor/mpiesm/scripts/missing_value_echam6_echammon_after.grb b/cmor/mpiesm/scripts/missing_value_echam6_echammon_after.grb new file mode 100644 index 0000000000000000000000000000000000000000..92eb1c21dab7e74eea353088e89b8317917bdce6 GIT binary patch literal 706560 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 literal 0 HcmV?d00001 diff --git a/cmor/mpiesm/scripts/missing_value_echam6_echammon_plev19.grb b/cmor/mpiesm/scripts/missing_value_echam6_echammon_plev19.grb new file mode 100644 index 0000000000000000000000000000000000000000..8a70b1acfcee88f275a618a810a504d2656345b7 GIT binary patch literal 1467648 zcmeI)FVCih*EQzr9+>iWN-!Wu+7Lbff?(<^rl}<(kO({y%imy82m+Qb(TZ21>+9bS zP*p>3e#lm=z4n&JlRPt-=egFN$&r;Aa$aZF|N8m=_P;z{{Py&C{7-*B9)JJW@4tHM zzkT)e^zP&N|MKebc)b7ozmLbqkH6o3eEInF>CHFKzxwvOH{ZPc`nUJ~e0=zy|L^0) z>wkatBY}m$yZ`0!_`m+g|NXx{9{=<6|NMLCfBpaV^AG)8AdA)lVLw0D&ze|pArSWS z9sOJ&i`D{JKVSSG`dJeTE(F4UexaWWWYJn6>*v$|t)Dfq;6fnm=P&xXKo+e9!hU|D zpEa@ILLlqs<Nwjm1+r)@5ccyg{j7-v7Xo2Ff7Q<gvS=+3_VX+Ktce8|0%1R2>*oSl zv=#{a`I&y!#DWWfu%934=K@)@76|+KfqvG+f(wDLpRe?Dfh<}Jg#Gk>T`erQ5eWPF z(%+vOW!Y9B?B`qh*$T^T1j2s4(9eysY%37<^GQEjVY!V!)X)F(;raXqS+*7k`|0^- zEiAYZ2>a>z=LT7}7D)Q}gZ+@&S8yi~_S1gIj#;`C2>WS2r1TZr355Oh{pOBYx)jLz zX+Nao6<Z2~{j?vlbQbRfvVPhR>2#&G0%1SxhiswcD}k_|_CqRNp{+pHPx~QTXZcPb z?5F*Zj#p|a5cbo4$kJK76A1fhKcwT8S_*{yv>&o`7ViYYetJK-<CR(pg#EN1vUC>j z1j2rLf4<|DS_*{y^#1(PS-cYn`|16<j#p|a5cbo4$kJK76A1fhKcwT8S_*{yv>&o` z7ViYYe%cS|c%_yCQ9td6ES1Gufv}&Rf40DKD}k_|o`0^Cg<FB7pFi3UX?f+A0%1Sx zhb*1NJAtsD_Cq>esii>JPv37Yoy9wWte^HnI$f!)K-f?FAzNtqN+9c}{g4V*Xe|)- z(|*WW+JQzO?5F*Z23KY+koD7k$Qs&#N+9f~{g6smXe$u*(|*VnTD}qp`)NO<(iPeY zg#EN1vW1qf1j2sW52<v8wgO>4?T2ik<tu@(pWdIZbcMD8VL!b;zlD~s1j2rLzpm01 z+6sjIv>&pCmahcDe%cSIbcMD8VL$DMY@y{Vfv}(ULn>XNtw7XI`ypFq`BEV4r{|xg zuh>o??5F3SJ7(!pAnE5%_Crctv8_PZPx~QTX!%MY?5F*ZN>^wr5cbpen_Fo4N+9c} z{g4V*Xe|)-(|*WW+JQzO>!<yY##Ux85cbo4$e!ATLLls?{gA>|WG|5Q(|*Wa+J#0S z?5F*Z23KY+5cbo4$XeQgMj-5`{g4J%W-So*(|*WW+JQzO?5F*Z23KY+5cbo4$XeQg zMj-5`_vag2nYBRJPw&sKr5$Jl!hU+cuECXA3xxf&AF`Hqpb-fBX+NaFm01gf{j?vl zmUf^K2>WS2q`{S03q<|2AF_6Kpc4rD>G@~JE435|`|0`T(pkI{Nc#D+{g4h<YAq1< z(|*WW+JQzO?5F*Z23KY+5cbpen`>zY8iA~z_Cp$5nY}>RPx~QzY8MKDte^Hn3R;l^ zfv}(ULk_H+m<xpcv>!63l{gT{`e{GpfZB;dAnd38kiu4EFA(<Ae#oBMg+d_gr~Qz^ zR%9;__S1gIp4x>%And38kiu4EFA(<Ae#oBMg+d_gr}yUzTamp$*iY}z@2OoV1j2rL zzpk(q*$agIv>&pkcA*dm`)NO<uoc-0g#EN1vZr>T5D5EeKcuh~*$YJdv>&pEcA*jo z`|0^-r7N@*2>a>z=N4MN5=i>_yZw;LR%kB}_S1gIp4x>%And38kiu4EFA(<A_nUia z7Yc!_pY}rvT9E^Ru%Grr4y>J+3uOJYA2OGfxDW{YX+Puw+l{e6*iZW*V_AU<fvlhQ zLoTe{m<xpcv>!63l{gRx`)NPqz}ktqK-f?FA#+-Z1A(xg_CpS=otO)R{j?u4r<FJm z2>WS2<iOgAxj@)Y@6XR^B@P6_etLiYz}ktqK-f?3*Uf1q4g|t}+7CIfc496N_S1gI zoL1sMAnd38kOONc<^o|q?T5^1B@P6le%cQ?kanUG2>a>zXM-!V76|+4`R7{Nfkq(d z=O6Y%8d{kHfv}(ULk_H+m<xpcv>!63l{gRx`|11518XPd0$D%phs<RqE(F4U+7G$F zc4I7%_0xXH7*^m!And38kP~f3rUGF<?T1WZef~rs>!<yY6KqGu0%1Sxhm2(fE(F4U z+7G$Fc4I6M_S1gISXSUdAnd38kPB=##sXnK?T3tI1ug`_e%cSYz;<IS5cbpi^J7_o z3xTko-k-m~c4I6M_S5@yV_AU<fv}(ULoTr07z>2`v>!5-6}S)x`)NPq0^5zTK-f?F zA!AvA3xTMg_CqeH-6#aYetP~{*oy20!hU-Gxu<ra5J>v@{XhF5FP`3gJUt$-o_~+` z|MUBN{P_Fr$Cr;!pWb}){OfPOd-Ki9uYY^*&&P-V{wZF({`Y4;5?Ba?{rp2e7s#Tu zK-kaE^|K}xTnL2yd`CYQ$fC7C*3akt5dZyI8w>UVVL!jn&)!(F7s&egydUE4&mLK_ z76|+Ki+<L`f(wDLpP%UG0$H>c$ol!bAL8Hl+E}m`2>bb$e)h(ay+GK{U-h#$mh1(> zetxB&y|H935cc!6e)h(ay+GK{&-Al5mh1(>etx8%y|H935ccx}{p^h;dx5Z@uk^Dw zmh1(>etN&ICzf0Yg#CQ!@6QFYXe|)-^DX_Xi3Jw|VLxB!=K@)@76|+Kq@Ojh;6fnk z=Rf-)-d|cMi?#w`KRy3!f#p^LVLv_pTqz5;0!crAupiR$$}I)Le%cRNI*WG#VL$DM zbi7hafv}&x-&{J2cLG^I?T2)_Qd@zrpY}tx(DIc))=&E(6|T@)And38khQb}jX>B> z`ymak%vvDpr~QyMv;&nu*iZW*m9EfMAnd38kS(-)B@p)0en_P&v=s>ZX+LBOEnf+Q z{q%lvr7N@*2>WS2WD6}{355Oh{(Pk?v=s>Z>HYaFw0tEH_S5@ym9EfMAnd38kS(-) zB@p)0en_P&v=s>ZX+LBOEnf+Q{j?ua=?ZNHqJG*B*)q$Q0%1Qr|15pQb^>8PJ^$P> zOP2ykKYz3zQtFCr1;T#X57|P?R{~)_?T1vlLR*2bpT6JRLd#bISwHQERJcNGfv}(U zL)Ov`Gy+*a?T0kBGJAorpY}uc)GibPVL$DM6t*IJfvlhQL-x`xGy-8i?T0kDGHZdb zpY}u6(hf8NVL$DMG`KQrfv}(UL)Ov`Gy-8i?T0kDGHZdbpY}u6(hf8NVL!b;-{8uu z1;T!Me||0PKqC<L)BAM|uFP5>?5F*ZwX_3`K-f?FAq}p~S|IGF{gAb^1C2n~Px~Pa zuFP5>>ZkpXwX*}AK-f>uKRaHjr9jwE&p(&W;+;U!&!6mvbhuJ$fv}(UL)Ov`Gy-8i z?T0kDGHZdbpT6H*OFPgAWc{=s(%8!E1;T#X57|?@PzYrGv>#H?iW~@p{j?u)VC}?Q zAnd38kU6cyfk4(z`ymI^P80%RKkbJUwjz6hu%Grr_S7yE0%1SxhZMFVdx5Z@_Cxm6 zE))V`KkbJUwjz6hu%Grr_S7yE0%1SBKVR62>;=MpdVhXT?Lr|C_S5@yg{{b5And38 zkUg~vg+SO(`yqv`$X+1qr~QyUwF`wn*iZW*g{{b5AnK?6kUg{ul|a}}&p#_&p{+pJ zPtQNM(DIc)($Ammhg7ygdx5Z@_Cxm6E))V`KkbJUwjz6hu%Eu)+*7+y2xR@VA5zeY z90-K{v>$R{?ZjLl>!<yYxva#6K-f?FAs5(gj0M7e+7B7a3S0<e{j?u)VeQ6TAnd38 zkU6cyfk4<#`ymI`PRs?ue%cS2(@Go&g#EN1a$xPmTp;YH{g64W#DPHAPx~PU)=ta? z!hU*xeoiZKAQ1M``|}6ZPRs?uetN%dPAhRB5cbo4$bq#JbAhm*_Cw~h5(ffdKkbJc zSUWKn2>WS2WKJt_AQ1J_e#n8e6OBOFPtQLaT$!~%*iX+t*U}C&0!crAw;$5b${YxU z{j?u)VC}?QAnd38kU6cyfk4<#-)|mRJ24l?`e{F8E-P^%5cbo4$OX0=V}Y!n_Cv<7 z0w)4tKkbK{Xge|$2>WS2WD4u^CjwbN?T4ITJ2Dms`)NO9EGuv!5cbo4$OX0=V}Y=r z_Cv<90v7^dKkbKHV7oCE2>WS2WGpLiArSV{e#iy38)Jd6pWdGz%L-fwg#GmX`~|if zV}Y=r-me?W3S0<;{j?u)f$hdvAnd38kg=@5g+SO(`ym(DZj1%Oe%cQi%L-fwME$fM zazX7zArSV{^UuOoWG@i*)AP?gwF`wn($7EahZM3R7Xo2F?T1`oyD=6B`)NO9EGuv! z5cbpen-|z_j0LiO+7B7S3Y-Xp{j?u)qV333AnT|7kg2QB-w1^Lv>$TA?aELf?5F*Z zp{tMI2xR@VA9ADZ%2Xiir~QyAtk0hag#EN1a-!|XR3Pl9{g5fF&z}f{{j?u)qV333 zAnd38kSVOsp9qBgv>$S!?Z{Lh?5FqVr?5VMA`te|`|~H-j!Xr@etN%d3hVPH0%1Sx zhn#3TG8G8>X+LBN>+>f9VL$DMoM<~T6$txjKV%B)^CtpPKkbK{SUWNo2>a>z=bTpJ zKp^a==bs1GPRs?8et!SYe#l!-?>?R$k5|vX#ryyHZ9abd{r2O_$EQzkzIp!jx8J?_ z=H=JFz4zzi!+-w}FJAxqvmXg81j2qkPu%F|f?2c_2>bcDewM&uD}k_|@95`>S-2F) z`uV&c;@|gDSZpH@_VWw<+$hVo0$D$w_e1>s*%Hew1j2s)qMr+7(OMwv=O_AE6ALZ` zvVK1Ahxqq>p)A@8g#G+WKU-nBjX>DXU-fgNEZYi%{rpNlTVc74K-kaM`nge-Z3V)9 zex{$Tu-rx<?B_@NxlxvF1;T!Qpr5U<+(sbm=PUi(D9g42VL!cJ*8<C}1j2s4^!MkA zS-2Dk`}vlBmcU{wfv}%1^mD~5TndE!eA3SnSZpN__4A+o5brOooP|4qu%DiPcDzzc zfv}&Re=eQHJAtI1KiCiHaHZA)VL$DMtfd`j1j2sW4{2~^)&gNaeZRSucAyc+`e{F; zv6a~ig#EN1vZr>T5XkyzKct`)IS>f@X+Pw^+KIV9*iZW*b6SZ5fvlhQLk_5&C<MZO z+7BsgMfL(=KkbL?sa+@p!hYHhDQrdd0%1SxhwQ0cC<MZOdOx|a71;}f{j?vlr*@$b z2>a>%`NCFYFA(<A`}2Eh7Yc!}pWd%4Y(@40VL$DM?5SNS1j2sW4=HR#_5xu)?T75C zT_^;?e%cQyY(@40Q9td6?4ez#1j2rL{#oe?Z3V)9dj7eEmahboe*S1bq_P#-3xxf& zAF`)*p%4iBX+NZ}71;}f{q+6jp4x>%AnT|7kb+j^Kp^a={g4A|C*}fKKkbLiWhE{I z!hYHhxxjW~ED-k7e#lr>;6fnlr~Qx%Yd7WsVL$DM%xNVK1j2sW4>_=QVlEK&(|*XD zR^mV)?5F*Z18XPd0%1Sxhs<du4g|t}+7CIfc496N_S5_Gb6SZ5fv}(6pFgm6VlEK& z)BAOET8RUJu%Grr4y>J+3xxf&A2O$vI1mW?X+Pw^+KIV9*iZW*b6SZ5fvBJMLk^^! zXavH3dj8qq%B%&#etQ17mUf^KNc#Dc{g8%M=0G6qr~QxvYbWLcVL$DM%xNVK1j2s$ ze)GWEiMc@5Px~QrS&0jQu%GrrF0kDg3uOJYA2Nm&I1vc@X+Pvd+mWe2*iZW*Q&^ur z5y<*!KjZ}4k+DG7Px~QbS%C|Iu%GrrF0kDg3xxf&A2OB|xDW{YX+Puw+l{e6*iZW* zV_AU<fv}(ULoTr07z>2`^#1%<R^UP)?5FqVFR<Mh3xxgje%)AB;6fnmr~Qx%Y&XUN zVL$DMjAaEb1j2sW54pg0V=NH%(|*WUR^UP)>ZkpX3u-qCfv}&Re-^ePdx5Z@o`3GC zT_^;Se*SDfq>vT45D5EeKjZ@2jj=%3Px~QbS%C|Iu%Eu)yufy2ERglne#jVB;6xzo zr~Qx<ZAYd8SwHQEOkI8cMj-5`{g4}OSB3&%KkbJMU48sUAnT|7kQ;4RrUGF<?T1WZ zef~rs?5F*Z6KzMP0%1SxhfHC8{zM?`r~Qx<ZAYd8VL$DMOksWgL?G;^{g4xFN2UT{ zKfOOch4uLpfv}(6pFh!dWGWE$)BAN(Sf4);2>WS2<V4$%sX*9I`yo?UpFa@@`)NPq zMB9<6K-f?FAyZhNKM{!fX+Pw|+L5_H*iX+t=d=<B0%1Qr|2(jEVlI&M^LP6pb6ANJ zfv}(ULr%0EnF@scv>!5s_4yNlu%Eu)JkfS!Dv<Tle#q3-=WhhUe%cSY;dW&xkoD7k z$dJ{?j|9Sg+7CJMc4j6J_S1gIjMb-)1hRhG4>{s?W+)K$(|*X%)yHoH!hYHhx#4zY zC=mA3e#p?($8Q9}e%cSY;dW&x5cbo4$k5ftZv?`A+7G$mc4a6K_S5_GLsuWa5eWO~ z{rMYiSB3&%KfPZ!boKEYfv}(ULvFZT8485`v>!5b_3;~lu%GrrZn#|;3WWW%A2M|H z@f(4tpY}s;uw5Aog#GmVb1W-xArSV{^Un)xH^u@<KcB}L{@Yh?J-z#QdOTh|{|@i} z=Xd$|@%P)0FCU*iz4_+(*WZ5k=9`ya|MuRWj}QO-GrV~H@6UcDun-9QX+LCPEZPf% z{j?v_6H6`x!hZUGb73sn3uOJYAJPj;ZUn-9+7H<v%hm!}KkbLqz=A7*u%GrrR?5Py zK-f?FAuX`nN+9c}{g4&1a4it_(|$-TEVvN}`)NO9gDhJMg#EN1QVR=i1j2sW57{8g z)&gNa?T6IDf*XObpY}sG$g;IS*iY}z*TRAufv}(6pWh(M)&gNay<b-g3vL9$e%cS& zAj{SQVL$DM)WU)rfv}(ULpI2=wLsWU`ysWk;6@<or~Qx(vFt)1?5F3S3uDn<And2- zpFOeULLlkq_y6pNylp>Z!7N$|g#G+OKTBY-l|b0f&-HV~EL;kN{d`A1OJK2;K-SOa z{Sg2CxpEfn1j2rPp`V?v)J`Dl=ktDuzdv`-(v?8i&tLSj;uTs7g#G+PKbO$rl|a_d z=lu}>zE{3NJAtsDf9dDWS-KMl`}wPWcD_<Ofv}%n>F3T_x)TWd`C30aU#Xoy*w4@O zbLTAG355OpNIyGYshvRB&kyu-=Pca`g#CP_pPjGNP9W^3_v?1d(xpJy&zJuGEP=&V z0%1Sj($5vMa48V>^M!tvz+x+bu%A!*xndSB1)_fbvmfI9rBYaIBM|n}^Un>kY%LJ> z)AP?-Sa2hd^z#S%Asb@Zg+SO(`ymTs(Ow|zr~QzgSaKl{_S5&93uDn<AnT|7kX~4F zBM|n}e#iz{wid|xX+NX}7F-F0{j?vlQWkCn!hYHhX@TWd0$D%phpdo=Yk{zz_Cso6 z!Hq!JPx~PoWZ7CE?5F*ZT3B!+5cbo4$Oc)q76|+4{p4C$a3c`*(|*VXS+*7k`|17p zT3B!+5cbpi^BZK@S|IGF_v>n5!Hq!JPx~PoWZ7CE?5F*ZT3B!+5cbo4$Oc)q76|)k zKcp5G+z3Sdv>&n|mR$&h{q+2EVJzAUg#GmVvnQ5Z2qgXd(SFE6Sac&0_S1gI23fWi z2>WS2q!t$32!#Fg{pJQ)wid|xX+NX}7F-F0{j?vlQWkCnvVPhRX?^8(0%1SxhwPZ8 zOM$ST_Crcvv7JEHPx~P|W$9KR?5F*Z7Fcd25cbo4$Vyqb6$txjKcoegTM2~yv>&ok z7H$Q?e%cRdf#p^LVL$DMtdxaYfv}(6pKpQXRsvx^y+6NF7H$Q?etN&I1(sV0g#EN1 zvQidq1;T#X4{3qrRsvx^?T4(Cg<FBJpY}sqV7Zk*)KB{%D`VkaAnd2-pFOeULLls? z=bsB>(Ow|w=TG)SdSJ<wK-f?FAuDC!Rv_%B{g4(|ZY2=*)AySzW#LvJ>!<yY)>m#P z5cbo4$c|aM6v+B%KcwUpTMC5zv>&o`7ViYYe%cS|c%_yCSwHQEESbeifv}(ULrPz< zoj}-6`yo4K=~5u<r~Q!9S8OK`_S1gIj#;`C2>WS2r1TZr355N$AF^YXE(OAVdVjw3 z7264f{q+9)j#;`C2>a>%y3$u{ClL12e#nklx)cceX+Na&7264f{j?vlW0o!j!hYHh zDSgFu0#QHhhwPB0Yk{zzo`2TDf*XObpPqkikY#Iuq@O?A52<|xcLHHQ?T74`rAvXZ zpY}saU$LD)*iYYY?wF-ZfvlhQLrPw;r9jwE`yoqb@lGJ?r~QylS86K|_S1gI7Fxa% z2>WS2q|z1I3S|AXAF_3p?*zhr+7Ib?rIrF=KkbJsoy9wWu%GrrI$o)zK-f?FAxmfR zP9W^3{g94VYAF!*(|*X(S-cYn`|17pj#p|a5cbpi^Gj#(P9W^3_v<=dsii>JPx~QD zXYo!T?5F*Zj#p|a5cbo4$kJK76A1fhKcwT8S_(w{v>&om7H<W@etQ1d0?Vxg!hU-G zxl$Hx1(JULZa<{um0Jpg{j?vlbQbRf!hYHh>3F4<0%1RWzqxc4?*y`b+7Ib;rM3cL zKkbKXq2()qte^HnDqNwpK-f?FA!}&|8iBB%_Cp$6nYBRHPx~QjXa_2Ru%GrrDqW$i zK-f?FAzNtqN+9f~{g6smXe$u*(|*VnTD}qp`)NO<(iPeYg#EN1vW1qf1j2rLf4<Tc z+6sjI^#1%7TD}qp`|16<N>^wr5cbo4$QD|@5(xWgKcvzX+6sjIv>&pCmahcDe%cSI zbcMD8Q9td6Y?<Xtfv}&Rf0n*tJAtsDo`3F`rAvXNpMTg7DRsrR0%1SxhiswcD}k_| z_CqRNp{+pJPv38Dq2()qte^HnDqNwpK-f?FA!}&|8iA~z_Cp$5nY}>RPx~QzY8MKD zu%Grr3R{uAK-N$DA$w^T8iBB%_Cp$6nYBRJPx~QjX$KmCu%Grr8eEyRK-f?FA!}&| z8iBB%_Cp$6nYBRJPx~QjX$KmCu%F(aZ*XPS0%1SBKfjiCpb-fB>HWF}S7t2`_S1gI zTH1j|And38kOo&~EfDt8e#lzdfkq(gr~QxyS7t2`_0xXH+S!3lAnd2-pB=B%QXuT7 z=buYw@lGJ==lB2YhrE1x_wn?2yn6m^-v7^U_3`8Hw;x|VK7D%g&GWCn{qD^-FTein zy+0ox{`&`c@%rDN{YYRT5ccyA{ahf6)&gNaKiAKiSa2Z__VXS6Tp)|q0$D$w_e1>m zXKgIl3xxgrLO*+B$zCAq=ktDuzdw6q$yy-n=P&wM6ALZ`!hU|Dp9^HsS|ID^^L~hb z-)m#RULfq}U;5b_OZEa`KY!KF-dM612>bb!e)h(ay+GK{*ZSETOZEa`KR?sY-dM61 z2>bbwe)h(ay+GK{5A?G)mh1(>e!kMr-dM612>a>%x}I2aArSWSrN2KH$fC7C*w450 zvnCc?2!#E7p`Qz6(OMwv=aYWc#DWWfsGtArhj@Q!p)A@8g#GmVvjvu0355Oh{Bxx& z+zKT9{K0-m%PY4O2>WS2Wa%v4355N$AJXwkEd|1U`hIiiEZzxZ{j?v_=}K({!hYHh z*+R=#0$D%phg7&iYk{zz_Cwav4m1K`KkbJ!xH4;jte^Hn*3b@A0%1Sxhg7;kTY<2j z_CvPN@|8f?Px~R2uFzH>?5F*ZEwp?k5cbpi$(63qRv_%B{g5rRd?gU})BE$4uFzH> z?5FqVx6tyHK-f?3*HyYgTY<2j_CvPN@|8f?Px~R2uFzH>?5F*ZEwp?k5cbo4NTn;Z z6^Qz2KV-`+UkZf%^!&5*7264f{q+2E$1Gh6B>nu+en_b+wiO8bX+LBOEnf+Q{j?ua z=?ZNH!hZUGa|<nB31t1WA5!58tp&n<+7DSvJJ1MZ{j?v_*vjk$!hYHh*;Bhv2!#E# zA5z$g>;<xZ+7H=FyU+-P{j?v_;L5B8!hYHhSxY<62!#E#AJX8;tOde;+7DSvJJ1M( z{j?v_;L5B8!hYHhSxY<62!#Fg{(OTgvla;Z>HYb&v;&Pm*iY}*HMlZsfv}(UL)Ov` zGy-8i?T0kDGHZdbpY}u6(hf8NVL$DMG`KQrfvBJML)Oj?bOK>NJ^$=@rIrF=KRy3k zI*WG#Nk4zGAJXAUtp&n<+7DSvJJ1M({j?v_;L5B8!hZUGb1m&aBarpeen?|0vlj^a zX+LC7?Lr}t_0xVxK`U|~5cbo4$bq#JbAhm*_Cw~h5(ffVKkbJcP&-iwg#EN1QrL>@ z1;T#X57|?@PzZ$mv>#H~itGi#e%cS&Q@c<Ig#EN1QrL>@1;T#X57|?@PzZ$m^!|Kd zE3y{|`|17pJ+%vkK-f?3*A=!Rdx5Z@_Cxm6E))V`KkbJUwjz6hu%Grr_S7yE0%1Sx zhZMFVdx5B*_Cxm2E>r?xKRy4fbcMD8VLv_p+(OG&0!crAwjWa23hf2Le%cS&Q@c<I zg#EN1QrL>@1;T#%esfRlLLrd#(|$-nD{>$Z_S1gIfwdEJfvlhQL*}v)7Xo2F?T1`o zyD=6B`)NO9EGuv!koD7k$c42VbAhm*_Cw~h5(ffdKkbJcSUWKn2>WS2WKJt_AQ1M` ze#n8f6LW#EpY}uMv=RpbVL$DM99TOs7YO_5{rNeq#DPHAPw&qkSUWKn2>a>%x;d@H zfk4<#`ymI`PRs?ue%cS2(@Go&g#EN1a$xPmTp;YH{g64W#DPH6Px~PU(oQr2VLv_p zY;a}P0%1Qr|6EHu&<G^`{M~*?Lo0J25cbo4$bq#JbAhm*_Cw~h5(ffdKYhP>VC}?Q zAnT|7kh!eHg+SO(`ym(DZj1%8e%cQi!wQ@Tg#EN1a-!|XR3Pl9{g5fF&z}fn{j?u) zg6+syAnd38kg=@5g+SO(`ym(DZj1%Oe%cQi%L-fwg#EN1a)Ir}SRm}D{gAP&z=c5A zPx~Pk*lvsk!hU*xek?0+ArSV{`|}srZj1%OetN%dEGuv!5cbo4$OX0=V}Y=r_Cv<9 z0v7^dKkbKHV7oCE2>WS2WGpLiArSS`e#iy28-+mFPtQLKTamp$*iX+t_tY*F0!csr zupd&$id+bU{j?u)f$hdvAnd38kg=@5g+SO(-)~-EyD=8X`e{F83@dOV5cbo4$ceTi zQ-Q3X_CuzwK7S(+_S1gI4Yw;pfv}(ULx!$Cej||e(|*W}wkuPCu%Grrrm#MLA`te| ze#nWoBU6E}pY}thus(kx5cbo4$ceTiQ-QFb_CuzyK7S$*_S1gIiMAtCfv}(6pP$0| z{E0x=Pw&s4Xge|$2>a>%x+$#Bp9qBgv>$S!?Z{Lh?5F*ZDXh<*2!#E#A9AAY$W$Qg zr~QyAtk0haME$fMa$@bsTp;YH=bv+0i35SKpPqjnSUWKnNc#ExKl>s7-P5~|r^n;f z^KbF~e}0>fAAi67`10}T)0=OefBo%uZ@zi?^>6R}`S|ePKg5gI|NiVp0t<n#pMU7* z0$H>c2>bcDe%8c-3xTko@95_OS+o|&`uV&c;=ey@W5He^?B^Hy*&9pt0$D$w_e1>s z*&|EV0%1RY(a)M#a3K)(^Ar7CAdA)lSwElmL;U+*8w>UVVL$)U&)!(F7YO_LtA6&z zlD$CK&#&~eH<s)L!hXKi&)!(F7YO_LnSS=hlD$CK&yV!8H<s)L!hU|BpS`hUFA(<g zm45cdlD$CKPw&_D#F7hvu%9pe{kcFEtp&n<zNMcvvEV`=?B@&pTp)|q0%1R&^s^=w zTnI${{AWMJ`%4RD(N-Yrr{|w7u-r-@?5F3SD`nwUAnE51_Cs1;xurnZPx~QDXYo!T z?5F*Zj#p|a5cbpen@eZ$P9W>2{g6&qYAX=-(|*VnTD}s<`e{F;!WCKzg#EN1vX*wB z5eWNfKcvBxSqo(Sv>&pDcAydn`)NO<(iPeYg#EN1vW1qf1j2sW52<v8wgO>4?T2ik z<tu@(pWaWdbcMD8VL$DMY@y{Vfv}(6pRaU<wgO>4y+6N&mahcDetN&I(iPeYg#EN1 zvW1qf1j2sW52<v8wgO>4?T2ik<tu@(pY}s4U7@W&)KB{%TW0xEAnd2-pQW$ZP9W^3 z=bt-f=~5u+=a2S7N?oz7K-f?FAzNtqN+9f~{g6smXe$u*)AyTOX!%MY>!<yY3Rh?? z5cbo4$XeQgMj-2_{gB31W-k!-(|*XF+J!<O?5F*Z!d7H2koD7k$X?ooMj-5`{g4J% zW-So*(|*WW+JQzO?5F*Z23KY+5cbo4$XeQgMj-5`{g4J%W-So*(|*WW+JQzO?5FqV z8(f*SK-f?3&#$E&XavH3dcUs0m01gf{j?vlmUf^K2>WS2q`{S03xxf&AF`Hqpb-fB zX+NaFm01f!{j?vlc6Oi>2>a>zXU8kG6bSq2`RCGEyc0<J`IG&S4p(X|5cbo4$XeQg zMj-5`{g4J%W-So*)AyTeX$KmCte^Hn8e5sYK-f?FA$w{U3W2Pj_CpF<kpqFSpY}rz zteuz(g#EN1GN+X|5XkyzKjeVgi9#Ukr~Qz^R%9;__S1gIp4x>%And38kiu4EFA(<A ze#oBMg+d_gr~Qz^R%9;__S1gIp4x>%And32=L=hry+GJc@6Ye4T_^;?etN&Iuoc-0 zg#EN1vZr>T5D5EeKcuh~*$agIv>&pkcA*dm`)NO<uoc-0ME$fMvWIq|5(xY0`Ddjo zv=s>Z>G|gtTD}rU`uVf{kjhqQFA(<Ae#oBMg+d_gr~Qz^R%9;__S5&9dukU7fvlhQ zLke1v1A(xg_CpS=otO(`{j?u4mzB5>2>WS2<O17`u|U{Q`ypdlfeV4GpY}s8tlgLk zg#EN1GN+X|5D5EeKjgsLiMc@7Px~QrT8RUJu%Grr4y>J+3xxf&A2O$vI1mW?X+Pw^ z+KIV9*iY}z&uJwN1j2rLfBwMQiMc@7Pw&^wX(bK>!hYHhIk0wOE)e$9e#o3w;y@tm zr~QxvYbWLcVL$DM%xNVK1fqW04>^!_q7exD>G@}aE3*~|`|0`TTH1j|AnE7t_Cp$4 znFE2apY}rzteuz(g#EN1GN+X|5D5F}`^^JuC*}fKKkbLiWhE{I!hYHhxxjW~ERgln ze#jVB;6xzor~Qx<ZAYd8VL$DMOksWgL?G*@{g4xEN5%qSKkbK%Wd$w-!hYHhxxjW~ zED-k7e#lr>;6fnmr~Qx%Y&XUNVL$DMjAaEb1j2sW54pg0V=NH%)BE#dS%C|Iu%F(a zzrc25ED-k7`*mYkfeV4KpY}s8u-zC7g#EN1GL{v%5D5EeKjZ@2jj=%3Px~QbS%C|I zsGs&jE~woo1j2rL{#n?H>;=Mpdj7emcA*eR`uT_bkV01ELLls?{g4Z6H^u^CKkbK% zWd$w-!hZUG^8(wAu|U>O`ypdkffIqSpY}sev>llWWc{=sGIjO&8-cK&_Cs#CT^S05 z{j?u4boKEYfvlhQLvFNPnF@scv>!5s_4yNlu%GrrPP84F3WWW%A2NmY`4fS#pY}se zv>llWg#EN1GKKZ|6M?Xw_Crpz9hnM*{q+9)6xQcY1j2rLfBr<<k*Pq~Pw&@FVSWBY zAnd38kP~f3rUGF<?T1WZef~rs?5F*Z6KzMP0%1SxhfHC8{zM?^r~Qx<Ye(h+VLv_p zoYP7i2!#Fg{PV!tiMc@1&+q@)4|(V5-N)18@#^`vc>h1Y&Bu?w-+p}g`1I+`H_yNR z_PaOVy!`sN_x^l*`0pR$#p{26_9KCXK-kYe^mBnMS__2z{9He4V!?$#*w1(LbAc>c z3uOI#-VgELpS7`IFA(<g3;pbkC3}IapU?Xt{{HNdC2N7OpTFp5O)R(&2>bboelCzj zYk{nv&-)?%eXorLdx5Z@f9Yp$EZGZ${rpuwdt=F7AnfN?`q>*x_5xu)U+ZUYEZGZ$ z{rpTndt=F7AnfNy`q>*x_5xu)KhV$KSh5!g`}s;gdt=F7And32>w03zg+SQPm;U}- zAdA)lVL#u}&ze|pArSWSg?=uOMQeeupHKQ(6ALZ`qJI9fAL9L`g|cWX5cbpa&lXs2 zB@p)0^UsyCa4V4X^9TDOEw9{CAnd38kfpPDClL12en`hFwG;^Z>HE#4vv?<v_0xVx zrz^D;2>WS2WD6}{31t1WA5!58tp&n<+7DSvJJ1M({j?v_;L5B8vVPhRSwlNe355N$ zA5!TGZ3V)9+7H=6%U1$nKkbK9x<Xrlu%Grrw$SpGK-f?3Cs(>cTY<2j_CvPN@|8f? zPw&rHx<Xrlu%F(a-$Kh*0%1SBUsvf0Z3V)9+7H=6%U1$nKkbK9x<Xrlu%Grrw$SpG zK-f?FA(gJsRv_x9{g5rQd?^t2)AP^LS8OK`_S5sv9kX;Pko5CM`yr*S*j6Cyr~QyE zw0tEH_S1eyr7N@*2>a>#%`LQiC6M*gen^EYv=#{aX+LBw?LZ@t_0xVxV=J>42>WS2 zWKZovArSV{en?>}vKPquX+LBy?Ls3E_S1eygDbNZ2>WS2WG(GLBM|n}en^8Wvla;Z zX+LBw?LZ?C_S1eygDbNZ2>WS2WG(GLBM|n}`|}O1%vvDqr}yXA(hf8NVL!cJ*Wk*m z1;T#X4_Qk)&<KS6v>(#o%B%&#e%cRNOFPgAg#EN1(%{Oh1)_f14_P}q&<TY7^!&5q zm0Ajf{q+2E=`7v}B>nu!en^KawH65bX+LBw?LZ?C_S1eygDbNZ2>a>#&9$@xjX>5< z`yq|3%w8bur~QyUwF`wn)=&E(1+B<|K-f?FAqUn@%mu=J+7Fr2N*oAe{j?u)K<z{! z5cbo4NMS3o7YO@lKV(nsLLm_L(|$-{E3y{|`)NO9Pwhe>5cbo4NMS3o7YO@lKV(ns zLLm_L)BE#<t;k*=?5FqV_tY*F0%1SBUsu?Q>;=Mp+7H=NyHE&({j?ua*oy20!hYHh z*;Bhv2!#E#A5z$g>;<BJ+7H=7yHE*){q+2^(iPeYg#GmVa|<nB2_*ge*?vf6E3_8~ z`)NO9Pwhe>5cbo4NMS3o7YO_5`^`PI3xz<|Px~PSt;m5u*iZW*2i8u^1+sqH51GqK zTnL2yv>$ST?Z#Lj?5F*Zv8=#_K-N$DAs5ze%mu=J+7Fr2N*oA;{j?u)VC}?QAnd38 zkU6cyfk4<#`ymI`PRs?ue%cS2(@Go&g#EN1a$xPmTp;YH_vh!d5(ffdKfOPHVC}?Q zAnd32>*ll)2LfR~?S~v#J24js`)NO9PAhRB5cbo4$bq#JbAhm*_Cw~h5(ffNKkbJc zNITI8g#GmVv%!^F3xxgj{BtesKqHX!^LP6p4Xw<9K-f?FAqUn@%mu=J+7Fr2N*oA; z{q+6jfwdEJfvlhQL*}v)7Xo2F?T1`oyD=8X`e{F83@dOV5cbo4$ceTiQ-QFb_Cuzy zK7S&R_0xXH3AQ6+fv}(UL&mZK7Xo2F?T1`oyD=6B`)NO9EGuv!5cbo4$OX0=V}Y=r z_Cv<90v7^dKkbKHV7oCE2>a>%`LV3Pg+SO(@6TUgyD=6B`|16<v8=#_K-f?FAs5(g zj0M7e+7B7a3S0<;{j?u)f$hdvAnd38kg=@5g+SC#`ym(9ZWIDxKRy2}Y(@40VLv_p z+*7+y2qgXd!+uC1D{>(a_S1gI1-2Vwfv}(UL&mZK7Xo2FeZP5u?Z#Lj>!<yYF|5Fe zK-f?FAt&07Oa-!j+7Fq!`uvSR*iZW*H{7la1;T#X4;i}p_>Dl;Px~P^+OA9m!hYHh znZo+~i9py-`ynUVj!Xr@e%cS2!utG)K-f?FAt&07Oa;Pz+7Fq+`uvGN*iZW*C)$oo z1;T!Me|`$<^CtpfKfOPHqV333And32>!z?ie<Bd}(|*W_wj)!4u%Grrrm#MLA`te| ze#nWoBU6E}pY}thus(kx5cSi3$ceQhbAhm*o`241B@P6_etQ0SVC}?QAnE7#|LlkS zm#23hPmjl|=ilP}|NJ%|KmLCE@#W*wr#Ig`|N7hS-hA`&>)+n{^YP)oe~1^a|NYsI z1Qr5eKmX9r1+r)@5cczP{j7-v7Xo2F-_g$nvS=-k_49c@#D9O*#)7>-*v~KYvp1IP z1+soV?}zyNvqzS!1;T#*qMtRf;6fnm=O_BPKo+e9vVK1AhxqrsHWus!!hZgxpS`hU zFA(<gSN-gbC3}IepI_-`Z!Fmhg#CQ2pS`hUFA(<gGyUw1C3}IepC9RGZ!Fmhg#G+L zKYL@zULfq}EB)+^C3}IepWd(Qi6s{TVLxB``*VRTS__2zd`mxTV!?$#*v}XGxj+`J z1;Tzl>1RzWxDbf?`Okic_m>vRqOCyKPtQMFV7Zk**iX+tSIWYzK+?}2?1!|xa!Y}* zpY}tR&f=Xw*iZW*9k0|<And2_H<!-hoj}%4`yrjK)K(zur~QyEw0tFy_0xVxg)6ic z2>WS2WG(GLBM|n}en^8WvlhtuX+LBQ?LZ|E_S1eyr7N@*2>WS2WD6}{355N$A5!TG zZ3V)9+7H=6%U1$nKfRw^=?ZNH!hYHh*+R=#0%1SBKVRtzZ3V)9dVhWkEnf+Q{q%la zr7N@*2>WS2WD6}{355N$A5!TGZ3V)9+7H=6%U1$nKkbK9x<XrlsGs&jw#@RSK-f>u zKTBV+oj}-6&p&s}(xpJs&mZlFl)7SDfv}(UL$=WJl|a}}`yrLC&{iPqr|&nn(DIc) z)=&E(6|T@)And38khQb}jX>5<`yq|3%w8bur~QyUwF`wn*iZW*g{{b5AnT|7kiE1E zjX>B>`ymak%vvDqr~Qz%v;&Pm*iZW*4X(^uAnd38khQb}jX>B>`ymak%vvDqr~Qz% zv;&Pm*iY}zH@Grufv}(6pI=Km&<KS6^nP7~E3*~|`)NO9E$u)f5cbo4NP{c076|)k zKV&WKKqC<L(|$;UE3+1e`e{F8?d(7&5cbpa&yH7WDG>J4^UtNTcqfqb^C$Zu9j??` zAnd38khQb}jX>B>`ymak%vvDqr|&n{(hf8NSwHQEG`2E(fv}(UL-y1z6ara4?S~Y! zA_oFtKkbJcSUWKn2>WS2WKJt_AdvObe#il}6NNz7Px~Q-t;k*=?5F*ZJ+%vkK-f?F zA%(5TULfqJ{g6Gi3xz<~Px~Q-t;k*=?5F*ZJ+%vkK-f?3&lk2Ldx5Z@-k;x7yHE&( z{q%laVJos12>WS2WKZovArSV{en?>}vKI*ZX+LC7?Lr|C_S1eyVJos1i27+iWDo5^ zB@p)0^Uq3GXe$u*)AP?Qw0tFy^z&!?A(gGrULfqJ{g6Gi3xz<~Px~Q-t;k*=?5FQH z_tY*F0$D%phZM9T2LfR~?S~v#J24l?`e{F8E-P^%5cbo4$OX0=V}Y=r_Cv<90v7^V zKkbKHSi3P72>WS2WKJt_AQ1M`e#n8f6LW#EpY}uMv=RpbVL$DM99TOs7YO@lKV(iT zaUc-((|*W-wG(rJu%F(apVLYl2!#Fg{``Tp6LW#EpWd&V(@Go&g#EN1a$xPmTp;YH z{g64W#DPHAPx~PU)=ta?!hYHhnbS%f2t@s~A95h=L?aOP)AP>;S7t2`_S5svwX_3` zK+@0O?T0k9G6w=-KkbJcSUWKn2>WS2WKJt_AQ1M`_nQaSPRs?ee%cS2%Sv1bg#EN1 za)Ir}SRm`C{g5%Nz==TEPx~P!+Kx;G!hYHhnZo+~i9ps*`ynUTj*JDue%cQi%L-fw zg#EN1a)Ir}SRm}D{gAP&z=c5APx~Pk*lvsk!hYHh8OsV>2!#E#A98{1##kWir}yW_ zvH}+ZVL!b;e}V1BSRm}D_v^;80v7^dKkbKHV7oCE2>WS2WGpLiArSV{e#iy38)Jd6 zpY}t>vH}+ZQ9td6Tu{4F2!#Fg{IjqX*$agI^!#&A?Lr}t^z#q<A%(2Sg+SO(`ym(D zZj1%Oe%cQi%L-fwg#GmW<^{GJV}Y!n_Cv<70w)4tKkbK{Xge|$$ogqNWa{ekHv(Zl z?T6fOyD}6A`)NO9=<4G)0$D%phumnpG8G8>X+LBN>+>f9VL$DMoM<~T6$txjKV%B) z^CtpfKkbK{Xge|$2>WS2WD4u^CjwzV?T4IbJ2Djr`|17pDXh<*2!#Fg{``ryBU6E} zpWd&V!utG)K-f?FAt&07Oa;Pz+7Fq+`uvGN*iZW*C)$oo1;T#X51GRH{E0x+Px~P! z){e{t!hU-GIj5C45D5F}`R9SP6LW#2pWpwpAM)Qnz5952JYGHj7VrP(xB2+-_uG#z zAD=$G`R4i8-+uSzo0nhz_THb55C8o`ym<ZZ&weDZ5D5GEhkh=QMQeeupP%bzO)R(& z2>bbtelCzjYk{nv&-)?%`?EF{>;=MpexaYev1Bih_49c@#NVGivScj~_VXA0tce8| z0%1Qt(a#04Xf2TS^LanSzwfoNU@s8%^Dq7EjU{`5u%Ex`XKyUo3xxgrN<VvJ$zCAr z=WG4!jU{`5u%DmlXKyUo3xxgrNI!dH$zCAr=Lh=P8%y>AVLxB#XKyUo3xxgjeqB#2 zxey5Z`O@E?3uMt+AnfN``dJeTE(F4UzR=GFvS=+3_VY<UYhuBLK-ABF_CvhCv``jp z1;T!M{@DV{tpvh;dj7dm7H$QSe*R!Tq~(=c3WWW%AF^~7?*zhr+7Ib?rIrF=KYhQs zbQbRfvVPhR>2#&G0%1SxhiswcD}k(^_CqRMp|wERPx~QjX$KmCu%Grr8eEyRK-N$D zA!}#{DuJ+{_CqRNp{+pJPx~QTX!%MY?5F*ZN>^wr5cbo4$QD|@5(xY0{p3nlXe$u* z(|*VnTD}qp`|17pN>^wr5cbpi^IK^7N+9f~_v<QMp{+pJPx~QTX!%MY?5F*ZN>^wr z5cbo4$QD|@5(xWgKcvzX+6qMdv>&o%mM;auetP~{`ikuY!hU-Gxnq_t1(JULXg{RX z7267g{j?vlg_f@b!hYHhsdR<50%1RWzqy5$uLQDw+7GF4h1LRLKkbLCr5$JlvVPhR zX>4Wo0%1SxhwQ0cC<MZO+7BsgMfL(&KkbL?rCn$Q!hYHhX>euM0%1SxhpeR?XavH3 z+7D@PW!3^=KkbLCr5$Jl!hYHhX>euM0%1SxhpeR?XavH3dVjvbm01gf{q+9)TH1j| zAnd32>l$2{wLsWU`yp#-2O5E}pY}r<T$!~%*iZW*YiS1>fv}(ULmFI}wLsKQ`yp#* z2RebUpPqkqyi!Ynu%DiPE}g|Yfux^5*$?S(rPcyrKkbLCr5$Jl!hYHhX>euM0%1RW zzqyunpb^OWX+NZ~mDvk~{j?vlr*@$b$ogqNq@Wc!5D5EeKjgsLiMc@7Px~QrT8RUJ zte^Hn4yc_d1j2sW4=HR#_5xu)?T75CT_^;?e%cQyY(@40VL$DM?5SNS1j2sW4=HR# z_5xu)?T75CT_^;?etLhtuoc-0g#GmX{GQr{LLls?_v;E<k-b3JPx~QzY8MKDu%Grr z3R{uAK-f?FA$w{U3W2bn_CpF=k-b3FPx~QzXcsDhu%DiPR=Pr4fv}&Re{P}WD}kh+ zKidzfY=!m$VL$DM?5SNS1j2sW4=HR#_5xu)eZRS<cA*f+`e{F;pcOd~2>WS2<iOgA zxj@!W`yq2#i3@?SpY}s8u-zC7g#EN1GL{v%5XkyzKjgyNjk!SBPx~QrT8RUJu%Grr z4y>J+3xxf&A2O$vI1mW?X+Pw^+KIV9*iZW*b6SZ5fv}(ULk_H+m<xpc^#1&uR^mV) z?5FqV53HS-3xxgje%+i_;y@tmr~QxvYbWLcVL$DM%xNVK1j2sW4>_=QVlEK&(|*XD zR^mV)>ZkpX18FB3fv}&Re>S)>Yk{zzo`0^T9cToSe*SJhq@k5L5D5EeKjgsLiMc@7 zPx~QrT8RUJu%Eu)Jg|0RE|B%pe#l%_;zA(or~Qx%Y&XUNSwHQEj9~>%1j2sW4>{3x zWGWE$(|*Vl*5^+IvVPhRIl*>hED-k7e#lr>;6fnmr~Qx%Y&XUNVL$DMjAaEb1j2sW z54pg0V=NH%(|*WUR^UP)?5F*Z3v4&W0%1SBKR=cgxDW{Y>HYZ&Y&XUNVL!cJH<lH+ z5D5EeKjZ@2jj=%3Px~QbS%C|Iu%GrrF0kDg3xxf&A2OB|xDbf?X+PwG+KoaW?5F3S zg{{b5And2-pL=Q-3W21bf7lNxWJN9n!hYHhxxjW~ED-k7e#lr>;6fnmr|&l}u-zC7 zWc{=sGKLj65eWNfKjcK)k*Pq|Px~QLSD(KT2>WS2<c8aop+MMA`yoSDAHNaE`e{Gp zM%$ICK-f?FAyZhNKM@G~X+Pvd+mWe2*iZW*Q&^ur5eWNfKjcK)k*Pq~Px~QLSf4); z2>WS2<V4$%sX*9I@6S(Ref~rs?5FqVPqZDG3WWXie%%z-=T8K}e%cQ?(RO4i5cbo4 z$Q0J+PXxk#+7CI=c4R6L_S1gI6xQcY1fqW04>_@RWG)c))AP?ct;B&q*iX+t53HS- z3ncyg{-6DjS5NOgo*s`^&%ed{|M_h`e*FFR<IBgVPj9|?{`I%tz4_+l*T22@=i|eF z{}3-;|NFBa2`mJ{e*U4K3uMt+AnfPo`dJeTE(F4UzN4QDWYJn6>*w=+i2weqjRkvw zu%BP(XKyUo3uOI#-VgEjXOApd3xxgrML%m|!G%EB&rkGofh<}JWc_^J5ApANZ7kRe zg#G+WKYL@zULfq}ulm^=OZEa`Kflt?-dM612>bb3KYL@zULfq}XZqP2OZEa`KR?pX z-dM612>bbge)h(ay+GK{SNho-OZEa`KfPbq6H6`x!hXK=_vZpxv=#{a`Idgx#DWWf zu%9pVbAc>c3xxfA($AV$a3K)&^Pl|??=LNsMO%TepPqlVz;Y{ru%DiPu9Ssafux^5 z*bixW<(2|rKkbJsoy9wWu%GrrI$o)zK-f>;Z!Vq1JAtg9_Cq>dsjWcRPx~QTX!%MY z>!<yY3Rh??5cbo4$XeQgMj-5`{g4J%W-XBQ(|*Vr+JQ<S?5F*ZN>^wr5cbo4$QD|@ z5(xWgKcvzX+6sjIv>&pCmahcDetJK-(iPeYg#EN1vW1qf1j2rLf4<Tc+6sjI^#1%7 zTD}qp`|16<N>^wr5cbo4$QD|@5(xWgKcvzX+6sjIv>&pCmahcDe%cSIbcMD8Q9td6 zY?<Xtfv}&Rf0n*tJAtsDo`3F`rAvXNpFi3UDRsrR0%1SxhiswcD}k_|_CqRNp{+pJ zPv38Dq2()qte^HnDqNwpK-f?FA!}&|8iA~z_Cp$5nY}>RPx~QzY8MKDu%Grr3R{uA zK-N$DA$w^T8iBB%_Cp$6nYBRJPx~QjX$KmCu%Grr8eEyRK-f?FA!}&|8iBB%_Cp$6 znYBRJPx~QjX$KmCu%F(aZ*XPS0%1SBKfjiCpb-fB>HWF}S7t2`_S1gITH1j|And38 zkOo&~EfDt8e#lzdfkq(gr~QxyS7t2`_0xXH+S!3lAnd2-pB=B%QXuT7=buYw@lGJ= z=TG)SI$Wu>K-f?FA!}&|8iBB%_Cp$6nYBRJPv38@r5$JlvVPhRX>4Wo0%1SxhwQ0c zC<L;8+7BscMGgeQe%cQ?uy$fD5cbo4$edQ<Kp^X<{g4A{CklbEpY}rvTamp$*iZW* zdukU7fv}(ULke4wy+GJc`yqR37Yc!}pY}rvTamp$*iZW*dukU7fv}(6pD%1h_5xu) zy+6OFcA*dm`|16<!d7H25cbo4$e!ATLLls?{gA>|WG@i*(|*XF+J!<O?5F*Z!d7H2 z5cSi3$R65-N+9f~=bx3X&{iPqr{|wrX!%MY>F3Y(Ln>RLy+GJc`yqR37Yc!}pY}rv zTamp$*iYYY?x|fU1hRhG4=HFx4g|t}+7CIfc497&_0xXHTvp;jAnd38kPB=##sXnK z?T3tI1ug`#e%cSYuy$iE5cbo4$edQ<Kp^a={g4A|C*}fSKkbLiX(bK>!hYHhIk0wO zE)e$9e#o3w;y@tmr~QxvYbWLcVL!b;Kc|&A5D5F}{rLlHC*}fSKfPZ!r<FJm2>WS2 z<iOgAxj@)Y`yq2$i35SKpY}rzteuz(g#EN1GN+X|5QzF|Kjc8#iAEsor{|vyuFP5> z?5F3SYiS1>fux_m+Yf1IWex<we%cQ?uy$fD5cbo4$edQ<Kp^a=?>7&uotO(`{j?u4 zmzB5>2>WS2<O17`u|U>O`ypdkffIqSpY}sev>llWg#EN1GKKZ|6M?Ls_Crpv9T^LR z{j?u4mKC@V2>WS2<O17`u|U{Q`ypdlfeV4KpY}s8u-zC7g#EN1GL{v%5D5EeKjZ@2 zjj=%3Pw&r<Wd$w-!hU*x{sP;Lu|U{Q@7IlG1ug`_e%cSYz;<IS5cbo4$XHh3LLls? z{g4Z6H^u^CKkbK%Wd$w-qJG*BxuABV5D5F}`DbA(vKI*Z>G|iL+J!<O>E|EzLkd}u z3xTko_CqeP-53jm{j?u4mKC@V2>a>#%?oTd#sXPC?T3tE1x^IQe%cQ?(RO4ikoD7k z$kf&6Zv?`A+7G$mc4a6K_S1gI(ACFp1hRhG54q8HWhxN%(|*Vl*5^+I!hYHhInj1x zDiHS5e#jKo=T8K}e%cQ?(RO4i5cbo4$Q0J+PXxk#+7CI=c4R6L_S5_GQ&^ur5eWO~ z{rMAZN2UT{KfPZ!h4uLpfv}(ULr%0EnF@scv>!5s_4yNlu%GrrPP84F3WWW%A2NmY z`4fStpY}setR0yPg#GmVb51L9AQ1M`^UnioC*}f4KfnKHKjeRSdiU}4c)WW4E#Cjn zZ}aiv@3$XcK0bYV^Ud?Gzy0pbH!r{b?Y%!AAO8D?c=7t*pZ!Q+ArSWS5B*#qi`D{R zKR?&cnpkil5ccyO{ahf6)&f~SpZ7!j_h)S^*b9XH{6ar_W6541>*w=+h`&F3WXW0} z?B_4~SrZE`1j2rPqMr+7(OMwu=ktDuf8T3k!CoNj=U@8S8%y>AVLyM>&)!(F7YO_L zm45cdlD$CK&)53d8%y>AVLw09&)!(F7YO_Lk$(2ZlD$CK&kyvoH<s)L!hXKe&)!(F z7YO_5{koo5av>1*^QFH(7s#TuK-kZ>^s^=wTnL2ye4(EUWYJn6?B|ny*2IDffvBJV z?1y-NX`w9I3WWXi{Idm?TM2~y^!#(BEZhnt{rtgxNXsj?6bSoiKV<1F-U)>Lv>(#( zN-YJ#e)@iM=`7v}Wc{=s(&<WV1;T#X57|P?R{~i-?T1vjLTiDrpY}u6(hf8NVL$DM zG`KQrfvlhQL)Op^R03f??T1vlLR*2bpY}tx(DIc)*iZW*m9EfMAnd38kS(-)B@p)0 z`^lBA&{iPqr~QyEw0tEH_S5_Gm9EfMAnd32=eN-El|a}}@7GnjLR*2bpY}tx(DIc) z*iZW*m9EfMAnd38kS(-)B@p)0en_P&v=xZ@X+LDkEME$Q{q+2^^cC9)g#GmVbH^-Q z3MBpf(SAs&E4CE~`)NO93oTy>g#EN1Qt1k91;T#%esc>gUkPOWv>#I83atgge%cRN zOFPgAWc{=s(%8!E1;T#X57|?@PzZ$mv>#H~itGile%cS&OS{krg#EN1(%{Oh1;T#X z4_Qk)&<KS6v>(#o%B%&#e%cRNOFPgAg#EN1(%{Oh1;T#X4_Qk)&<KS6^!|K<E3*~| z`|17pwX_3`K-f?3*EP5@Yk{zz_Cwav4m1K`KkbJ!xH4;ju%Grr*3u3%0%1Sxhcvh{ zYk{br_Cwar4s-%xKRy5Kc%_yCVLv_pTsn()0!crAvLDjnO05OLe%cRNOFPgAg#EN1 z(%{Oh1;T#%eseADKqHX#(|$-}E3+2}`)NO9Pwhe>koD7kNI@%dAQ1M`e#n8f6LW#E zpY}uMv=RpbSwHQE98fz^2!#E#A5z$g>;=Mp+7H=NyHE&({j?ua*oy20!hYHh*;Bhv z2!#E#A5z$g>;=Mp+7H=NyHE&({q+8PVJos12>a>%`8~A@g+SO(@7EQ!B71?bpY}uc z)GibPVL$DM6t*IJfv}(UL-y1z6aryC?S~Y$B71?TpY}uc&@NO0VLv_ptaOF80%1Qr z|J*{$R{}{tf3_b|*$V9i!hYHh*;Bhv2!#E#A5z$g>;=Mp`hIgy?Lr}t_0xVxK`U|~ z5cbo4$bq#JbAha%_Cw~f5*GqtKkbKHV7oCE2>WS2WGpLiA&~Xce#nKj8*_oMpY}uM zv=RpbVL$DM99TOs7YO@lKV(iTaUc-((|*W-wG(rJu%Grr=Cl$A0%1Sxha6ZtF&7B? z>HYaRt;B&q*iY}zA6Ppv7YO_5{kl1=#DPHAPx~PU)=ta?!hYHhnbS%f2!#E#A97&r z#9Sckr~QyQt;B&q)KB{%2hvV70%1Qr|7>t&)&gNaJ^x%wJJ1Lu{rug2NJA@gAQ1M` ze#n8f6LW#EpY}uMv=RpbVLyGpd0_3tTp;VG{gAn=#DzfEPx~Pk*lvskvVPhR8N&*k z2!#E#A9AAY$W$Qgr~QyAtk0haWc{=sa)Ry1SRm}D{gAP&z=c5APx~Pk*lvsk!hYHh z8OsV>2!#E#A98{1##kWir~QzztiXjp*iZW*7uar$1;T!Me|{`0a3K)()BE!m*lvsk z!hU+cZY(QsArSV{e#iy38)Jd6pY}t>vH}+ZVL$DMTwuE~76|)kKV&Q`a3K)&(|*VW zwHt*%*iX+t3tN%BK-f>uKljuw6aq;<|F9oY$ckJDg#EN1a)Ir}SRm}D{gAP&z=c5A zPv37|V7oCE$ogqNWDF~CA`te|e#nWoBU6E_pY}thu0DSw5cbo4$PKqELxHfL_CtoQ zK7J#R_0xXHjkYUOfv}(UL#D7ke<Bd}(|*W_wj)!4u%Grrrm#MLA`te|e#nWoBU6E} zpY}thus(kx5cbo4$ceTiQ-QFb-k+bs`uvGN*iY}zpJ+QW6$tz3{kkcv&z}f{{j?u) zqV333And38kSVOsp9qBgv>$S!?Z{Lh?5F*ZDXh<*2t@s~A97;t$Xp=or{|w@T8RUJ zu%DiP9#}gu7fAZ~{XhF5?>@czczQfuJ^vQ(|L3>)`0@AKk1rpeKE3(o`Pbim_vV|I zU;p;rpN|j!{X@KX{qN6yB(M+&`}v1{E|5iQfv}&S>t{_YxDW{Y`Hp@rkVR{Ote?;O zA^!WbHWus!!hU|CpS`hUFOc=~c|XM8pFOf<EfDte7yYb>1s4KgKR?mW1+r)@koEI< zKg7T9wXt9?5ccyg{p^h;dx5Z@zv^diEZGZ${rpNldt=F7AnfOB{p^h;dx5Z@pXq0B zEZGZ${rpHjdt=F7AnfM{`q>*x_5xu)U+HIWEZGZ${q%laPb|3*2>bcc-=7O)(OMwv z=Ue(&6ALZ`!hXKc&jqq*EfDteNk401!G%E7&wutqyuY+i7HtK>etQ1d0?Vxg!hU-G zxl$Hx1(JULU_Yegm0Jpg{j?vlbQbRf!hYHh>3F4<0%1RWzqxc4?*y`b+7Ib;rM3cL zKkbKXq2()qte^HnDqNwpK-f?FA!}&|8iBB%_Cp$6nYBRHPx~QjXa_2Ru%GrrDqW$i zK-f?FAzNtqN+9f~{g6smXe$u*(|*VnTD}qp`|17UN>^wr5cbo4$QD|@5(xY0{rO5) zXe$u*)BE#VX!%MY?5FqZDqW$iK-f?FAzNtqN+9f~{g6smXe$u*(|*VnTD}qp`)NO< z(iPeYME$fMvSpSp1;T!M{#p8p?F7Ppdj7d%mM#U7e*S1bq|_DL3WWW%AF_p(uLQz= z+7GF8g|-4=KYhQsg_f@bvVPhRsc?nX0%1SxhpeR?Xaur;+7D@LW%dGLKkbL?sa+@p z!hYHhDQrdd0$D%phwP<YXavH3+7D@PW!3^=KkbLCr5$Jl!hYHhX>euM0%1SxhpeR? zXavH3+7D@PW!3^=KkbLCr5$Jl!hU*xzQL7Q3xxgj{`^|nfkq(gr}yg`T$!~%*iZW* zYiS1>fv}(ULmFI}wLsWU`yp#-2O5E}pY}r<T$!~%)KB{%Yi9>Kfv}&Re|Ef5OM$ST zo_{W##XEtdpFi0T>2Rgi0%1SxhpeR?XavH3+7D@PW!3^=KYhQsmUf^K$ogqNq_LIR z3xxf&AF`)*p%BRWX+NZ(6*&+H`)NPqz}ktqK-f?FA#+-Z1A(lc_CpS+ohSste%cQy zY(@40VL$DM?5SNS1j2sW4=HR#_5xu)?T75CT_^;?e%cQyY(@40VL$DM?5SNS1j2rL zf4;C4*$agI^#1&w+J!<O?5FqZ3R{uAK-f?FA$w{U3W2bn_CpF=k-b3JPx~QzY8MKD zu%Grr3R{uAK-5qBA$w>SDuJ+{o_|)lLR*2bpPqkiq2()qq@O?A52<X0_5xu)?T75C zT_^;?e%cQyY(@40VLyGpxu<ra5XkyzKct`)IS>f@X+Pw^+KIV9)=&E(b6JTCfv}(U zLoTr07z>2`v>!5-6}S+{`e{Gp!rG0wK-f?FA#+-Z1A(xg_CpS=otO)R{j?u4r<FJm z2>WS2<iOgAxj@)Y`yq2$i35SKpY}rzteuz(g#GmX{G3+eKp^a=_va6+otO)R{q%m_ zoL1sMAnd38kOONc<^o|q?T5^1B@P6_e%cQ?uy$fD5cbo4$edQ<Kp^U;{g4A`CmMmU zpPqj<xH4;ju%DiPuB9Dl1d@LKZa<`<l{pXy`)NPqz}ktqK-f?FA#+-Z1A(xgzTZ5s zc497&_0xXHTvp;jAnd38kPB=##sXPC?T3tE1x^IQe%cQ?(RO4i5cbo4$Q0J+PXw}l z+7CIwc4RCN_S1gISXSUdAnd38kPB=##sXnK?T3tI1ug`_e%cSYz;<IS5cbo4$XHh3 zLLls?{g4Z6H^u^CKfOOcmKC@V2>a>%`3r0}#sXnKy<az$6}S)x`)NPq0^5zTK-f?F zA!AvA3xTko_CqeP-53jm{j?u4mKC@Vi27+i<bv9bLLls?=bweG$X+1qr{|x0Y8MKD zq@RD-4=H3tE(F4U+7G$Fc4I6M_S1gISXSUdAnd2_H!rZ=7z<?mv>!5t6*v(H`)NPq zMB9<6K-N$DAyZeMzYz%gX+PwK+m)d}*iZW*LsuWa5y<*!KjcQ+m8n43Px~QLSf4); z2>WS2<V4$%sX*9I`yo?UpFa@@`)NPqMB9<6K-f?FAyZhNKM@G~X+Pvd+mWe2*iY}z zPhoxjL?G;^_vcTv9hnM*{q%m_6xQcY1j2sW4>{3xWGWE$(|*Vl*5^+I!hYHhInj1x wDiHS5e#jKo=T8Kpe%cQ?v36uG5cbpa&pEBcfk4<#&p!{WotO*!|Mm0#1tT0aE&u=k literal 0 HcmV?d00001 diff --git a/cmor/mpiesm/scripts/ncatted_CS.sh b/cmor/mpiesm/scripts/ncatted_CS.sh index 7d3422b..94fa9c0 100644 --- a/cmor/mpiesm/scripts/ncatted_CS.sh +++ b/cmor/mpiesm/scripts/ncatted_CS.sh @@ -101,9 +101,10 @@ echo $HISTORY echo ${TABLE_INFO[@]} echo "-------------------------" -exp_id=transient-deglaciation-interactive_r1i1p2f1-CR +exp_id=transient-deglaciation-interactive_r1i1p3f1-CR ifolder=/work/kd1292/ESGF_Buff/k204212/palmod_CS/${exp_id}/PalMod2/ +#ifolder=/work/kd1292/ESGF_PalMod/PalMod2/MPI-M/MPI-ESM1-2-1-CR/transient-deglaciation-interactive/r1i1p7f2/ ifiles=($(find $ifolder -type f)) echo ${#ifiles[@]} files found. @@ -115,9 +116,11 @@ echo $i $ifile memberid=$(echo $ifile | rev | cut -d '/' -f 1 | rev | cut -d '_' -f 5) physics_index=${memberid:5:1} forcing_index=${memberid:7:1} + #forcing_index=2 realization_index=${memberid:1:1} init_index=${memberid:3:1} variantlabel=r${realization_index}i${init_index}p${physics_index}f${forcing_index} + #variantlabel=r1i1p7f2 uuid="hdl:21.14105/$(uuidgen)" # Run ncatted @@ -126,6 +129,8 @@ echo $i $ifile #ncatted -O -h -a tracking_id,global,m,c,"$uuid" $ifile || echo "ERROR $ifile" #ncatted -O -h -a parent_experiment_id,global,m,c,"${PARENTEXPID}" -a source,global,m,c,"$SOURCE" -a references,global,m,c,"$REFERENCES" -a variant_info,global,m,c,"${VARIANT_INFO[$physics_index]}" -a table_info,global,m,c,"${TABLE_INFO[$table]}" -a data_specs_version,global,m,c,${dreqversion} -a history,global,m,c,"$HISTORY" -a creation_date,global,m,c,"$CREATION_DATE" -a Conventions,global,m,c,"$CONVENTIONS" -a title,global,m,c,"$TITLE" -a tracking_id,global,m,c,"$uuid" $ifile || echo "ERROR $ifile" #ncatted -O -h -a history,global,m,c,"$HISTORY" -a creation_date,global,m,c,"$CREATION_DATE" $ifile || echo "ERROR $ifile" + #ncatted -O -h -a forcing_index,global,m,c,"$forcing_index" -a variant_label,global,m,c,"$memberid" $ifile || echo "ERROR $ifile" + ncatted -O -h -a comment,global,m,c,"The data for several variables for the time period 24621-24630 (i.e. 381-370 BP) was lost due to a hardware failure and is substituted with _FillValue." $ifile || echo "ERROR $ifile" # Adjust filename timestamp if [[ "$table" != *"fx"* ]]; then diff --git a/cmor/mpiesm/scripts/palmod2_aggregation_MPI-ESM1-2_echam6.h b/cmor/mpiesm/scripts/palmod2_aggregation_MPI-ESM1-2_echam6.h index 05864f4..10964e6 100644 --- a/cmor/mpiesm/scripts/palmod2_aggregation_MPI-ESM1-2_echam6.h +++ b/cmor/mpiesm/scripts/palmod2_aggregation_MPI-ESM1-2_echam6.h @@ -33,21 +33,37 @@ suf=grb #-- interpolation onto plev19(plus): echam: mon: ta,ua,va,hus,wap,zg,hur cl_echammon_plev19="130,131,132,133,135,156,157" { (if_requested -s $member $atmmod echammonplev19 interpolation $chunk && { - ifile=$sdir/${RAW_EXP_IDS[$y]}_echam6_echam_$period.$suf - ofile=$sdir/out_aggr/${RAW_EXP_IDS[$y]}_echam6_echammon_plev19_$period.$suf; rm -f $ofile + ifile=$sdir/${RAW_EXP_IDS[$y]}_echam6_echam_$period.$suf + ofile=$sdir/out_aggr/${RAW_EXP_IDS[$y]}_echam6_echammon_plev19_$period.$suf; rm -f $ofile + # If data is missing + if_requested $member $atmmod FillerFiles FillerFiles $chunk && { + # For missing-value time steps, add custom created input file + echo "WARNING (Chunk: '$chunk' time-step: '$period'): Using filler file to make up for missing/lost data!" + ifile_missing=$SCRIPT_DIR/missing_value_echam6_echammon_plev19.grb + $cdo settaxis,${period}0115,000000,1month $ifile_missing $ofile || echo "ERROR: set up filler file $ifile_missing as $ofile" + } || { + # If data is not missing $cdozg afterburner $ifile $ofile <<EOF || echo ERROR &SELECT CODE=${cl_echammon_plev19},LEVEL=$plev19plus,FORMAT=1,TYPE=30 &end EOF - }; )& ; }>$err.echammon.plev19 2>&1 + }; }; )& ; }>$err.echammon.plev19 2>&1 #-- afterburner diagnostic: echam: mon: ua, va, psl { (if_requested -s $member $atmmod echammonafter afterburner $chunk && { - ifile=$sdir/${RAW_EXP_IDS[$y]}_echam6_echam_$period.$suf - ofile=$sdir/out_aggr/${RAW_EXP_IDS[$y]}_echam6_echammon_after_$period.$suf; rm -f $ofile + ifile=$sdir/${RAW_EXP_IDS[$y]}_echam6_echam_$period.$suf + ofile=$sdir/out_aggr/${RAW_EXP_IDS[$y]}_echam6_echammon_after_$period.$suf; rm -f $ofile + # If data is missing + if_requested $member $atmmod FillerFiles FillerFiles $chunk && { + # For missing-value time steps, add custom created input file + echo "WARNING (Chunk: '$chunk' time-step: '$period'): Using filler file to make up for missing/lost data!" + ifile_missing=$SCRIPT_DIR/missing_value_echam6_echammon_after.grb + $cdo settaxis,${period}0115,000000,1month $ifile_missing $ofile || echo "ERROR: set up filler file $ifile_missing as $ofile" + } || { + # If data is not missing $cdozg afterburner $ifile $ofile <<EOF || echo ERROR &SELECT CODE=131,132,134,151,FORMAT=1,TYPE=20 &end EOF - }; )& ; }>$err.echammon.after 2>&1 + }; }; )& ; }>$err.echammon.after 2>&1 diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p1f1-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p1f1-CR.runpp index 344e4cc..b266011 100755 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p1f1-CR.runpp +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p1f1-CR.runpp @@ -49,9 +49,11 @@ EXP_DIR_TRUNK=/work/kd1292/ESGF_Buff/k204212/palmod_CS/transient-deglaciation-in #initial files for aggregation INPUT_DIR_TRUNK=/work/bk1192/WP1.1/MPIM_transient_deglaciation_synchronous +INPUT_DIR_TRUNK=/work/ba0989/m300792/ArchRetrieval/coupled_paper/pmo0007 # RAW Data - path and sub-simulations RAW_EXP_DIR_TRUNK=/work/bk1192/WP1.1/MPIM_transient_deglaciation_synchronous +RAW_EXP_DIR_TRUNK=/work/ba0989/m300792/ArchRetrieval/coupled_paper/pmo0007 # As usually the Experiment is composed of several sub-simulations, define them as array RAW_EXP_IDS=( pmo0007a pmo0007b pmo0007c pmo0007d ) # Parent experiment that the first RAW_EXP_ID branched from diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p3f1-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p3f1-CR.runpp index a2a0352..8c84cf1 100755 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p3f1-CR.runpp +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p3f1-CR.runpp @@ -706,7 +706,7 @@ then run_cmor fi else - Read_request_config $rrc_option AllExp ${cpath}/${mip}_requested_vars_AllExp_ISM_SLM$SUFFIX.conf || die "error while reading request config" + Read_request_config $rrc_option AllExp ${cpath}/${mip}_requested_vars_AllExp_ISM_SLM_r1i1p3f1$SUFFIX.conf || die "error while reading request config" $RUN_AGG && run_agg || echo "Could not run agg" $RUN_DIAGS && run_diag || echo "Could not run diag" $RUN_CMOR && run_cmor || echo "Could not run cmor" diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p4f2-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p4f2-CR.runpp index 3a86230..7a6f68a 100755 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p4f2-CR.runpp +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p4f2-CR.runpp @@ -49,6 +49,7 @@ EXP_DIR_TRUNK=/work/kd1292/ESGF_Buff/k204212/palmod_CS/transient-deglaciation-in #initial files for aggregation INPUT_DIR_TRUNK=/work/bk1192/WP1.1/MPIM_transient_deglaciation_synchronous +INPUT_DIR_TRUNK=/work/ba0989/m300792/ArchRetrieval/coupled_paper/pmo0016 # RAW Data - path and sub-simulations RAW_EXP_DIR_TRUNK=/work/bk1192/WP1.1/MPIM_transient_deglaciation_synchronous diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.cmor_ctl b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f2-CR.cmor_ctl similarity index 94% rename from cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.cmor_ctl rename to cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f2-CR.cmor_ctl index 9219e11..980f814 100755 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.cmor_ctl +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f2-CR.cmor_ctl @@ -40,7 +40,7 @@ do done done -rm -f cmor_ctl_list_interactive_synch_r1i1p5f1 +rm -f cmor_ctl_list_interactive_synch_r1i1p5f2 in=0 for i in $(seq $((iniyear-iniyear)) $chunksize $((finyear-iniyear))) do @@ -50,15 +50,15 @@ do ui=$(echo ${paramarr[$((i-1))]} | cut -d " " -f1) uy=$(echo ${paramarr[$((i-1))]} | cut -d " " -f2) in=$i - echo "$li $ui $ly $uy" >> cmor_ctl_list_interactive_synch_r1i1p5f1 + echo "$li $ui $ly $uy" >> cmor_ctl_list_interactive_synch_r1i1p5f2 done [[ $i -ne $((finyear-iniyear)) ]] && { li=$(echo ${paramarr[$in]} | cut -d " " -f1) ly=$(echo ${paramarr[$in]} | cut -d " " -f2) ui=$(echo ${paramarr[$((finyear-iniyear))]} | cut -d " " -f1) uy=$(echo ${paramarr[$((finyear-iniyear))]} | cut -d " " -f2) - echo "$li $ui $ly $uy" >> cmor_ctl_list_interactive_synch_r1i1p5f1 + echo "$li $ui $ly $uy" >> cmor_ctl_list_interactive_synch_r1i1p5f2 } -make -k -j 19 -f transient-deglaciation-interactive_r1i1p5f1-CR.cmor_ctl.mk "$@" +make -k -j 19 -f transient-deglaciation-interactive_r1i1p5f2-CR.cmor_ctl.mk "$@" diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.cmor_ctl.mk b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f2-CR.cmor_ctl.mk similarity index 83% rename from cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.cmor_ctl.mk rename to cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f2-CR.cmor_ctl.mk index 6c9b4c9..d147e8d 100755 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.cmor_ctl.mk +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f2-CR.cmor_ctl.mk @@ -1,4 +1,4 @@ -EXP_ID = transient-deglaciation-interactive_r1i1p7f1-CR +EXP_ID = transient-deglaciation-interactive_r1i1p5f2-CR ACCOUNT = bm0021 PARTITION = compute @@ -7,7 +7,7 @@ SUFFIX = ARCHIVE_SUFFIX = TARGET_STEP=cmor -NUMCHUNKS=$(shell cat cmor_ctl_list_interactive_synch_r1i1p7f1 | wc -l ) +NUMCHUNKS=$(shell cat cmor_ctl_list_interactive_synch_r1i1p5f2 | wc -l ) AGGR_TIME = 00:30:00 DIAGS_TIME = 01:00:00 @@ -31,14 +31,14 @@ all: @echo "$(MESSAGE) finished" targets/$(EXP_ID).aggr$(SUFFIX).%: - sbatch $(SBATCHFLAGS) --time=$(AGGR_TIME) --job-name=$(EXP_ID)_runpp_aggr$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -A $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p7f1) + sbatch $(SBATCHFLAGS) --time=$(AGGR_TIME) --job-name=$(EXP_ID)_runpp_aggr$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -A $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p5f2) @touch $@ targets/$(EXP_ID).diags$(SUFFIX).%: targets/$(EXP_ID).aggr$(SUFFIX).% - sbatch $(SBATCHFLAGS) --time=$(DIAGS_TIME) --job-name=$(EXP_ID)_runpp_diag$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -d $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p7f1) + sbatch $(SBATCHFLAGS) --time=$(DIAGS_TIME) --job-name=$(EXP_ID)_runpp_diag$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -d $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p5f2) @touch $@ targets/$(EXP_ID).cmor$(SUFFIX).%: targets/$(EXP_ID).diags$(SUFFIX).% - sbatch $(SBATCHFLAGS) --time=$(CMOR_TIME) --job-name=$(EXP_ID)_runpp_cmor$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -c $(CMOR_FLAGS) $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p7f1) + sbatch $(SBATCHFLAGS) --time=$(CMOR_TIME) --job-name=$(EXP_ID)_runpp_cmor$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -c $(CMOR_FLAGS) $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p5f2) @touch $@ diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f2-CR.runpp similarity index 98% rename from cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.runpp rename to cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f2-CR.runpp index 184c572..9cd5682 100755 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.runpp +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f2-CR.runpp @@ -13,7 +13,7 @@ #SBATCH --account=bm0021 #SBATCH --qos=esgf #SBATCH --exclusive -#SBATCH --output=transient-deglaciation-interactive_r1i1p5f1-CR.runpp_%j.log +#SBATCH --output=transient-deglaciation-interactive_r1i1p5f2-CR.runpp_%j.log DEBUG_LEVEL=${DEBUG_LEVEL:-0} @@ -43,15 +43,17 @@ alias ncatted=/sw/spack-levante/nco-5.0.6-3xkdth/bin/ncatted ######################################### #Root directory of all scripts, outdata, logs etc -EXP_ID=transient-deglaciation-interactive_r1i1p5f1-CR -#EXP_DIR_TRUNK=/work/bk1192/k204212/palmod_CS/transient-deglaciation-interactive_r1i1p5f1-CR -EXP_DIR_TRUNK=/work/kd1292/ESGF_Buff/k204212/palmod_CS/transient-deglaciation-interactive_r1i1p5f1-CR +EXP_ID=transient-deglaciation-interactive_r1i1p5f2-CR +#EXP_DIR_TRUNK=/work/bk1192/k204212/palmod_CS/transient-deglaciation-interactive_r1i1p5f2-CR +EXP_DIR_TRUNK=/work/kd1292/ESGF_Buff/k204212/palmod_CS/transient-deglaciation-interactive_r1i1p5f2-CR #initial files for aggregation INPUT_DIR_TRUNK=/work/bk1192/WP1.1/MPIM_transient_deglaciation_synchronous +INPUT_DIR_TRUNK=/work/ba0989/m300792/ArchRetrieval/coupled_paper/pmo0018 # RAW Data - path and sub-simulations RAW_EXP_DIR_TRUNK=/work/bk1192/WP1.1/MPIM_transient_deglaciation_synchronous +RAW_EXP_DIR_TRUNK=/work/ba0989/m300792/ArchRetrieval/coupled_paper/pmo0018 # As usually the Experiment is composed of several sub-simulations, define them as array RAW_EXP_IDS=( pmo0018a pmo0018b pmo0018c pmo0018d ) # Parent experiment that the first RAW_EXP_ID branched from @@ -124,7 +126,7 @@ chunks+=([vilmadec]=" 0 ") # Define here the "cdocmorinfo"-File or "eum"-Files # Multiple files possible with "," as delimiter, eg: # it=expinfo.txt,userinfo.txt,modelinfo.txt -it_temp="${SCRIPT_ROOT}/transient-deglaciation-interactive_r1i1p5f1-CR_cdocmorinfo" +it_temp="${SCRIPT_ROOT}/transient-deglaciation-interactive_r1i1p5f2-CR_cdocmorinfo" ca+=([mpiom]="${SCRIPT_ROOT}/cdocmorinfo_mpiom_CR") ca+=([echam6]="${SCRIPT_ROOT}/cdocmorinfo_echam6_CR") ca+=([jsbach]="${SCRIPT_ROOT}/cdocmorinfo_jsbach_CR") @@ -133,7 +135,7 @@ ca+=([vilma]="${SCRIPT_ROOT}/cdocmorinfo_vilma_CR") #Experiment etc experiment=transient-deglaciation-interactive -member=r1i1p5f1 +member=r1i1p5f2 mip=PalMod2 vd=v20250105 #vd=v$(date '+%Y%m%d') #CMOR version directory name, should be a date in format YYYYMMDD diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR_cdocmorinfo b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f2-CR_cdocmorinfo similarity index 99% rename from cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR_cdocmorinfo rename to cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f2-CR_cdocmorinfo index dc4ab0b..ae4beb8 100644 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR_cdocmorinfo +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f2-CR_cdocmorinfo @@ -11,11 +11,11 @@ _history_template="%s ; CMOR rewrote data to be consistent with <activity_id>, < EXPERIMENT_ID=transient-deglaciation-interactive EXPERIMENT="synchronously coupled transient deglaciation with interactive ice sheets and solid earth" #Specify VARIANT_LABEL explicitly or realization_index, physics_index, initialization_index and forcing_index: -VARIANT_LABEL=r1i1p5f1 +VARIANT_LABEL=r1i1p5f2 REALIZATION_INDEX=1 INITIALIZATION_INDEX=1 PHYSICS_INDEX=5 -FORCING_INDEX=1 +FORCING_INDEX=2 VARIANT_INFO="The data are from a synchronously coupled model simulation of the last deglaciation with the MPI-ESM1.2.1-CR-mPISM-VILMA setup, hence, including interactive ice sheets and solid earth components. GHG forcing is after Koehler et al. (2017), Orbit after Berger (1978). Equivalent to p4 but with the atmosphere tuning of p1. The simulation was forced with time-varying volcanic forcing (Schindlbeck-Belo et al., 2024)." COMMENT="Earth viscosity configuration for the solid earth model VILMA. The vertical viscosity structure is piecewise constant for the following specified layers of the earth: (1) 0 to 3.480000e+06 m from earth core: 1.000000e+19 Pa s. (2) 3.480000e+06 to 5.701000e+06 m from earth core: 1.000000e+22 Pa s. (3) 5.701000e+06 to 6.291000e+06 m from earth core: 4.000000e+20 Pa s. (4) 6.291000e+06 to 6.371000e+06 m from earth core: 1.000000e+30 Pa s." ACTIVITY_ID=PalMod2 diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.cmor_ctl b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f2-CR.cmor_ctl similarity index 94% rename from cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.cmor_ctl rename to cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f2-CR.cmor_ctl index 5dcb81d..30f4d58 100755 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.cmor_ctl +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f2-CR.cmor_ctl @@ -40,7 +40,7 @@ do done done -rm -f cmor_ctl_list_interactive_synch_r1i1p7f1 +rm -f cmor_ctl_list_interactive_synch_r1i1p6f2 in=0 for i in $(seq $((iniyear-iniyear)) $chunksize $((finyear-iniyear))) do @@ -50,15 +50,15 @@ do ui=$(echo ${paramarr[$((i-1))]} | cut -d " " -f1) uy=$(echo ${paramarr[$((i-1))]} | cut -d " " -f2) in=$i - echo "$li $ui $ly $uy" >> cmor_ctl_list_interactive_synch_r1i1p7f1 + echo "$li $ui $ly $uy" >> cmor_ctl_list_interactive_synch_r1i1p6f2 done [[ $i -ne $((finyear-iniyear)) ]] && { li=$(echo ${paramarr[$in]} | cut -d " " -f1) ly=$(echo ${paramarr[$in]} | cut -d " " -f2) ui=$(echo ${paramarr[$((finyear-iniyear))]} | cut -d " " -f1) uy=$(echo ${paramarr[$((finyear-iniyear))]} | cut -d " " -f2) - echo "$li $ui $ly $uy" >> cmor_ctl_list_interactive_synch_r1i1p7f1 + echo "$li $ui $ly $uy" >> cmor_ctl_list_interactive_synch_r1i1p6f2 } -make -k -j 19 -f transient-deglaciation-interactive_r1i1p7f1-CR.cmor_ctl.mk "$@" +make -k -j 19 -f transient-deglaciation-interactive_r1i1p6f2-CR.cmor_ctl.mk "$@" diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.cmor_ctl.mk b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f2-CR.cmor_ctl.mk similarity index 83% rename from cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.cmor_ctl.mk rename to cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f2-CR.cmor_ctl.mk index 45db8f6..fcd51a1 100755 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.cmor_ctl.mk +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f2-CR.cmor_ctl.mk @@ -1,4 +1,4 @@ -EXP_ID = transient-deglaciation-interactive_r1i1p5f1-CR +EXP_ID = transient-deglaciation-interactive_r1i1p6f2-CR ACCOUNT = bm0021 PARTITION = compute @@ -7,7 +7,7 @@ SUFFIX = ARCHIVE_SUFFIX = TARGET_STEP=cmor -NUMCHUNKS=$(shell cat cmor_ctl_list_interactive_synch_r1i1p5f1 | wc -l ) +NUMCHUNKS=$(shell cat cmor_ctl_list_interactive_synch_r1i1p6f2 | wc -l ) AGGR_TIME = 00:30:00 DIAGS_TIME = 01:00:00 @@ -31,14 +31,14 @@ all: @echo "$(MESSAGE) finished" targets/$(EXP_ID).aggr$(SUFFIX).%: - sbatch $(SBATCHFLAGS) --time=$(AGGR_TIME) --job-name=$(EXP_ID)_runpp_aggr$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -A $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p5f1) + sbatch $(SBATCHFLAGS) --time=$(AGGR_TIME) --job-name=$(EXP_ID)_runpp_aggr$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -A $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p6f2) @touch $@ targets/$(EXP_ID).diags$(SUFFIX).%: targets/$(EXP_ID).aggr$(SUFFIX).% - sbatch $(SBATCHFLAGS) --time=$(DIAGS_TIME) --job-name=$(EXP_ID)_runpp_diag$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -d $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p5f1) + sbatch $(SBATCHFLAGS) --time=$(DIAGS_TIME) --job-name=$(EXP_ID)_runpp_diag$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -d $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p6f2) @touch $@ targets/$(EXP_ID).cmor$(SUFFIX).%: targets/$(EXP_ID).diags$(SUFFIX).% - sbatch $(SBATCHFLAGS) --time=$(CMOR_TIME) --job-name=$(EXP_ID)_runpp_cmor$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -c $(CMOR_FLAGS) $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p5f1) + sbatch $(SBATCHFLAGS) --time=$(CMOR_TIME) --job-name=$(EXP_ID)_runpp_cmor$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -c $(CMOR_FLAGS) $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p6f2) @touch $@ diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f2-CR.runpp similarity index 98% rename from cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.runpp rename to cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f2-CR.runpp index f5b31a2..f0dfbd5 100755 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.runpp +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f2-CR.runpp @@ -13,7 +13,7 @@ #SBATCH --account=bm0021 #SBATCH --qos=esgf #SBATCH --exclusive -#SBATCH --output=transient-deglaciation-interactive_r1i1p6f1-CR.runpp_%j.log +#SBATCH --output=transient-deglaciation-interactive_r1i1p6f2-CR.runpp_%j.log DEBUG_LEVEL=${DEBUG_LEVEL:-0} @@ -43,15 +43,17 @@ alias ncatted=/sw/spack-levante/nco-5.0.6-3xkdth/bin/ncatted ######################################### #Root directory of all scripts, outdata, logs etc -EXP_ID=transient-deglaciation-interactive_r1i1p6f1-CR -#EXP_DIR_TRUNK=/work/bk1192/k204212/palmod_CS/transient-deglaciation-interactive_r1i1p6f1-CR -EXP_DIR_TRUNK=/work/kd1292/ESGF_Buff/k204212/palmod_CS/transient-deglaciation-interactive_r1i1p6f1-CR +EXP_ID=transient-deglaciation-interactive_r1i1p6f2-CR +#EXP_DIR_TRUNK=/work/bk1192/k204212/palmod_CS/transient-deglaciation-interactive_r1i1p6f2-CR +EXP_DIR_TRUNK=/work/kd1292/ESGF_Buff/k204212/palmod_CS/transient-deglaciation-interactive_r1i1p6f2-CR #initial files for aggregation INPUT_DIR_TRUNK=/work/bk1192/WP1.1/MPIM_transient_deglaciation_synchronous +INPUT_DIR_TRUNK=/work/ba0989/m300792/ArchRetrieval/coupled_paper/pmo0019 # RAW Data - path and sub-simulations RAW_EXP_DIR_TRUNK=/work/bk1192/WP1.1/MPIM_transient_deglaciation_synchronous +RAW_EXP_DIR_TRUNK=/work/ba0989/m300792/ArchRetrieval/coupled_paper/pmo0019 # As usually the Experiment is composed of several sub-simulations, define them as array RAW_EXP_IDS=( pmo0019a pmo0019b pmo0019c pmo0019d ) # Parent experiment that the first RAW_EXP_ID branched from @@ -124,7 +126,7 @@ chunks+=([vilmadec]=" 0 ") # Define here the "cdocmorinfo"-File or "eum"-Files # Multiple files possible with "," as delimiter, eg: # it=expinfo.txt,userinfo.txt,modelinfo.txt -it_temp="${SCRIPT_ROOT}/transient-deglaciation-interactive_r1i1p6f1-CR_cdocmorinfo" +it_temp="${SCRIPT_ROOT}/transient-deglaciation-interactive_r1i1p6f2-CR_cdocmorinfo" ca+=([mpiom]="${SCRIPT_ROOT}/cdocmorinfo_mpiom_CR") ca+=([echam6]="${SCRIPT_ROOT}/cdocmorinfo_echam6_CR") ca+=([jsbach]="${SCRIPT_ROOT}/cdocmorinfo_jsbach_CR") @@ -133,7 +135,7 @@ ca+=([vilma]="${SCRIPT_ROOT}/cdocmorinfo_vilma_CR") #Experiment etc experiment=transient-deglaciation-interactive -member=r1i1p6f1 +member=r1i1p6f2 mip=PalMod2 vd=v20250105 #vd=v$(date '+%Y%m%d') #CMOR version directory name, should be a date in format YYYYMMDD diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR_cdocmorinfo b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f2-CR_cdocmorinfo similarity index 99% rename from cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR_cdocmorinfo rename to cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f2-CR_cdocmorinfo index 35081f1..2b2e100 100644 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR_cdocmorinfo +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f2-CR_cdocmorinfo @@ -11,11 +11,11 @@ _history_template="%s ; CMOR rewrote data to be consistent with <activity_id>, < EXPERIMENT_ID=transient-deglaciation-interactive EXPERIMENT="synchronously coupled transient deglaciation with interactive ice sheets and solid earth" #Specify VARIANT_LABEL explicitly or realization_index, physics_index, initialization_index and forcing_index: -VARIANT_LABEL=r1i1p6f1 +VARIANT_LABEL=r1i1p6f2 REALIZATION_INDEX=1 INITIALIZATION_INDEX=1 PHYSICS_INDEX=6 -FORCING_INDEX=1 +FORCING_INDEX=2 VARIANT_INFO="The data are from a synchronously coupled model simulation of the last deglaciation with the MPI-ESM1.2.1-CR-mPISM-VILMA setup, hence, including interactive ice sheets and solid earth components. GHG forcing is after Koehler et al. (2017), Orbit after Berger (1978). Equivalent to p4 but with brighter albedo parameters. The simulation was forced with time-varying volcanic forcing (Schindlbeck-Belo et al., 2024)." COMMENT="Earth viscosity configuration for the solid earth model VILMA. The vertical viscosity structure is piecewise constant for the following specified layers of the earth: (1) 0 to 3.480000e+06 m from earth core: 1.000000e+19 Pa s. (2) 3.480000e+06 to 5.701000e+06 m from earth core: 1.000000e+22 Pa s. (3) 5.701000e+06 to 6.291000e+06 m from earth core: 4.000000e+20 Pa s. (4) 6.291000e+06 to 6.371000e+06 m from earth core: 1.000000e+30 Pa s." ACTIVITY_ID=PalMod2 diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.cmor_ctl b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f2-CR.cmor_ctl similarity index 94% rename from cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.cmor_ctl rename to cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f2-CR.cmor_ctl index edaf15a..c3d9e75 100755 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.cmor_ctl +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f2-CR.cmor_ctl @@ -40,7 +40,7 @@ do done done -rm -f cmor_ctl_list_interactive_synch_r1i1p6f1 +rm -f cmor_ctl_list_interactive_synch_r1i1p7f2 in=0 for i in $(seq $((iniyear-iniyear)) $chunksize $((finyear-iniyear))) do @@ -50,15 +50,15 @@ do ui=$(echo ${paramarr[$((i-1))]} | cut -d " " -f1) uy=$(echo ${paramarr[$((i-1))]} | cut -d " " -f2) in=$i - echo "$li $ui $ly $uy" >> cmor_ctl_list_interactive_synch_r1i1p6f1 + echo "$li $ui $ly $uy" >> cmor_ctl_list_interactive_synch_r1i1p7f2 done [[ $i -ne $((finyear-iniyear)) ]] && { li=$(echo ${paramarr[$in]} | cut -d " " -f1) ly=$(echo ${paramarr[$in]} | cut -d " " -f2) ui=$(echo ${paramarr[$((finyear-iniyear))]} | cut -d " " -f1) uy=$(echo ${paramarr[$((finyear-iniyear))]} | cut -d " " -f2) - echo "$li $ui $ly $uy" >> cmor_ctl_list_interactive_synch_r1i1p6f1 + echo "$li $ui $ly $uy" >> cmor_ctl_list_interactive_synch_r1i1p7f2 } -make -k -j 19 -f transient-deglaciation-interactive_r1i1p6f1-CR.cmor_ctl.mk "$@" +make -k -j 19 -f transient-deglaciation-interactive_r1i1p7f2-CR.cmor_ctl.mk "$@" diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.cmor_ctl.mk b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f2-CR.cmor_ctl.mk similarity index 83% rename from cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.cmor_ctl.mk rename to cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f2-CR.cmor_ctl.mk index f162769..dcbd83e 100755 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.cmor_ctl.mk +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f2-CR.cmor_ctl.mk @@ -1,4 +1,4 @@ -EXP_ID = transient-deglaciation-interactive_r1i1p6f1-CR +EXP_ID = transient-deglaciation-interactive_r1i1p7f2-CR ACCOUNT = bm0021 PARTITION = compute @@ -7,7 +7,7 @@ SUFFIX = ARCHIVE_SUFFIX = TARGET_STEP=cmor -NUMCHUNKS=$(shell cat cmor_ctl_list_interactive_synch_r1i1p6f1 | wc -l ) +NUMCHUNKS=$(shell cat cmor_ctl_list_interactive_synch_r1i1p7f2 | wc -l ) AGGR_TIME = 00:30:00 DIAGS_TIME = 01:00:00 @@ -31,14 +31,14 @@ all: @echo "$(MESSAGE) finished" targets/$(EXP_ID).aggr$(SUFFIX).%: - sbatch $(SBATCHFLAGS) --time=$(AGGR_TIME) --job-name=$(EXP_ID)_runpp_aggr$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -A $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p6f1) + sbatch $(SBATCHFLAGS) --time=$(AGGR_TIME) --job-name=$(EXP_ID)_runpp_aggr$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -A $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p7f2) @touch $@ targets/$(EXP_ID).diags$(SUFFIX).%: targets/$(EXP_ID).aggr$(SUFFIX).% - sbatch $(SBATCHFLAGS) --time=$(DIAGS_TIME) --job-name=$(EXP_ID)_runpp_diag$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -d $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p6f1) + sbatch $(SBATCHFLAGS) --time=$(DIAGS_TIME) --job-name=$(EXP_ID)_runpp_diag$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -d $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p7f2) @touch $@ targets/$(EXP_ID).cmor$(SUFFIX).%: targets/$(EXP_ID).diags$(SUFFIX).% - sbatch $(SBATCHFLAGS) --time=$(CMOR_TIME) --job-name=$(EXP_ID)_runpp_cmor$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -c $(CMOR_FLAGS) $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p6f1) + sbatch $(SBATCHFLAGS) --time=$(CMOR_TIME) --job-name=$(EXP_ID)_runpp_cmor$(SUFFIX) --output=%x_%j.log --comment=$* $(EXP_ID).runpp -s '$(SUFFIX)' -S '$(ARCHIVE_SUFFIX)' -c $(CMOR_FLAGS) $(shell sed -n '$(*)'p < cmor_ctl_list_interactive_synch_r1i1p7f2) @touch $@ diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f2-CR.runpp similarity index 98% rename from cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.runpp rename to cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f2-CR.runpp index d9548f8..f2ee477 100755 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.runpp +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f2-CR.runpp @@ -13,7 +13,7 @@ #SBATCH --account=bm0021 #SBATCH --qos=esgf #SBATCH --exclusive -#SBATCH --output=transient-deglaciation-interactive_r1i1p7f1-CR.runpp_%j.log +#SBATCH --output=transient-deglaciation-interactive_r1i1p7f2-CR.runpp_%j.log DEBUG_LEVEL=${DEBUG_LEVEL:-0} @@ -43,15 +43,17 @@ alias ncatted=/sw/spack-levante/nco-5.0.6-3xkdth/bin/ncatted ######################################### #Root directory of all scripts, outdata, logs etc -EXP_ID=transient-deglaciation-interactive_r1i1p7f1-CR -#EXP_DIR_TRUNK=/work/bk1192/k204212/palmod_CS/transient-deglaciation-interactive_r1i1p7f1-CR -EXP_DIR_TRUNK=/work/kd1292/ESGF_Buff/k204212/palmod_CS/transient-deglaciation-interactive_r1i1p7f1-CR +EXP_ID=transient-deglaciation-interactive_r1i1p7f2-CR +#EXP_DIR_TRUNK=/work/bk1192/k204212/palmod_CS/transient-deglaciation-interactive_r1i1p7f2-CR +EXP_DIR_TRUNK=/work/kd1292/ESGF_Buff/k204212/palmod_CS/transient-deglaciation-interactive_r1i1p7f2-CR #initial files for aggregation INPUT_DIR_TRUNK=/work/bk1192/WP1.1/MPIM_transient_deglaciation_synchronous +INPUT_DIR_TRUNK=/work/ba0989/m300792/ArchRetrieval/coupled_paper/pmo0020 # RAW Data - path and sub-simulations RAW_EXP_DIR_TRUNK=/work/bk1192/WP1.1/MPIM_transient_deglaciation_synchronous +RAW_EXP_DIR_TRUNK=/work/ba0989/m300792/ArchRetrieval/coupled_paper/pmo0020 # As usually the Experiment is composed of several sub-simulations, define them as array RAW_EXP_IDS=( pmo0020a pmo0020b pmo0020c pmo0020d ) # Parent experiment that the first RAW_EXP_ID branched from @@ -124,7 +126,7 @@ chunks+=([vilmadec]=" 0 ") # Define here the "cdocmorinfo"-File or "eum"-Files # Multiple files possible with "," as delimiter, eg: # it=expinfo.txt,userinfo.txt,modelinfo.txt -it_temp="${SCRIPT_ROOT}/transient-deglaciation-interactive_r1i1p7f1-CR_cdocmorinfo" +it_temp="${SCRIPT_ROOT}/transient-deglaciation-interactive_r1i1p7f2-CR_cdocmorinfo" ca+=([mpiom]="${SCRIPT_ROOT}/cdocmorinfo_mpiom_CR") ca+=([echam6]="${SCRIPT_ROOT}/cdocmorinfo_echam6_CR") ca+=([jsbach]="${SCRIPT_ROOT}/cdocmorinfo_jsbach_CR") @@ -133,7 +135,7 @@ ca+=([vilma]="${SCRIPT_ROOT}/cdocmorinfo_vilma_CR") #Experiment etc experiment=transient-deglaciation-interactive -member=r1i1p7f1 +member=r1i1p7f2 mip=PalMod2 vd=v20250105 #vd=v$(date '+%Y%m%d') #CMOR version directory name, should be a date in format YYYYMMDD diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR_cdocmorinfo b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f2-CR_cdocmorinfo similarity index 99% rename from cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR_cdocmorinfo rename to cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f2-CR_cdocmorinfo index c0cb990..eb60a6a 100644 --- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR_cdocmorinfo +++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f2-CR_cdocmorinfo @@ -11,11 +11,11 @@ _history_template="%s ; CMOR rewrote data to be consistent with <activity_id>, < EXPERIMENT_ID=transient-deglaciation-interactive EXPERIMENT="synchronously coupled transient deglaciation with interactive ice sheets and solid earth" #Specify VARIANT_LABEL explicitly or realization_index, physics_index, initialization_index and forcing_index: -VARIANT_LABEL=r1i1p7f1 +VARIANT_LABEL=r1i1p7f2 REALIZATION_INDEX=1 INITIALIZATION_INDEX=1 PHYSICS_INDEX=7 -FORCING_INDEX=1 +FORCING_INDEX=2 VARIANT_INFO="The data are from a synchronously coupled model simulation of the last deglaciation with the MPI-ESM1.2.1-CR-mPISM-VILMA setup, hence, including interactive ice sheets and solid earth components. GHG forcing is after Koehler et al. (2017), Orbit after Berger (1978). Equivalent to p4 but with decreased basal sliding near the grounding line. The simulation was forced with time-varying volcanic forcing (Schindlbeck-Belo et al., 2024)." COMMENT="Earth viscosity configuration for the solid earth model VILMA. The vertical viscosity structure is piecewise constant for the following specified layers of the earth: (1) 0 to 3.480000e+06 m from earth core: 1.000000e+19 Pa s. (2) 3.480000e+06 to 5.701000e+06 m from earth core: 1.000000e+22 Pa s. (3) 5.701000e+06 to 6.291000e+06 m from earth core: 4.000000e+20 Pa s. (4) 6.291000e+06 to 6.371000e+06 m from earth core: 1.000000e+30 Pa s." ACTIVITY_ID=PalMod2 -- GitLab