From d30a44cfe5785bba070b5e28ea8cb5c8980b0399 Mon Sep 17 00:00:00 2001 From: Paul Sharp <44529197+DrPaulSharp@users.noreply.github.com> Date: Fri, 1 Dec 2023 10:39:37 +0000 Subject: [PATCH] Unify variable naming convention (#182) * Renames contrasts variables in target functions * Renames fields in "problemDef" struct * Replaces "nbair" with "bulkIn and "nbsub" with "bulkOut" * Renames variables in tests * Changes "sf" to "scalefactor" in target functions * Changes "qshift" to "qzshift" in target functions * Tidies up "backSort.m" routine * Renames "nba" and "nbs" to "bulkIn" and "bulkOut" respectively in target functions * Restores use of "nba" and "nbs" as inputs in "processCustomFuncion.m" to address bug * Renames "nba" and "nbs" to "bulkIn" and "bulkOut" respectively in utilities * Fixes typos * Addresses review comments and fixes bugs * Tidies up code --- 3rdParty/mcmcstat/%runDram.m | 10 +- API/RATMain.m | 10 +- API/parseClassToStructs.m | 12 +- API/parseOutToProjectClass.m | 51 +-- compile/fullCompile/makeCompileArgsFull.m | 12 +- .../reflectivityCalculation/makeCompileArgs.m | 12 +- minimisers/generalUtils/checkBounds.m | 18 +- minimisers/generalUtils/packParams.m | 345 +++++++------- minimisers/generalUtils/packParamsPriors.m | 421 +++++++++--------- minimisers/generalUtils/unpackParams.m | 270 +++++------ minimisers/simplex/runSimplex.m | 10 +- .../+domainsTF/+customLayers/calculate.m | 26 +- .../+customLayers/parallelContrasts.m | 32 +- .../+domainsTF/+customLayers/parallelPoints.m | 32 +- .../+customLayers/processCustomFunction.m | 28 +- .../+domainsTF/+customLayers/single.m | 32 +- .../+domainsTF/+customXY/calculate.m | 26 +- .../+domainsTF/+customXY/parallelContrasts.m | 26 +- .../+domainsTF/+customXY/parallelPoints.m | 26 +- .../+customXY/processCustomFunction.m | 14 +- targetFunctions/+domainsTF/+customXY/single.m | 26 +- .../+domainsTF/+standardLayers/calculate.m | 26 +- .../+standardLayers/parallelContrasts.m | 28 +- .../+standardLayers/parallelPoints.m | 28 +- .../+domainsTF/+standardLayers/single.m | 28 +- .../+domainsTF/reflectivityCalculation.m | 10 +- .../+nonPolarisedTF/+customLayers/calculate.m | 26 +- .../+customLayers/parallelContrasts.m | 30 +- .../+customLayers/parallelPoints.m | 30 +- .../+customLayers/processCustomFunction.m | 14 +- .../+nonPolarisedTF/+customLayers/single.m | 30 +- .../+nonPolarisedTF/+customXY/calculate.m | 26 +- .../+customXY/parallelContrasts.m | 24 +- .../+customXY/parallelPoints.m | 24 +- .../+customXY/processCustomFunction.m | 10 +- .../+nonPolarisedTF/+customXY/single.m | 24 +- .../+standardLayers/calculate.m | 26 +- .../+standardLayers/parallelContrasts.m | 26 +- .../+standardLayers/parallelPoints.m | 26 +- .../+nonPolarisedTF/+standardLayers/single.m | 26 +- .../+nonPolarisedTF/coreLayersCalculation.m | 22 +- .../+nonPolarisedTF/reflectivityCalculation.m | 10 +- targetFunctions/common/backSort.m | 91 ++-- .../callReflectivity/callReflectivity.m | 8 +- .../customModelFunctions/callCppFunction.m | 6 +- targetFunctions/common/extractProblemParams.m | 32 +- .../common/groupLayers/groupLayersMod.m | 12 +- .../groupLayers/groupLayersModImaginary.m | 12 +- .../common/makeSLDProfiles/makeSLDProfileXY.m | 10 +- .../common/makeSLDProfiles/makeSLDProfiles.m | 4 +- targetFunctions/common/shiftData.m | 38 +- targetFunctions/reflectivityCalculation.m | 20 +- .../domainsCustomLayersInputs.mat | Bin 10882 -> 10874 bytes .../domainsCustomLayersOutputs.mat | Bin 71958 -> 72002 bytes .../domainsCustomLayersTFParams.mat | Bin 19494 -> 19600 bytes .../domainsCustomXYInputs.mat | Bin 11004 -> 11001 bytes .../domainsCustomXYOutputs.mat | Bin 100429 -> 100491 bytes .../domainsCustomXYTFParams.mat | Bin 30718 -> 30850 bytes .../domainsStandardLayersInputs.mat | Bin 11582 -> 11577 bytes .../domainsStandardLayersOutputs.mat | Bin 69033 -> 69091 bytes .../domainsStandardLayersTFParams.mat | Bin 19137 -> 19231 bytes .../makeDomainsInputsAndOutputs.m | 48 +- .../testDomainsReflectivityCalculations.m | 126 +++--- .../customLayersInputs.mat | Bin 27706 -> 27712 bytes .../customLayersOutputs.mat | Bin 65404 -> 65462 bytes .../customLayersTFParams.mat | Bin 14808 -> 15077 bytes .../customXYInputs.mat | Bin 10717 -> 10713 bytes .../customXYOutputs.mat | Bin 211169 -> 211240 bytes .../customXYTFParams.mat | Bin 67914 -> 67947 bytes .../makeInputsAndOutputs.m | 60 +-- .../standardLayersInputs.mat | Bin 29265 -> 29271 bytes .../standardLayersOutputs.mat | Bin 66407 -> 66548 bytes .../standardLayersTFParams.mat | Bin 14722 -> 14981 bytes .../testReflectivityCalculations.m | 112 ++--- tests/testProjectClass.m | 8 +- .../DSPCBilayerProjectClass.mat | Bin 12590 -> 12590 bytes .../monolayerVolumeModelProjectClass.mat | Bin 14896 -> 14896 bytes utilities/misc/projectClassToR1.m | 10 +- utilities/plotting/plotRefSLDHelper.m | 6 +- 79 files changed, 1232 insertions(+), 1304 deletions(-) diff --git a/3rdParty/mcmcstat/%runDram.m b/3rdParty/mcmcstat/%runDram.m index ea9934224..dee7564dc 100644 --- a/3rdParty/mcmcstat/%runDram.m +++ b/3rdParty/mcmcstat/%runDram.m @@ -71,12 +71,12 @@ % Pre-processor directives for Matlab Coder. coder.varsize('problem.ssubs',[Inf 1],[1 0]); -coder.varsize('problem.backgrounds',[Inf 1],[1 0]); -coder.varsize('problem.qshifts',[Inf 1],[1 0]); +coder.varsize('problem.backgroundParams',[Inf 1],[1 0]); +coder.varsize('problem.qzshifts',[Inf 1],[1 0]); coder.varsize('problem.scalefactors',[Inf 1],[1 0]); -coder.varsize('problem.nbairs',[Inf 1],[1 0]); -coder.varsize('problem.nbsubs',[Inf 1],[1 0]); -coder.varsize('problem.resolutions',[Inf 1],[1 0]); +coder.varsize('problem.bulkIn',[Inf 1],[1 0]); +coder.varsize('problem.bulkOut',[Inf 1],[1 0]); +coder.varsize('problem.resolutionParams',[Inf 1],[1 0]); coder.varsize('problem.ssubs',[Inf 1],[1 0]); coder.varsize('problem.calculations.all_chis',[Inf 1],[1 0]); coder.varsize('problem.calculations.sum_chi',[1 1],[0 0]); diff --git a/API/RATMain.m b/API/RATMain.m index 11d2651f7..e32415670 100644 --- a/API/RATMain.m +++ b/API/RATMain.m @@ -9,12 +9,12 @@ preAlloc = zeros(numberOfContrasts,1); problem = struct('ssubs',preAlloc,... - 'backgrounds',preAlloc,... - 'qshifts',preAlloc,... + 'backgroundParams',preAlloc,... + 'qzshifts',preAlloc,... 'scalefactors',preAlloc,... - 'nbairs',preAlloc,... - 'nbsubs',preAlloc,... - 'resolutions',preAlloc,... + 'bulkIn',preAlloc,... + 'bulkOut',preAlloc,... + 'resolutionParams',preAlloc,... 'calculations',struct('all_chis',preAlloc,'sum_chi',0),... 'allSubRough',preAlloc,... 'resample',preAlloc); diff --git a/API/parseClassToStructs.m b/API/parseClassToStructs.m index 3304f444f..c3db5504d 100644 --- a/API/parseClassToStructs.m +++ b/API/parseClassToStructs.m @@ -319,12 +319,12 @@ problemDef.contrastBulkIns = inputStruct.contrastBulkIns; problemDef.contrastBulkOuts = inputStruct.contrastBulkOuts; problemDef.contrastResolutions = contrastRes; -problemDef.backs = inputStruct.backgroundParamValues; %inputStruct.backgrounds; % **** note backPar workaround (todo) **** -problemDef.shifts = inputStruct.qzshiftValues; -problemDef.sf = inputStruct.scalefactorValues; -problemDef.nba = inputStruct.bulkInValues; -problemDef.nbs = inputStruct.bulkOutValues; -problemDef.res = inputStruct.resolutionParamValues; %inputStruct.resolutions; % **** note resolutionParam workaround (todo) **** +problemDef.backgroundParams = inputStruct.backgroundParamValues; %inputStruct.backgrounds; % **** note backPar workaround (todo) **** +problemDef.qzshifts = inputStruct.qzshiftValues; +problemDef.scalefactors = inputStruct.scalefactorValues; +problemDef.bulkIn = inputStruct.bulkInValues; +problemDef.bulkOut = inputStruct.bulkOutValues; +problemDef.resolutionParams = inputStruct.resolutionParamValues; %inputStruct.resolutions; % **** note resolutionParam workaround (todo) **** problemDef.params = inputStruct.paramValues; problemDef.numberOfLayers = inputStruct.numberOfLayers; problemDef.modelType = inputStruct.modelType; diff --git a/API/parseOutToProjectClass.m b/API/parseOutToProjectClass.m index 6ebd0498e..17dd6f318 100644 --- a/API/parseOutToProjectClass.m +++ b/API/parseOutToProjectClass.m @@ -1,51 +1,52 @@ function outProblemDef = parseOutToProjectClass(problemDefInput,outProblemStruct) - %Reconstruct the problemDef class as an output %Using the outputs from the calculation(s) outProblemDef = problemDefInput; %(1) Parameters -pars = outProblemStruct.params; -for i = 1:length(pars) - outProblemDef.setParameterValue(i,pars(i)); +params = outProblemStruct.params; +for i = 1:length(params) + outProblemDef.setParameterValue(i,params(i)); end %(2) Backgrounds -backs = outProblemStruct.backs; -for i = 1:length(backs) - outProblemDef.setBackgroundParamValue(i,backs(i)); +backgroundParams = outProblemStruct.backgroundParams; +for i = 1:length(backgroundParams) + outProblemDef.setBackgroundParamValue(i,backgroundParams(i)); end %(3) Scalefactors -scales = outProblemStruct.sf; -for i = 1:length(scales) - outProblemDef.setScalefactor(i,'value',scales(i)); +scalefactors = outProblemStruct.scalefactors; +for i = 1:length(scalefactors) + outProblemDef.setScalefactor(i,'value',scalefactors(i)); end %(4) Qzshifts -% shifts = outProblemStruct.shifts; -% outProblemDef.qzshifts = shifts; +qzshifts = outProblemStruct.qzshifts; +for i = 1:length(qzshifts) + outProblemDef.setQzshift(i,'value',qzshifts(i)); +end -%(4) Nbairs -nbairs = outProblemStruct.nba; -for i = 1:length(nbairs) - outProblemDef.setBulkIn(i,'value',nbairs(i)); +%(5) Bulk In +bulkIns = outProblemStruct.bulkIn; +for i = 1:length(bulkIns) + outProblemDef.setBulkIn(i,'value',bulkIns(i)); end -%(5) Nbsubs -nbsubs = outProblemStruct.nbs; -for i = 1:length(nbsubs) - outProblemDef.setBulkOut(i,'value',nbsubs(i)); +%(6) Bulk Out +bulkOuts = outProblemStruct.bulkOut; +for i = 1:length(bulkOuts) + outProblemDef.setBulkOut(i,'value',bulkOuts(i)); end -%(5) Resolutions -resol = outProblemStruct.res; -for i = 1:length(resol) - outProblemDef.setResolutionParam(i,'value',resol(i)); +%(7) Resolutions +resolutionParams = outProblemStruct.resolutionParams; +for i = 1:length(resolutionParams) + outProblemDef.setResolutionParam(i,'value',resolutionParams(i)); end -% (6) Domain ratio +% (8) Domain ratio if strcmpi(outProblemStruct.TF,'domains') domainRatios = outProblemStruct.domainRatio; for i = 1:length(domainRatios) diff --git a/compile/fullCompile/makeCompileArgsFull.m b/compile/fullCompile/makeCompileArgsFull.m index 23c2c5b03..80722c9ea 100644 --- a/compile/fullCompile/makeCompileArgsFull.m +++ b/compile/fullCompile/makeCompileArgsFull.m @@ -23,12 +23,12 @@ ARGS_1_1.contrastBulkIns = coder.typeof(0,[1 maxArraySize],[0 1]); ARGS_1_1.contrastBulkOuts = coder.typeof(0,[1 maxArraySize],[0 1]); ARGS_1_1.contrastResolutions = coder.typeof(0,[1 maxArraySize],[0 1]); -ARGS_1_1.backs = coder.typeof(0,[1 maxArraySize],[0 1]); -ARGS_1_1.shifts = coder.typeof(0,[1 maxArraySize],[0 1]); -ARGS_1_1.sf = coder.typeof(0,[1 maxArraySize],[0 1]); -ARGS_1_1.nba = coder.typeof(0,[1 maxArraySize],[0 1]); -ARGS_1_1.nbs = coder.typeof(0,[1 maxArraySize],[0 1]); -ARGS_1_1.res = coder.typeof(0,[1 maxArraySize],[0 1]); +ARGS_1_1.backgroundParams = coder.typeof(0,[1 maxArraySize],[0 1]); +ARGS_1_1.qzshifts = coder.typeof(0,[1 maxArraySize],[0 1]); +ARGS_1_1.scalefactors = coder.typeof(0,[1 maxArraySize],[0 1]); +ARGS_1_1.bulkIn = coder.typeof(0,[1 maxArraySize],[0 1]); +ARGS_1_1.bulkOut = coder.typeof(0,[1 maxArraySize],[0 1]); +ARGS_1_1.resolutionParams = coder.typeof(0,[1 maxArraySize],[0 1]); ARGS_1_1.params = coder.typeof(0,[1 maxArraySize],[0 1]); ARGS_1_1.numberOfLayers = coder.typeof(0); ARGS_1_1.modelType = coder.typeof('X',[1 maxArraySize],[0 1]); diff --git a/compile/reflectivityCalculation/makeCompileArgs.m b/compile/reflectivityCalculation/makeCompileArgs.m index 3eecfc89e..f1b376b0f 100644 --- a/compile/reflectivityCalculation/makeCompileArgs.m +++ b/compile/reflectivityCalculation/makeCompileArgs.m @@ -23,12 +23,12 @@ ARGS_1_1.contrastBulkIns = coder.typeof(0,[1 maxArraySize],[0 1]); ARGS_1_1.contrastBulkOuts = coder.typeof(0,[1 maxArraySize],[0 1]); ARGS_1_1.contrastResolutions = coder.typeof(0,[1 maxArraySize],[0 1]); -ARGS_1_1.backs = coder.typeof(0,[1 maxArraySize],[0 1]); -ARGS_1_1.shifts = coder.typeof(0,[1 maxArraySize],[0 1]); -ARGS_1_1.sf = coder.typeof(0,[1 maxArraySize],[0 1]); -ARGS_1_1.nba = coder.typeof(0,[1 maxArraySize],[0 1]); -ARGS_1_1.nbs = coder.typeof(0,[1 maxArraySize],[0 1]); -ARGS_1_1.res = coder.typeof(0,[1 maxArraySize],[0 1]); +ARGS_1_1.backgroundParams = coder.typeof(0,[1 maxArraySize],[0 1]); +ARGS_1_1.qzshifts = coder.typeof(0,[1 maxArraySize],[0 1]); +ARGS_1_1.scalefactors = coder.typeof(0,[1 maxArraySize],[0 1]); +ARGS_1_1.bulkIn = coder.typeof(0,[1 maxArraySize],[0 1]); +ARGS_1_1.bulkOut = coder.typeof(0,[1 maxArraySize],[0 1]); +ARGS_1_1.resolutionParams = coder.typeof(0,[1 maxArraySize],[0 1]); ARGS_1_1.params = coder.typeof(0,[1 maxArraySize],[0 1]); ARGS_1_1.numberOfLayers = coder.typeof(0); ARGS_1_1.modelType = coder.typeof('X',[1 maxArraySize],[0 1]); diff --git a/minimisers/generalUtils/checkBounds.m b/minimisers/generalUtils/checkBounds.m index 9ad1493f6..62617fea3 100644 --- a/minimisers/generalUtils/checkBounds.m +++ b/minimisers/generalUtils/checkBounds.m @@ -9,23 +9,23 @@ fitWhichBacks = problem.fitBackgrounds; fittingBacks = problem.backs(find(fitWhichBacks)); -fittingBacksConstr = problem.backs_constr(find(fitWhichBacks),:); +fittingBacksConstr = problem.backgroundParamLimits(find(fitWhichBacks),:); fittingBacksNames = problem.backgroundParamNames(find(fitWhichBacks)); fitWhichScales = problem.fitScalefactor; fittingScales = problem.scalefac(find(fitWhichScales)); -fittingScalesConstr = problem.scale_constr(find(fitWhichScales),:); -fittingScalesNames = problem.scalesNames(find(fitWhichScales)); +fittingScalesConstr = problem.scalefactorLimits(find(fitWhichScales),:); +fittingScalesNames = problem.scalefactorNames(find(fitWhichScales)); fitWhichShifts = problem.fitQzshift; -fittingShifts = problem.shifts_horisontal(find(fitWhichShifts)); -fittingShiftsConstr = problem.shifts_constr(find(fitWhichShifts),:); -fittingShiftsNames = problem.shiftsNames(find(fitWhichShifts)); +fittingShifts = problem.qzshifts(find(fitWhichShifts)); +fittingShiftsConstr = problem.qzshiftLimit(find(fitWhichShifts),:); +fittingShiftsNames = problem.qzshiftNames(find(fitWhichShifts)); fitWhichNbas = problem.fitBulkIn; -fittingNbas = problem.nba(find(fitWhichNbas)); -fittingNbaConstr = problem.nbairs_constr(find(fitWhichNbas),:); -fittingNbaNames = problem.nbaNames(find(fitWhichNbas)); +fittingNbas = problem.bulkIn(find(fitWhichNbas)); +fittingNbaConstr = problem.bulkInLimits(find(fitWhichNbas),:); +fittingNbaNames = problem.bulkInNames(find(fitWhichNbas)); fittingParams = [fittingParams(:) ; fittingBacks(:) ; fittingScales(:) ; fittingShifts(:) ; fittingNbas(:)]; diff --git a/minimisers/generalUtils/packParams.m b/minimisers/generalUtils/packParams.m index c68cd8dcc..98bb641e6 100644 --- a/minimisers/generalUtils/packParams.m +++ b/minimisers/generalUtils/packParams.m @@ -1,192 +1,169 @@ function [problemDef,fitNames] = packParams(problemDef,problemDefCells,limits,checks) -%Separate out the params array into fitting -%and unfitting arrays. - - -%problem = getappdata(0,'problem'); - -% controls.checks.fitParam = ones(length(problem.params),1); -% controls.checks.fitBackgroundParam = ones(length(problem.backs),1); -% controls.checks.fitScalefactor = ones(length(problem.scalefac),1); -% controls.checks.fitBulkIn = ones(length(problem.nba),1); -% controls.checks.fitBulkOut = ones(length(problem.nbs),1); -% controls.checks.fitResolutionParam = ones(length(problem.resolution),1); - -% calculation.limits.param = problem.constr; -% calculation.limits.backgroundParam = problem.backs_constr; -% calculation.limits.scalefactor = problem.scale_constr; -% calculation.limits.qzshift = problem.shifts_constr; -% calculation.limits.bulkIn = problem.nbairs_constr; -% calculation.limits.bulkOut = problem.nbsubs_constr; -% calculation.limits.resolutionParam = problem.resolution_constr; - - - -%We need to pack the parameters into seperate vectors -%of those that are being fitted, and those that are -%held constant. -numberOfFitted = sum(checks.fitParam) + ... - sum(checks.fitBackgroundParam) + ... - sum(checks.fitScalefactor) + ... - sum(checks.fitQzshift) + ... - sum(checks.fitBulkIn) + ... - sum(checks.fitBulkOut) + ... - sum(checks.fitResolutionParam) + ... - sum(checks.fitDomainRatio); - -numberOfTotal = length(problemDef.params) + ... - length(problemDef.backs) + ... - length(problemDef.sf) + ... - length(problemDef.shifts) + ... - length(problemDef.nba) + ... - length(problemDef.nbs) + ... - length(problemDef.res) + ... - length(problemDef.domainRatio); - -fitpars = problemDef.fitpars;%zeros(numberOfFitted,1); -otherpars = zeros((numberOfTotal-numberOfFitted),1); -fitconstr = zeros(numberOfFitted,2); -otherconstr = zeros((numberOfTotal-numberOfFitted),2); -%limits = problemDef.limits; -fitNames = cell(numberOfFitted,1); -for i = 1:numberOfFitted - fitNames{i} = ''; -end - -fitCounter = 1; -otherCounter = 1; -for n = 1:length(checks.fitParam) - if checks.fitParam(n) == 1 - fitpars(fitCounter) = problemDef.params(n); - fitconstr(fitCounter,1) = limits.param(n,1); - fitconstr(fitCounter,2) = limits.param(n,2); - fitNames{fitCounter} = problemDefCells{7}{n}; - fitCounter = fitCounter + 1; - - else - otherpars(otherCounter) = problemDef.params(n); - otherconstr(otherCounter,1) = limits.param(n,1); - otherconstr(otherCounter,2) = limits.param(n,2); - otherCounter = otherCounter + 1; + %We need to pack the parameters into seperate vectors + %of those that are being fitted, and those that are + %held constant. + numberOfFitted = sum(checks.fitParam) + ... + sum(checks.fitBackgroundParam) + ... + sum(checks.fitScalefactor) + ... + sum(checks.fitQzshift) + ... + sum(checks.fitBulkIn) + ... + sum(checks.fitBulkOut) + ... + sum(checks.fitResolutionParam) + ... + sum(checks.fitDomainRatio); + + numberOfTotal = length(problemDef.params) + ... + length(problemDef.backgroundParams) + ... + length(problemDef.scalefactors) + ... + length(problemDef.qzshifts) + ... + length(problemDef.bulkIn) + ... + length(problemDef.bulkOut) + ... + length(problemDef.resolutionParams) + ... + length(problemDef.domainRatio); + + fitpars = problemDef.fitpars;%zeros(numberOfFitted,1); + otherpars = zeros((numberOfTotal-numberOfFitted),1); + fitconstr = zeros(numberOfFitted,2); + otherconstr = zeros((numberOfTotal-numberOfFitted),2); + %limits = problemDef.limits; + fitNames = cell(numberOfFitted,1); + for i = 1:numberOfFitted + fitNames{i} = ''; end -end - -%Also do the same for backgrounds... -for n = 1:length(checks.fitBackgroundParam) - if checks.fitBackgroundParam(n) == 1 - fitpars(fitCounter) = problemDef.backs(n); - fitconstr(fitCounter,1) = limits.backgroundParam(n,1); - fitconstr(fitCounter,2) = limits.backgroundParam(n,2); - fitNames{fitCounter} = problemDefCells{8}{n}; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.backs(n); - otherconstr(otherCounter,1) = limits.backgroundParam(n,1); - otherconstr(otherCounter,2) = limits.backgroundParam(n,2); - otherCounter = otherCounter + 1; + + fitCounter = 1; + otherCounter = 1; + for n = 1:length(checks.fitParam) + if checks.fitParam(n) == 1 + fitpars(fitCounter) = problemDef.params(n); + fitconstr(fitCounter,1) = limits.param(n,1); + fitconstr(fitCounter,2) = limits.param(n,2); + fitNames{fitCounter} = problemDefCells{7}{n}; + fitCounter = fitCounter + 1; + + else + otherpars(otherCounter) = problemDef.params(n); + otherconstr(otherCounter,1) = limits.param(n,1); + otherconstr(otherCounter,2) = limits.param(n,2); + otherCounter = otherCounter + 1; + end end -end - -%..also for the scale factors -for n = 1:length(checks.fitScalefactor) - if checks.fitScalefactor(n) == 1 - fitpars(fitCounter) = problemDef.sf(n); - fitconstr(fitCounter,1) = limits.scalefactor(n,1); - fitconstr(fitCounter,2) = limits.scalefactor(n,2); - fitNames{fitCounter} = problemDefCells{9}{n}; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.sf(n); - otherconstr(otherCounter,1) = limits.scalefactor(n,1); - otherconstr(otherCounter,2) = limits.scalefactor(n,2); - otherCounter = otherCounter + 1; + + %Also do the same for backgrounds... + for n = 1:length(checks.fitBackgroundParam) + if checks.fitBackgroundParam(n) == 1 + fitpars(fitCounter) = problemDef.backgroundParams(n); + fitconstr(fitCounter,1) = limits.backgroundParam(n,1); + fitconstr(fitCounter,2) = limits.backgroundParam(n,2); + fitNames{fitCounter} = problemDefCells{8}{n}; + fitCounter = fitCounter + 1; + else + otherpars(otherCounter) = problemDef.backgroundParams(n); + otherconstr(otherCounter,1) = limits.backgroundParam(n,1); + otherconstr(otherCounter,2) = limits.backgroundParam(n,2); + otherCounter = otherCounter + 1; + end end -end - -%Need qshifts -for n = 1:length(checks.fitQzshift) - if checks.fitQzshift(n) == 1 - fitpars(fitCounter) = problemDef.shifts(n); - fitconstr(fitCounter,1) = limits.qzshift(n,1); - fitconstr(fitCounter,2) = limits.qzshift(n,2); - fitNames{fitCounter} = problemDefCells{10}{n}; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.shifts(n); - otherconstr(otherCounter,1) = limits.qzshift(n,1); - otherconstr(otherCounter,2) = limits.qzshift(n,2); - otherCounter = otherCounter + 1; - end -end - -%Nbairs -for n = 1:length(checks.fitBulkIn) - if checks.fitBulkIn(n) == 1 - fitpars(fitCounter) = problemDef.nba(n); - fitconstr(fitCounter,1) = limits.bulkIn(n,1); - fitconstr(fitCounter,2) = limits.bulkIn(n,2); - fitNames{fitCounter} = problemDefCells{11}{n}; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.nba(n); - otherconstr(otherCounter,1) = limits.bulkIn(n,1); - otherconstr(otherCounter,2) = limits.bulkIn(n,2); - otherCounter = otherCounter + 1; - end -end - -%NBsubs -for n = 1:length(checks.fitBulkOut) - if checks.fitBulkOut(n) == 1 - fitpars(fitCounter) = problemDef.nbs(n); - fitconstr(fitCounter,1) = limits.bulkOut(n,1); - fitconstr(fitCounter,2) = limits.bulkOut(n,2); - fitNames{fitCounter} = problemDefCells{12}{n}; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.nbs(n); - otherconstr(otherCounter,1) = limits.bulkOut(n,1); - otherconstr(otherCounter,2) = limits.bulkOut(n,2); - otherCounter = otherCounter + 1; + + %..also for the scale factors + for n = 1:length(checks.fitScalefactor) + if checks.fitScalefactor(n) == 1 + fitpars(fitCounter) = problemDef.scalefactors(n); + fitconstr(fitCounter,1) = limits.scalefactor(n,1); + fitconstr(fitCounter,2) = limits.scalefactor(n,2); + fitNames{fitCounter} = problemDefCells{9}{n}; + fitCounter = fitCounter + 1; + else + otherpars(otherCounter) = problemDef.scalefactors(n); + otherconstr(otherCounter,1) = limits.scalefactor(n,1); + otherconstr(otherCounter,2) = limits.scalefactor(n,2); + otherCounter = otherCounter + 1; + end + end + + %Need qzshifts + for n = 1:length(checks.fitQzshift) + if checks.fitQzshift(n) == 1 + fitpars(fitCounter) = problemDef.qzshifts(n); + fitconstr(fitCounter,1) = limits.qzshift(n,1); + fitconstr(fitCounter,2) = limits.qzshift(n,2); + fitNames{fitCounter} = problemDefCells{10}{n}; + fitCounter = fitCounter + 1; + else + otherpars(otherCounter) = problemDef.qzshifts(n); + otherconstr(otherCounter,1) = limits.qzshift(n,1); + otherconstr(otherCounter,2) = limits.qzshift(n,2); + otherCounter = otherCounter + 1; + end + end + + %Bulk In + for n = 1:length(checks.fitBulkIn) + if checks.fitBulkIn(n) == 1 + fitpars(fitCounter) = problemDef.bulkIn(n); + fitconstr(fitCounter,1) = limits.bulkIn(n,1); + fitconstr(fitCounter,2) = limits.bulkIn(n,2); + fitNames{fitCounter} = problemDefCells{11}{n}; + fitCounter = fitCounter + 1; + else + otherpars(otherCounter) = problemDef.bulkIn(n); + otherconstr(otherCounter,1) = limits.bulkIn(n,1); + otherconstr(otherCounter,2) = limits.bulkIn(n,2); + otherCounter = otherCounter + 1; + end + end + + %Bulk Out + for n = 1:length(checks.fitBulkOut) + if checks.fitBulkOut(n) == 1 + fitpars(fitCounter) = problemDef.bulkOut(n); + fitconstr(fitCounter,1) = limits.bulkOut(n,1); + fitconstr(fitCounter,2) = limits.bulkOut(n,2); + fitNames{fitCounter} = problemDefCells{12}{n}; + fitCounter = fitCounter + 1; + else + otherpars(otherCounter) = problemDef.bulkOut(n); + otherconstr(otherCounter,1) = limits.bulkOut(n,1); + otherconstr(otherCounter,2) = limits.bulkOut(n,2); + otherCounter = otherCounter + 1; + end + end + + %Resolution..... + for n = 1:length(checks.fitResolutionParam) + if checks.fitResolutionParam(n) == 1 + fitpars(fitCounter) = problemDef.resolutionParams(n); + fitconstr(fitCounter,1) = limits.resolutionParam(n,1); + fitconstr(fitCounter,2) = limits.resolutionParam(n,2); + fitNames{fitCounter} = problemDefCells{13}{n}; + fitCounter = fitCounter + 1; + else + otherpars(otherCounter) = problemDef.resolutionParams(n); + otherconstr(otherCounter,1) = limits.resolutionParam(n,1); + otherconstr(otherCounter,2) = limits.resolutionParam(n,2); + otherCounter = otherCounter + 1; + end + end + + % Domain Ratio + for n = 1:length(checks.fitDomainRatio) + if checks.fitDomainRatio(n) == 1 + fitpars(fitCounter) = problemDef.domainRatio(n); + fitconstr(fitCounter,1) = limits.domainRatio(n,1); + fitconstr(fitCounter,2) = limits.domainRatio(n,2); + fitNames{fitCounter} = problemDefCells{20}{n}; + fitCounter = fitCounter + 1; + else + otherpars(otherCounter) = problemDef.domainRatio(n); + otherconstr(otherCounter,1) = limits.domainRatio(n,1); + otherconstr(otherCounter,2) = limits.domainRatio(n,2); + otherCounter = otherCounter + 1; + end end -end - -%Resolution..... -for n = 1:length(checks.fitResolutionParam) - if checks.fitResolutionParam(n) == 1 - fitpars(fitCounter) = problemDef.res(n); - fitconstr(fitCounter,1) = limits.resolutionParam(n,1); - fitconstr(fitCounter,2) = limits.resolutionParam(n,2); - fitNames{fitCounter} = problemDefCells{13}{n}; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.res(n); - otherconstr(otherCounter,1) = limits.resolutionParam(n,1); - otherconstr(otherCounter,2) = limits.resolutionParam(n,2); - otherCounter = otherCounter + 1; - end -end - -% Domain Ratio -for n = 1:length(checks.fitDomainRatio) - if checks.fitDomainRatio(n) == 1 - fitpars(fitCounter) = problemDef.domainRatio(n); - fitconstr(fitCounter,1) = limits.domainRatio(n,1); - fitconstr(fitCounter,2) = limits.domainRatio(n,2); - fitNames{fitCounter} = problemDefCells{20}{n}; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.domainRatio(n); - otherconstr(otherCounter,1) = limits.domainRatio(n,1); - otherconstr(otherCounter,2) = limits.domainRatio(n,2); - otherCounter = otherCounter + 1; - end -end - -problemDef.fitpars = fitpars; -problemDef.otherpars = otherpars; -problemDef.fitconstr = fitconstr; -problemDef.otherconstr = otherconstr; + + problemDef.fitpars = fitpars; + problemDef.otherpars = otherpars; + problemDef.fitconstr = fitconstr; + problemDef.otherconstr = otherconstr; end \ No newline at end of file diff --git a/minimisers/generalUtils/packParamsPriors.m b/minimisers/generalUtils/packParamsPriors.m index 818e22818..5227e220d 100644 --- a/minimisers/generalUtils/packParamsPriors.m +++ b/minimisers/generalUtils/packParamsPriors.m @@ -1,244 +1,221 @@ function [problemDef,fitNames,fitPriors] = packParamsPriors(problemDef,problemDefCells,limits,priors,checks) -%Separate out the params array into fitting -%and unfitting arrays. - - -%problem = getappdata(0,'problem'); - -% controls.checks.fitParam = ones(length(problem.params),1); -% controls.checks.fitBackgroundParam = ones(length(problem.backs),1); -% controls.checks.fitScalefactor = ones(length(problem.scalefac),1); -% controls.checks.fitBulkIn = ones(length(problem.nba),1); -% controls.checks.fitBulkOut = ones(length(problem.nbs),1); -% controls.checks.fitResolutionParam = ones(length(problem.resolution),1); - -% calculation.limits.param = problem.constr; -% calculation.limits.backgroundParam = problem.backs_constr; -% calculation.limits.scalefactor = problem.scale_constr; -% calculation.limits.qzshift = problem.shifts_constr; -% calculation.limits.bulkIn = problem.nbairs_constr; -% calculation.limits.bulkOut = problem.nbsubs_constr; -% calculation.limits.resolutionParam = problem.resolution_constr; - - - -%We need to pack the parameters into seperate vectors -%of those that are being fitted, and those that are -%held constant. -numberOfFitted = sum(checks.fitParam) + ... - sum(checks.fitBackgroundParam) + ... - sum(checks.fitScalefactor) + ... - sum(checks.fitQzshift) + ... - sum(checks.fitBulkIn) + ... - sum(checks.fitBulkOut) + ... - sum(checks.fitResolutionParam) + ... - sum(checks.fitDomainRatio); - -numberOfTotal = length(problemDef.params) + ... - length(problemDef.backs) + ... - length(problemDef.sf) + ... - length(problemDef.shifts) + ... - length(problemDef.nba) + ... - length(problemDef.nbs) + ... - length(problemDef.res) + ... - length(problemDef.domainRatio); - -fitpars = problemDef.fitpars;%zeros(numberOfFitted,1); -otherpars = zeros((numberOfTotal-numberOfFitted),1); -fitconstr = zeros(numberOfFitted,2); -otherconstr = zeros((numberOfTotal-numberOfFitted),2); -%limits = problemDef.limits; -fitNames = cell(numberOfFitted,1); -fitPriors = zeros(numberOfFitted,2); -fitCounter = 1; -otherCounter = 1; -for n = 1:length(checks.fitParam) - if checks.fitParam(n) == 1 - fitpars(fitCounter) = problemDef.params(n); - fitconstr(fitCounter,1) = limits.param(n,1); - fitconstr(fitCounter,2) = limits.param(n,2); - fitNames{fitCounter} = problemDefCells{7}{n}; - thisPrior = priors.param{n}; - if (strcmpi(thisPrior{2},'gaussian')) - thisGausPrior = [thisPrior{3} thisPrior{4}]; + %We need to pack the parameters into seperate vectors + %of those that are being fitted, and those that are + %held constant. + numberOfFitted = sum(checks.fitParam) + ... + sum(checks.fitBackgroundParam) + ... + sum(checks.fitScalefactor) + ... + sum(checks.fitQzshift) + ... + sum(checks.fitBulkIn) + ... + sum(checks.fitBulkOut) + ... + sum(checks.fitResolutionParam) + ... + sum(checks.fitDomainRatio); + + numberOfTotal = length(problemDef.params) + ... + length(problemDef.backgroundParams) + ... + length(problemDef.scalefactors) + ... + length(problemDef.qzshifts) + ... + length(problemDef.bulkIn) + ... + length(problemDef.bulkOut) + ... + length(problemDef.resolutionParams) + ... + length(problemDef.domainRatio); + + fitpars = problemDef.fitpars; + otherpars = zeros((numberOfTotal-numberOfFitted),1); + fitconstr = zeros(numberOfFitted,2); + otherconstr = zeros((numberOfTotal-numberOfFitted),2); + fitNames = cell(numberOfFitted,1); + fitPriors = zeros(numberOfFitted,2); + fitCounter = 1; + otherCounter = 1; + + for n = 1:length(checks.fitParam) + if checks.fitParam(n) == 1 + fitpars(fitCounter) = problemDef.params(n); + fitconstr(fitCounter,1) = limits.param(n,1); + fitconstr(fitCounter,2) = limits.param(n,2); + fitNames{fitCounter} = problemDefCells{7}{n}; + thisPrior = priors.param{n}; + if (strcmpi(thisPrior{2},'gaussian')) + thisGausPrior = [thisPrior{3} thisPrior{4}]; + else + thisGausPrior = [0 Inf]; + end + fitPriors(fitCounter,:) = thisGausPrior; + fitCounter = fitCounter + 1; else - thisGausPrior = [0 Inf]; + otherpars(otherCounter) = problemDef.params(n); + otherconstr(otherCounter,1) = limits.param(n,1); + otherconstr(otherCounter,2) = limits.param(n,2); + otherCounter = otherCounter + 1; end - fitPriors(fitCounter,:) = thisGausPrior; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.params(n); - otherconstr(otherCounter,1) = limits.param(n,1); - otherconstr(otherCounter,2) = limits.param(n,2); - otherCounter = otherCounter + 1; end -end - -%Also do the same for backgrounds... -for n = 1:length(checks.fitBackgroundParam) - if checks.fitBackgroundParam(n) == 1 - fitpars(fitCounter) = problemDef.backs(n); - fitconstr(fitCounter,1) = limits.backgroundParam(n,1); - fitconstr(fitCounter,2) = limits.backgroundParam(n,2); - fitNames{fitCounter} = problemDefCells{8}{n}; - thisPrior = priors.backgroundParam{n}; - if (strcmpi(thisPrior{2},'gaussian')) - thisGausPrior = [thisPrior{4} thisPrior{5}]; + + %Also do the same for backgrounds... + for n = 1:length(checks.fitBackgroundParam) + if checks.fitBackgroundParam(n) == 1 + fitpars(fitCounter) = problemDef.backgroundParams(n); + fitconstr(fitCounter,1) = limits.backgroundParam(n,1); + fitconstr(fitCounter,2) = limits.backgroundParam(n,2); + fitNames{fitCounter} = problemDefCells{8}{n}; + thisPrior = priors.backgroundParam{n}; + if (strcmpi(thisPrior{2},'gaussian')) + thisGausPrior = [thisPrior{4} thisPrior{5}]; + else + thisGausPrior = [0 Inf]; + end + fitPriors(fitCounter,:) = thisGausPrior; + fitCounter = fitCounter + 1; else - thisGausPrior = [0 Inf]; + otherpars(otherCounter) = problemDef.backgroundParams(n); + otherconstr(otherCounter,1) = limits.backgroundParam(n,1); + otherconstr(otherCounter,2) = limits.backgroundParam(n,2); + otherCounter = otherCounter + 1; end - fitPriors(fitCounter,:) = thisGausPrior; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.backs(n); - otherconstr(otherCounter,1) = limits.backgroundParam(n,1); - otherconstr(otherCounter,2) = limits.backgroundParam(n,2); - otherCounter = otherCounter + 1; end -end - -%..also for the scale factors -for n = 1:length(checks.fitScalefactor) - if checks.fitScalefactor(n) == 1 - fitpars(fitCounter) = problemDef.sf(n); - fitconstr(fitCounter,1) = limits.scalefactor(n,1); - fitconstr(fitCounter,2) = limits.scalefactor(n,2); - fitNames{fitCounter} = problemDefCells{9}{n}; - thisPrior = priors.scalefactor{n}; - if (strcmpi(thisPrior{2},'gaussian')) - thisGausPrior = [thisPrior{4} thisPrior{5}]; + + %..also for the scale factors + for n = 1:length(checks.fitScalefactor) + if checks.fitScalefactor(n) == 1 + fitpars(fitCounter) = problemDef.scalefactors(n); + fitconstr(fitCounter,1) = limits.scalefactor(n,1); + fitconstr(fitCounter,2) = limits.scalefactor(n,2); + fitNames{fitCounter} = problemDefCells{9}{n}; + thisPrior = priors.scalefactor{n}; + if (strcmpi(thisPrior{2},'gaussian')) + thisGausPrior = [thisPrior{4} thisPrior{5}]; + else + thisGausPrior = [0 Inf]; + end + fitPriors(fitCounter,:) = thisGausPrior; + fitCounter = fitCounter + 1; else - thisGausPrior = [0 Inf]; + otherpars(otherCounter) = problemDef.scalefactors(n); + otherconstr(otherCounter,1) = limits.scalefactor(n,1); + otherconstr(otherCounter,2) = limits.scalefactor(n,2); + otherCounter = otherCounter + 1; end - fitPriors(fitCounter,:) = thisGausPrior; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.sf(n); - otherconstr(otherCounter,1) = limits.scalefactor(n,1); - otherconstr(otherCounter,2) = limits.scalefactor(n,2); - otherCounter = otherCounter + 1; - end -end - -%Need qshifts -for n = 1:length(checks.fitQzshift) - if checks.fitQzshift(n) == 1 - fitpars(fitCounter) = problemDef.shifts(n); - fitconstr(fitCounter,1) = limits.qzshift(n,1); - fitconstr(fitCounter,2) = limits.qzshift(n,2); - fitNames{fitCounter} = problemDefCells{10}{n}; - thisPrior = priors.qzshift{n}; - if (strcmpi(thisPrior{2},'gaussian')) - thisGausPrior = [thisPrior{4} thisPrior{5}]; + end + + %Need qzshifts + for n = 1:length(checks.fitQzshift) + if checks.fitQzshift(n) == 1 + fitpars(fitCounter) = problemDef.qzshifts(n); + fitconstr(fitCounter,1) = limits.qzshift(n,1); + fitconstr(fitCounter,2) = limits.qzshift(n,2); + fitNames{fitCounter} = problemDefCells{10}{n}; + thisPrior = priors.qzshift{n}; + if (strcmpi(thisPrior{2},'gaussian')) + thisGausPrior = [thisPrior{4} thisPrior{5}]; + else + thisGausPrior = [0 Inf]; + end + fitPriors(fitCounter,:) = thisGausPrior; + fitCounter = fitCounter + 1; else - thisGausPrior = [0 Inf]; + otherpars(otherCounter) = problemDef.qzshifts(n); + otherconstr(otherCounter,1) = limits.qzshift(n,1); + otherconstr(otherCounter,2) = limits.qzshift(n,2); + otherCounter = otherCounter + 1; end - fitPriors(fitCounter,:) = thisGausPrior; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.shifts(n); - otherconstr(otherCounter,1) = limits.qzshift(n,1); - otherconstr(otherCounter,2) = limits.qzshift(n,2); - otherCounter = otherCounter + 1; - end -end - -%Nbairs -for n = 1:length(checks.fitBulkIn) - if checks.fitBulkIn(n) == 1 - fitpars(fitCounter) = problemDef.nba(n); - fitconstr(fitCounter,1) = limits.bulkIn(n,1); - fitconstr(fitCounter,2) = limits.bulkIn(n,2); - fitNames{fitCounter} = problemDefCells{11}{n}; - thisPrior = priors.bulkIn{n}; - if (strcmpi(thisPrior{2},'gaussian')) - thisGausPrior = [thisPrior{4} thisPrior{5}]; + end + + %Bulk In + for n = 1:length(checks.fitBulkIn) + if checks.fitBulkIn(n) == 1 + fitpars(fitCounter) = problemDef.bulkIn(n); + fitconstr(fitCounter,1) = limits.bulkIn(n,1); + fitconstr(fitCounter,2) = limits.bulkIn(n,2); + fitNames{fitCounter} = problemDefCells{11}{n}; + thisPrior = priors.bulkIn{n}; + if (strcmpi(thisPrior{2},'gaussian')) + thisGausPrior = [thisPrior{4} thisPrior{5}]; + else + thisGausPrior = [0 Inf]; + end + fitPriors(fitCounter,:) = thisGausPrior; + fitCounter = fitCounter + 1; else - thisGausPrior = [0 Inf]; + otherpars(otherCounter) = problemDef.bulkIn(n); + otherconstr(otherCounter,1) = limits.bulkIn(n,1); + otherconstr(otherCounter,2) = limits.bulkIn(n,2); + otherCounter = otherCounter + 1; end - fitPriors(fitCounter,:) = thisGausPrior; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.nba(n); - otherconstr(otherCounter,1) = limits.bulkIn(n,1); - otherconstr(otherCounter,2) = limits.bulkIn(n,2); - otherCounter = otherCounter + 1; - end -end - -%NBsubs -for n = 1:length(checks.fitBulkOut) - if checks.fitBulkOut(n) == 1 - fitpars(fitCounter) = problemDef.nbs(n); - fitconstr(fitCounter,1) = limits.bulkOut(n,1); - fitconstr(fitCounter,2) = limits.bulkOut(n,2); - fitNames{fitCounter} = problemDefCells{12}{n}; - thisPrior = priors.bulkOut{n}; - if (strcmpi(thisPrior{2},'gaussian')) - thisGausPrior = [thisPrior{3} thisPrior{4}]; + end + + %Bulk Out + for n = 1:length(checks.fitBulkOut) + if checks.fitBulkOut(n) == 1 + fitpars(fitCounter) = problemDef.bulkOut(n); + fitconstr(fitCounter,1) = limits.bulkOut(n,1); + fitconstr(fitCounter,2) = limits.bulkOut(n,2); + fitNames{fitCounter} = problemDefCells{12}{n}; + thisPrior = priors.bulkOut{n}; + if (strcmpi(thisPrior{2},'gaussian')) + thisGausPrior = [thisPrior{3} thisPrior{4}]; + else + thisGausPrior = [0 Inf]; + end + fitPriors(fitCounter,:) = thisGausPrior; + fitCounter = fitCounter + 1; else - thisGausPrior = [0 Inf]; + otherpars(otherCounter) = problemDef.bulkOut(n); + otherconstr(otherCounter,1) = limits.bulkOut(n,1); + otherconstr(otherCounter,2) = limits.bulkOut(n,2); + otherCounter = otherCounter + 1; end - fitPriors(fitCounter,:) = thisGausPrior; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.nbs(n); - otherconstr(otherCounter,1) = limits.bulkOut(n,1); - otherconstr(otherCounter,2) = limits.bulkOut(n,2); - otherCounter = otherCounter + 1; - end -end - -%Resolution..... -for n = 1:length(checks.fitResolutionParam) - if checks.fitResolutionParam(n) == 1 - fitpars(fitCounter) = problemDef.res(n); - fitconstr(fitCounter,1) = limits.resolutionParam(n,1); - fitconstr(fitCounter,2) = limits.resolutionParam(n,2); - fitNames{fitCounter} = problemDefCells{13}{n}; - thisPrior = priors.resolutionParam{n}; - if (strcmpi(thisPrior{2},'gaussian')) - thisGausPrior = [thisPrior{4} thisPrior{5}]; + end + + %Resolution..... + for n = 1:length(checks.fitResolutionParam) + if checks.fitResolutionParam(n) == 1 + fitpars(fitCounter) = problemDef.resolutionParams(n); + fitconstr(fitCounter,1) = limits.resolutionParam(n,1); + fitconstr(fitCounter,2) = limits.resolutionParam(n,2); + fitNames{fitCounter} = problemDefCells{13}{n}; + thisPrior = priors.resolutionParam{n}; + if (strcmpi(thisPrior{2},'gaussian')) + thisGausPrior = [thisPrior{4} thisPrior{5}]; + else + thisGausPrior = [0 Inf]; + end + fitPriors(fitCounter,:) = thisGausPrior; + fitCounter = fitCounter + 1; else - thisGausPrior = [0 Inf]; + otherpars(otherCounter) = problemDef.resolutionParams(n); + otherconstr(otherCounter,1) = limits.resolutionParam(n,1); + otherconstr(otherCounter,2) = limits.resolutionParam(n,2); + otherCounter = otherCounter + 1; end - fitPriors(fitCounter,:) = thisGausPrior; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.res(n); - otherconstr(otherCounter,1) = limits.resolutionParam(n,1); - otherconstr(otherCounter,2) = limits.resolutionParam(n,2); - otherCounter = otherCounter + 1; - end -end - -% Domain Ratio -for n = 1:length(checks.fitDomainRatio) - if checks.fitDomainRatio(n) == 1 - fitpars(fitCounter) = problemDef.domainRatio(n); - fitconstr(fitCounter,1) = limits.domainRatio(n,1); - fitconstr(fitCounter,2) = limits.domainRatio(n,2); - fitNames{fitCounter} = problemDefCells{20}{n}; - thisPrior = priors.domainRatio{n}; - if (strcmpi(thisPrior{2},'gaussian')) - thisGausPrior = [thisPrior{4} thisPrior{5}]; + end + + % Domain Ratio + for n = 1:length(checks.fitDomainRatio) + if checks.fitDomainRatio(n) == 1 + fitpars(fitCounter) = problemDef.domainRatio(n); + fitconstr(fitCounter,1) = limits.domainRatio(n,1); + fitconstr(fitCounter,2) = limits.domainRatio(n,2); + fitNames{fitCounter} = problemDefCells{20}{n}; + thisPrior = priors.domainRatio{n}; + if (strcmpi(thisPrior{2},'gaussian')) + thisGausPrior = [thisPrior{4} thisPrior{5}]; + else + thisGausPrior = [0 Inf]; + end + fitPriors(fitCounter,:) = thisGausPrior; + fitCounter = fitCounter + 1; else - thisGausPrior = [0 Inf]; + otherpars(otherCounter) = problemDef.domainRatio(n); + otherconstr(otherCounter,1) = limits.domainRatio(n,1); + otherconstr(otherCounter,2) = limits.domainRatio(n,2); + otherCounter = otherCounter + 1; end - fitPriors(fitCounter,:) = thisGausPrior; - fitCounter = fitCounter + 1; - else - otherpars(otherCounter) = problemDef.domainRatio(n); - otherconstr(otherCounter,1) = limits.domainRatio(n,1); - otherconstr(otherCounter,2) = limits.domainRatio(n,2); - otherCounter = otherCounter + 1; - end -end - -problemDef.fitpars = fitpars; -problemDef.otherpars = otherpars; -problemDef.fitconstr = fitconstr; -problemDef.otherconstr = otherconstr; + end + + problemDef.fitpars = fitpars; + problemDef.otherpars = otherpars; + problemDef.fitconstr = fitconstr; + problemDef.otherconstr = otherconstr; end \ No newline at end of file diff --git a/minimisers/generalUtils/unpackParams.m b/minimisers/generalUtils/unpackParams.m index e76e88b9d..70626a3ef 100644 --- a/minimisers/generalUtils/unpackParams.m +++ b/minimisers/generalUtils/unpackParams.m @@ -1,146 +1,146 @@ function problemDef = unpackParams(problemDef,controls) -%Unpack the params out of the fitparsma and otherparams arrays -%back into problem.params - -%problem = getappdata(0,'problem'); - - -unpacked_counter = 1; -packed_counter = 1; -uppars_counter = 1; - -uppars = zeros(1,length(problemDef.params)); -for i = 1:length(controls.checks.fitParam) - if controls.checks.fitParam(i) == 1 - uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); - unpacked_counter = unpacked_counter + 1; - uppars_counter = uppars_counter + 1; - else - uppars(uppars_counter) = problemDef.otherpars(packed_counter); - packed_counter = packed_counter + 1; - uppars_counter = uppars_counter + 1; + %Unpack the params out of the fitparsma and otherparams arrays + %back into problem.params + + %problem = getappdata(0,'problem'); + + + unpacked_counter = 1; + packed_counter = 1; + uppars_counter = 1; + + uppars = zeros(1,length(problemDef.params)); + for i = 1:length(controls.checks.fitParam) + if controls.checks.fitParam(i) == 1 + uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); + unpacked_counter = unpacked_counter + 1; + uppars_counter = uppars_counter + 1; + else + uppars(uppars_counter) = problemDef.otherpars(packed_counter); + packed_counter = packed_counter + 1; + uppars_counter = uppars_counter + 1; + end end -end -problemDef.params = uppars; - - -%Also the backgrounds -uppars = zeros(1,length(problemDef.backs)); -uppars_counter = 1; -for i = 1:length(controls.checks.fitBackgroundParam) - if controls.checks.fitBackgroundParam(i) == 1 - uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); - unpacked_counter = unpacked_counter + 1; - uppars_counter = uppars_counter + 1; - else - uppars(uppars_counter) = problemDef.otherpars(packed_counter); - packed_counter = packed_counter + 1; - uppars_counter = uppars_counter + 1; + problemDef.params = uppars; + + + %Also the backgrounds + uppars = zeros(1,length(problemDef.backgroundParams)); + uppars_counter = 1; + for i = 1:length(controls.checks.fitBackgroundParam) + if controls.checks.fitBackgroundParam(i) == 1 + uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); + unpacked_counter = unpacked_counter + 1; + uppars_counter = uppars_counter + 1; + else + uppars(uppars_counter) = problemDef.otherpars(packed_counter); + packed_counter = packed_counter + 1; + uppars_counter = uppars_counter + 1; + end end -end -problemDef.backs = uppars; - -%Scalefactors -uppars = zeros(1,length(problemDef.sf)); -uppars_counter = 1; -for i = 1:length(controls.checks.fitScalefactor) - if controls.checks.fitScalefactor(i) == 1 - uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); - unpacked_counter = unpacked_counter + 1; - uppars_counter = uppars_counter + 1; - else - uppars(uppars_counter) = problemDef.otherpars(packed_counter); - packed_counter = packed_counter + 1; - uppars_counter = uppars_counter + 1; + problemDef.backgroundParams = uppars; + + %Scalefactors + uppars = zeros(1,length(problemDef.scalefactors)); + uppars_counter = 1; + for i = 1:length(controls.checks.fitScalefactor) + if controls.checks.fitScalefactor(i) == 1 + uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); + unpacked_counter = unpacked_counter + 1; + uppars_counter = uppars_counter + 1; + else + uppars(uppars_counter) = problemDef.otherpars(packed_counter); + packed_counter = packed_counter + 1; + uppars_counter = uppars_counter + 1; + end end -end -problemDef.sf = uppars; - - -%qshifts -uppars = zeros(1,length(problemDef.shifts)); -uppars_counter = 1; -for i = 1:length(controls.checks.fitQzshift) - if controls.checks.fitQzshift(i) == 1 - uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); - unpacked_counter = unpacked_counter + 1; - uppars_counter = uppars_counter + 1; - else - uppars(uppars_counter) = problemDef.otherpars(packed_counter); - packed_counter = packed_counter + 1; - uppars_counter = uppars_counter + 1; + problemDef.scalefactors = uppars; + + + %qzshifts + uppars = zeros(1,length(problemDef.qzshifts)); + uppars_counter = 1; + for i = 1:length(controls.checks.fitQzshift) + if controls.checks.fitQzshift(i) == 1 + uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); + unpacked_counter = unpacked_counter + 1; + uppars_counter = uppars_counter + 1; + else + uppars(uppars_counter) = problemDef.otherpars(packed_counter); + packed_counter = packed_counter + 1; + uppars_counter = uppars_counter + 1; + end end -end -problemDef.shifts = uppars; - - - -%Nbairs -uppars = zeros(1,length(problemDef.nba)); -uppars_counter = 1; -for i = 1:length(controls.checks.fitBulkIn) - if controls.checks.fitBulkIn(i) == 1 - uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); - unpacked_counter = unpacked_counter + 1; - uppars_counter = uppars_counter + 1; - else - uppars(uppars_counter) = problemDef.otherpars(packed_counter); - packed_counter = packed_counter + 1; - uppars_counter = uppars_counter + 1; + problemDef.qzshifts = uppars; + + + + %Bulk In + uppars = zeros(1,length(problemDef.bulkIn)); + uppars_counter = 1; + for i = 1:length(controls.checks.fitBulkIn) + if controls.checks.fitBulkIn(i) == 1 + uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); + unpacked_counter = unpacked_counter + 1; + uppars_counter = uppars_counter + 1; + else + uppars(uppars_counter) = problemDef.otherpars(packed_counter); + packed_counter = packed_counter + 1; + uppars_counter = uppars_counter + 1; + end end -end -problemDef.nba = uppars; - - -%Nbsubs -uppars = zeros(1,length(problemDef.nbs)); -uppars_counter = 1; -for i = 1:length(controls.checks.fitBulkOut) - if controls.checks.fitBulkOut(i) == 1 - uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); - unpacked_counter = unpacked_counter + 1; - uppars_counter = uppars_counter + 1; - else - uppars(uppars_counter) = problemDef.otherpars(packed_counter); - packed_counter = packed_counter + 1; - uppars_counter = uppars_counter + 1; + problemDef.bulkIn = uppars; + + + %Bulk Out + uppars = zeros(1,length(problemDef.bulkOut)); + uppars_counter = 1; + for i = 1:length(controls.checks.fitBulkOut) + if controls.checks.fitBulkOut(i) == 1 + uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); + unpacked_counter = unpacked_counter + 1; + uppars_counter = uppars_counter + 1; + else + uppars(uppars_counter) = problemDef.otherpars(packed_counter); + packed_counter = packed_counter + 1; + uppars_counter = uppars_counter + 1; + end end -end -problemDef.nbs = uppars; - - -%Finally resolutions -uppars = zeros(1,length(problemDef.res)); -uppars_counter = 1; -for i = 1:length(controls.checks.fitResolutionParam) - if controls.checks.fitResolutionParam(i) == 1 - uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); - unpacked_counter = unpacked_counter + 1; - uppars_counter = uppars_counter + 1; - else - uppars(uppars_counter) = problemDef.otherpars(packed_counter); - packed_counter = packed_counter + 1; - uppars_counter = uppars_counter + 1; + problemDef.bulkOut = uppars; + + + %Resolutions + uppars = zeros(1,length(problemDef.resolutionParams)); + uppars_counter = 1; + for i = 1:length(controls.checks.fitResolutionParam) + if controls.checks.fitResolutionParam(i) == 1 + uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); + unpacked_counter = unpacked_counter + 1; + uppars_counter = uppars_counter + 1; + else + uppars(uppars_counter) = problemDef.otherpars(packed_counter); + packed_counter = packed_counter + 1; + uppars_counter = uppars_counter + 1; + end end -end -problemDef.res = uppars; - - -%Finally domainRatio -uppars = zeros(1,length(problemDef.domainRatio)); -uppars_counter = 1; -for i = 1:length(controls.checks.fitDomainRatio) - if controls.checks.fitDomainRatio(i) == 1 - uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); - unpacked_counter = unpacked_counter + 1; - uppars_counter = uppars_counter + 1; - else - uppars(uppars_counter) = problemDef.otherpars(packed_counter); - packed_counter = packed_counter + 1; - uppars_counter = uppars_counter + 1; + problemDef.resolutionParams = uppars; + + + %Domain Ratios + uppars = zeros(1,length(problemDef.domainRatio)); + uppars_counter = 1; + for i = 1:length(controls.checks.fitDomainRatio) + if controls.checks.fitDomainRatio(i) == 1 + uppars(uppars_counter) = problemDef.fitpars(unpacked_counter); + unpacked_counter = unpacked_counter + 1; + uppars_counter = uppars_counter + 1; + else + uppars(uppars_counter) = problemDef.otherpars(packed_counter); + packed_counter = packed_counter + 1; + uppars_counter = uppars_counter + 1; + end end -end -problemDef.domainRatio = uppars; + problemDef.domainRatio = uppars; -%setappdata(0,'problem',problem); \ No newline at end of file +end diff --git a/minimisers/simplex/runSimplex.m b/minimisers/simplex/runSimplex.m index f339187c9..66e960297 100644 --- a/minimisers/simplex/runSimplex.m +++ b/minimisers/simplex/runSimplex.m @@ -6,12 +6,12 @@ result = cell(6,1); problem = struct('ssubs',preAlloc,... - 'backgrounds',preAlloc,... - 'qshifts',preAlloc,... + 'backgroundParams',preAlloc,... + 'qzshifts',preAlloc,... 'scalefactors',preAlloc,... - 'nbairs',preAlloc,... - 'nbsubs',preAlloc,... - 'resolutions',preAlloc,... + 'bulkIn',preAlloc,... + 'bulkOut',preAlloc,... + 'resolutionParams',preAlloc,... 'calculations',struct('all_chis',preAlloc,'sum_chi',0),... 'allSubRough',preAlloc); diff --git a/targetFunctions/+domainsTF/+customLayers/calculate.m b/targetFunctions/+domainsTF/+customLayers/calculate.m index 19a16d637..871fdfefd 100644 --- a/targetFunctions/+domainsTF/+customLayers/calculate.m +++ b/targetFunctions/+domainsTF/+customLayers/calculate.m @@ -17,10 +17,10 @@ numberOfContrasts = problemDef.numberOfContrasts; outSsubs = zeros(numberOfContrasts,1); backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); chis = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); @@ -63,26 +63,26 @@ switch controls.parallel case 'single' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = domainsTF.customLayers.single(problemDef,problemDefCells,controls); case 'points' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = domainsTF.customLayers.parallelPoints(problemDef,problemDefCells,controls); case 'contrasts' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = domainsTF.customLayers.parallelContrasts(problemDef,problemDefCells,controls); end problem.ssubs = outSsubs; -problem.backgrounds = backgs; -problem.qshifts = qshifts; -problem.scalefactors = sfs; -problem.nbairs = nbas; -problem.nbsubs = nbss; -problem.resolutions = resols; +problem.backgroundParams = backgs; +problem.qzshifts = qzshifts; +problem.scalefactors = scalefactors; +problem.bulkIn = bulkIns; +problem.bulkOut = bulkOuts; +problem.resolutionParams = resols; problem.calculations.all_chis = chis; problem.calculations.sum_chi = sum(chis); problem.allSubRough = allRoughs; diff --git a/targetFunctions/+domainsTF/+customLayers/parallelContrasts.m b/targetFunctions/+domainsTF/+customLayers/parallelContrasts.m index b6a7d96a7..19bff9db3 100644 --- a/targetFunctions/+domainsTF/+customLayers/parallelContrasts.m +++ b/targetFunctions/+domainsTF/+customLayers/parallelContrasts.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = parallelContrasts(problemDef,problemDefCells,controls) % Single threaded version of the custom layers, domainsTF reflectivity @@ -16,8 +16,8 @@ ~,~,customFiles] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, resample, backsType, cCustFiles] = extractProblemParams(problemDef); calcSld = controls.calcSldDuringFit; @@ -30,10 +30,10 @@ % Pre-Allocation of output arrays... backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -83,8 +83,8 @@ resamPars = controls.resamPars; % Process the custom models.... -[calcAllLayers,allRoughs] = domainsTF.customLayers.processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary); +[calcAllLayers,allRoughs] = domainsTF.customLayers.processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,bulkIn,bulkOut,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary); % Parallel over all contrasts @@ -102,7 +102,7 @@ % from the input arrays. % First need to decide which values of the backgrounds, scalefactors % data shifts and bulk contrasts are associated with this contrast - [thisBackground,thisQshift,thisSf,thisNba,thisNbs,thisResol] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [thisBackground,thisQzshift,thisScalefactor,thisBulkIn,thisBulkOut,thisResol] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Get the custom layers output for this contrast % We have two for each contrast - one for each domain @@ -130,7 +130,7 @@ [sldProfile1,reflect1,Simul1,shifted_dat,layerSld1,resamLayers1,~,thisSsubs] = ... nonPolarisedTF.coreLayersCalculation... (thisContrastLayers1, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -138,7 +138,7 @@ [sldProfile2,reflect2,Simul2,~,layerSld2,resamLayers2,~,~] = ... nonPolarisedTF.coreLayersCalculation... (thisContrastLayers2, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -164,10 +164,10 @@ chis(i) = thisChiSquared; backgs(i) = thisBackground; - qshifts(i) = thisQshift; - sfs(i) = thisSf; - nbas(i) = thisNba; - nbss(i) = thisNbs; + qzshifts(i) = thisQzshift; + scalefactors(i) = thisScalefactor; + bulkIns(i) = thisBulkIn; + bulkOuts(i) = thisBulkOut; resols(i) = thisResol; allRoughs(i) = thisRough; end diff --git a/targetFunctions/+domainsTF/+customLayers/parallelPoints.m b/targetFunctions/+domainsTF/+customLayers/parallelPoints.m index 8b75f9e8e..d3e67d229 100644 --- a/targetFunctions/+domainsTF/+customLayers/parallelPoints.m +++ b/targetFunctions/+domainsTF/+customLayers/parallelPoints.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = parallelPoints(problemDef,problemDefCells,controls) % Single threaded version of the custom layers, domainsTF reflectivity @@ -16,8 +16,8 @@ ~,~,customFiles] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, resample, backsType, cCustFiles] = extractProblemParams(problemDef); calcSld = controls.calcSldDuringFit; @@ -30,10 +30,10 @@ % Pre-Allocation of output arrays... backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -83,8 +83,8 @@ resamPars = controls.resamPars; % Process the custom models.... -[calcAllLayers,allRoughs] = domainsTF.customLayers.processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary); +[calcAllLayers,allRoughs] = domainsTF.customLayers.processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,bulkIn,bulkOut,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary); % Parallel over all contrasts @@ -102,7 +102,7 @@ % from the input arrays. % First need to decide which values of the backgrounds, scalefactors % data shifts and bulk contrasts are associated with this contrast - [thisBackground,thisQshift,thisSf,thisNba,thisNbs,thisResol] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [thisBackground,thisQzshift,thisScalefactor,thisBulkIn,thisBulkOut,thisResol] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Get the custom layers output for this contrast % We have two for each contrast - one for each domain @@ -130,7 +130,7 @@ [sldProfile1,reflect1,Simul1,shifted_dat,layerSld1,resamLayers1,~,thisSsubs] = ... nonPolarisedTF.coreLayersCalculation... (thisContrastLayers1, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -138,7 +138,7 @@ [sldProfile2,reflect2,Simul2,~,layerSld2,resamLayers2,~,~] = ... nonPolarisedTF.coreLayersCalculation... (thisContrastLayers2, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -164,10 +164,10 @@ chis(i) = thisChiSquared; backgs(i) = thisBackground; - qshifts(i) = thisQshift; - sfs(i) = thisSf; - nbas(i) = thisNba; - nbss(i) = thisNbs; + qzshifts(i) = thisQzshift; + scalefactors(i) = thisScalefactor; + bulkIns(i) = thisBulkIn; + bulkOuts(i) = thisBulkOut; resols(i) = thisResol; allRoughs(i) = thisRough; end diff --git a/targetFunctions/+domainsTF/+customLayers/processCustomFunction.m b/targetFunctions/+domainsTF/+customLayers/processCustomFunction.m index 1b9337a45..cc2c9428b 100644 --- a/targetFunctions/+domainsTF/+customLayers/processCustomFunction.m +++ b/targetFunctions/+domainsTF/+customLayers/processCustomFunction.m @@ -1,5 +1,5 @@ -function [allLayers,allRoughs] = processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary) +function [allLayers,allRoughs] = processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary) % Top-level function for processing custom layers for all the % contrasts. @@ -11,8 +11,8 @@ allRoughs = zeros(numberOfContrasts,1); for i = 1:numberOfContrasts - allLayers{i,1} = [1 , 1]; % Type def as double (size not important) - allLayers{i,2} = [1 , 1]; + allLayers{i,1} = [1, 1]; % Type def as double (size not important) + allLayers{i,2} = [1, 1]; tempAllLayers{i,1} = [0 0 0 0 0]; tempAllLayers{i,2} = [0 0 0 0 0]; end @@ -26,8 +26,8 @@ % Find values of 'bulkIn' and 'bulkOut' for this % contrast... - [~,~,~,bulkIn,bulkOut,~] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),... - cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [~,~,~,thisBulkIn,thisBulkOut,~] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),... + contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,nba,nbs,res); thisContrastLayers1 = [1 1 1]; % typeDef coder.varsize('thisContrastLayers1',[10000, 6],[1 1]); @@ -36,22 +36,22 @@ coder.varsize('thisContrastLayers2',[10000, 6],[1 1]); if isnan(str2double(functionHandle)) - [thisContrastLayers1, allRoughs(i)] = callMatlabFunction(params,i,functionHandle,bulkIn,bulkOut,numberOfContrasts,1); - [thisContrastLayers2, ~] = callMatlabFunction(params,i,functionHandle,bulkIn,bulkOut,numberOfContrasts,2); + [thisContrastLayers1, allRoughs(i)] = callMatlabFunction(params,i,functionHandle,thisBulkIn,thisBulkOut,numberOfContrasts,1); + [thisContrastLayers2, ~] = callMatlabFunction(params,i,functionHandle,thisBulkIn,thisBulkOut,numberOfContrasts,2); else - [thisContrastLayers1, allRoughs(i)] = callCppFunction(params, bulkIn, bulkOut, i, 0, functionHandle); - [thisContrastLayers2, ~] = callCppFunction(params, bulkIn, bulkOut, i, 1, functionHandle); + [thisContrastLayers1, allRoughs(i)] = callCppFunction(params,thisBulkIn,thisBulkOut,i,0,functionHandle); + [thisContrastLayers2, ~] = callCppFunction(params,thisBulkIn,thisBulkOut,i,1,functionHandle); end % If the output layers has 5 columns, then we need to do % the hydration correction (the user has not done it in the % custom function). Do that here.... if ~useImaginary - thisContrastLayers1 = applyHydrationReal(thisContrastLayers1,bulkIn,bulkOut); - thisContrastLayers2 = applyHydrationReal(thisContrastLayers2,bulkIn,bulkOut); + thisContrastLayers1 = applyHydrationReal(thisContrastLayers1,thisBulkIn,thisBulkOut); + thisContrastLayers2 = applyHydrationReal(thisContrastLayers2,thisBulkIn,thisBulkOut); else - thisContrastLayers1 = applyHydrationImag(thisContrastLayers1,bulkIn,bulkOut); - thisContrastLayers2 = applyHydrationImag(thisContrastLayers2,bulkIn,bulkOut); + thisContrastLayers1 = applyHydrationImag(thisContrastLayers1,thisBulkIn,thisBulkOut); + thisContrastLayers2 = applyHydrationImag(thisContrastLayers2,thisBulkIn,thisBulkOut); end tempAllLayers{i,1} = thisContrastLayers1; diff --git a/targetFunctions/+domainsTF/+customLayers/single.m b/targetFunctions/+domainsTF/+customLayers/single.m index 22e9cbaf3..674b213c7 100644 --- a/targetFunctions/+domainsTF/+customLayers/single.m +++ b/targetFunctions/+domainsTF/+customLayers/single.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = single(problemDef,problemDefCells,controls) % Single threaded version of the custom layers, domainsTF reflectivity @@ -16,8 +16,8 @@ ~,~,customFiles] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, resample, backsType, cCustFiles] = extractProblemParams(problemDef); calcSld = controls.calcSldDuringFit; @@ -29,10 +29,10 @@ % Pre-Allocation of output arrays... backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -82,8 +82,8 @@ resamPars = controls.resamPars; % Process the custom models.... -[calcAllLayers,allRoughs] = domainsTF.customLayers.processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary); +[calcAllLayers,allRoughs] = domainsTF.customLayers.processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,bulkIn,bulkOut,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary); % Parallel over all contrasts %layersCounter = 1; @@ -100,7 +100,7 @@ % from the input arrays. % First need to decide which values of the backgrounds, scalefactors % data shifts and bulk contrasts are associated with this contrast - [thisBackground,thisQshift,thisSf,thisNba,thisNbs,thisResol] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [thisBackground,thisQzshift,thisScalefactor,thisBulkIn,thisBulkOut,thisResol] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Get the custom layers output for this contrast % We have two for each contrast - one for each domain @@ -128,7 +128,7 @@ [sldProfile1,reflect1,Simul1,shifted_dat,layerSld1,resamLayers1,~,thisSsubs] = ... nonPolarisedTF.coreLayersCalculation... (thisContrastLayers1, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -136,7 +136,7 @@ [sldProfile2,reflect2,Simul2,~,layerSld2,resamLayers2,~,~] = ... nonPolarisedTF.coreLayersCalculation... (thisContrastLayers2, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -160,10 +160,10 @@ chis(i) = thisChiSquared; backgs(i) = thisBackground; - qshifts(i) = thisQshift; - sfs(i) = thisSf; - nbas(i) = thisNba; - nbss(i) = thisNbs; + qzshifts(i) = thisQzshift; + scalefactors(i) = thisScalefactor; + bulkIns(i) = thisBulkIn; + bulkOuts(i) = thisBulkOut; resols(i) = thisResol; allRoughs(i) = thisRough; end diff --git a/targetFunctions/+domainsTF/+customXY/calculate.m b/targetFunctions/+domainsTF/+customXY/calculate.m index e832cf7c9..07348b1cd 100644 --- a/targetFunctions/+domainsTF/+customXY/calculate.m +++ b/targetFunctions/+domainsTF/+customXY/calculate.m @@ -17,10 +17,10 @@ numberOfContrasts = problemDef.numberOfContrasts; outSsubs = zeros(numberOfContrasts,1); backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); chis = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); @@ -63,26 +63,26 @@ switch controls.parallel case 'single' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = domainsTF.customXY.single(problemDef,problemDefCells,controls); case 'points' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = domainsTF.customXY.parallelPoints(problemDef,problemDefCells,controls); case 'contrasts' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = domainsTF.customXY.parallelContrasts(problemDef,problemDefCells,controls); end problem.ssubs = outSsubs; -problem.backgrounds = backgs; -problem.qshifts = qshifts; -problem.scalefactors = sfs; -problem.nbairs = nbas; -problem.nbsubs = nbss; -problem.resolutions = resols; +problem.backgroundParams = backgs; +problem.qzshifts = qzshifts; +problem.scalefactors = scalefactors; +problem.bulkIn = bulkIns; +problem.bulkOut = bulkOuts; +problem.resolutionParams = resols; problem.calculations.all_chis = chis; problem.calculations.sum_chi = sum(chis); problem.allSubRough = allRoughs; diff --git a/targetFunctions/+domainsTF/+customXY/parallelContrasts.m b/targetFunctions/+domainsTF/+customXY/parallelContrasts.m index 469a7058a..65be0e9b5 100644 --- a/targetFunctions/+domainsTF/+customXY/parallelContrasts.m +++ b/targetFunctions/+domainsTF/+customXY/parallelContrasts.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = parallelContrasts(problemDef,problemDefCells,controls) @@ -12,16 +12,16 @@ customFiles] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, ~, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, ~, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, ~, backsType, cCustFiles] = extractProblemParams(problemDef); %Pre-Allocation... backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -74,12 +74,12 @@ domainRatio = 1; % Default for compile. -[domainSldProfiles,allRoughs] = domainsTF.customXY.processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params); +[domainSldProfiles,allRoughs] = domainsTF.customXY.processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,bulkIn,bulkOut,res,cCustFiles,numberOfContrasts,customFiles,params); for i = 1:numberOfContrasts outSsubs(i) = allRoughs(i); - [backgs(i),qshifts(i),sfs(i),nbas(i),nbss(i),resols(i)] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [backgs(i),qzshifts(i),scalefactors(i),bulkIns(i),bulkOuts(i),resols(i)] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Get the domain ratio for this contrast thisContrastDR = contrastDomainRatios(i); @@ -109,12 +109,12 @@ tempAllLayers{i} = {layerSld1, layerSld2}; tempSldProfiles{i} = {thisSld1, thisSld2}; - shifted_dat = shiftData(sfs(i),qshifts(i),dataPresent(i),allData{i},dataLimits{i},simLimits{i}); + shifted_dat = shiftData(scalefactors(i),qzshifts(i),dataPresent(i),allData{i},dataLimits{i},simLimits{i}); shifted_data{i} = shifted_dat; reflectivityType = 'standardAbeles'; - [reflect1,Simul1] = callReflectivity(nbas(i),nbss(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld1,allRoughs(i),resols(i),'single',reflectivityType,useImaginary); - [reflect2,Simul2] = callReflectivity(nbas(i),nbss(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld2,allRoughs(i),resols(i),'single',reflectivityType,useImaginary); + [reflect1,Simul1] = callReflectivity(bulkIns(i),bulkOuts(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld1,allRoughs(i),resols(i),'single',reflectivityType,useImaginary); + [reflect2,Simul2] = callReflectivity(bulkIns(i),bulkOuts(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld2,allRoughs(i),resols(i),'single',reflectivityType,useImaginary); [reflect1,Simul1,shifted_dat] = applyBackgroundCorrection(reflect1,Simul1,shifted_dat,backgs(i),backsType(i)); [reflect2,Simul2,shifted_dat] = applyBackgroundCorrection(reflect2,Simul2,shifted_dat,backgs(i),backsType(i)); diff --git a/targetFunctions/+domainsTF/+customXY/parallelPoints.m b/targetFunctions/+domainsTF/+customXY/parallelPoints.m index b6dcf473d..f18616c95 100644 --- a/targetFunctions/+domainsTF/+customXY/parallelPoints.m +++ b/targetFunctions/+domainsTF/+customXY/parallelPoints.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = parallelPoints(problemDef,problemDefCells,controls) @@ -12,16 +12,16 @@ customFiles] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, ~, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, ~, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, ~, backsType, cCustFiles] = extractProblemParams(problemDef); %Pre-Allocation... backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -74,12 +74,12 @@ domainRatio = 1; % Default for compile. -[domainSldProfiles,allRoughs] = domainsTF.customXY.processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params); +[domainSldProfiles,allRoughs] = domainsTF.customXY.processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,bulkIn,bulkOut,res,cCustFiles,numberOfContrasts,customFiles,params); for i = 1:numberOfContrasts outSsubs(i) = allRoughs(i); - [backgs(i),qshifts(i),sfs(i),nbas(i),nbss(i),resols(i)] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [backgs(i),qzshifts(i),scalefactors(i),bulkIns(i),bulkOuts(i),resols(i)] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Get the domain ratio for this contrast thisContrastDR = contrastDomainRatios(i); @@ -109,12 +109,12 @@ tempAllLayers{i} = {layerSld1, layerSld2}; tempSldProfiles{i} = {thisSld1, thisSld2}; - shifted_dat = shiftData(sfs(i),qshifts(i),dataPresent(i),allData{i},dataLimits{i},simLimits{i}); + shifted_dat = shiftData(scalefactors(i),qzshifts(i),dataPresent(i),allData{i},dataLimits{i},simLimits{i}); shifted_data{i} = shifted_dat; reflectivityType = 'standardAbeles'; - [reflect1,Simul1] = callReflectivity(nbas(i),nbss(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld1,allRoughs(i),resols(i),'points',reflectivityType,useImaginary); - [reflect2,Simul2] = callReflectivity(nbas(i),nbss(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld2,allRoughs(i),resols(i),'points',reflectivityType,useImaginary); + [reflect1,Simul1] = callReflectivity(bulkIns(i),bulkOuts(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld1,allRoughs(i),resols(i),'points',reflectivityType,useImaginary); + [reflect2,Simul2] = callReflectivity(bulkIns(i),bulkOuts(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld2,allRoughs(i),resols(i),'points',reflectivityType,useImaginary); [reflect1,Simul1,shifted_dat] = applyBackgroundCorrection(reflect1,Simul1,shifted_dat,backgs(i),backsType(i)); [reflect2,Simul2,shifted_dat] = applyBackgroundCorrection(reflect2,Simul2,shifted_dat,backgs(i),backsType(i)); diff --git a/targetFunctions/+domainsTF/+customXY/processCustomFunction.m b/targetFunctions/+domainsTF/+customXY/processCustomFunction.m index c809a94ab..4f34ffcb2 100644 --- a/targetFunctions/+domainsTF/+customXY/processCustomFunction.m +++ b/targetFunctions/+domainsTF/+customXY/processCustomFunction.m @@ -1,5 +1,5 @@ -function [allSLDs,allRoughs] = processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params) +function [allSLDs,allRoughs] = processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params) % Top-level function for processing custom XY profiles for all the % contrasts. @@ -23,14 +23,14 @@ functionHandle = customFiles{cCustFiles(i)}; % Find values of 'bulkIn' and 'bulkOut' for this contrast... - [~,~,~,bulkIn,bulkOut,~] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [~,~,~,thisBulkIn,thisBulkOut,~] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,nba,nbs,res); if isnan(str2double(functionHandle)) - [tempAllSLDs{i, 1}, allRoughs(i)] = callMatlabFunction(params,i,functionHandle,bulkIn,bulkOut,numberOfContrasts,1); - [tempAllSLDs{i, 2}, ~] = callMatlabFunction(params,i,functionHandle,bulkIn,bulkOut,numberOfContrasts,2); + [tempAllSLDs{i, 1}, allRoughs(i)] = callMatlabFunction(params,i,functionHandle,thisBulkIn,thisBulkOut,numberOfContrasts,1); + [tempAllSLDs{i, 2}, ~] = callMatlabFunction(params,i,functionHandle,thisBulkIn,thisBulkOut,numberOfContrasts,2); else - [tempAllSLDs{i, 1}, allRoughs(i)] = callCppFunction(params, bulkIn, bulkOut, i, 0, functionHandle); - [tempAllSLDs{i, 2}, ~] = callCppFunction(params, bulkIn, bulkOut, i, 1, functionHandle); + [tempAllSLDs{i, 1}, allRoughs(i)] = callCppFunction(params,thisBulkIn,thisBulkOut,i,0,functionHandle); + [tempAllSLDs{i, 2}, ~] = callCppFunction(params,thisBulkIn,thisBulkOut,i,1,functionHandle); end end diff --git a/targetFunctions/+domainsTF/+customXY/single.m b/targetFunctions/+domainsTF/+customXY/single.m index 4953f794f..a25b1a318 100644 --- a/targetFunctions/+domainsTF/+customXY/single.m +++ b/targetFunctions/+domainsTF/+customXY/single.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = single(problemDef,problemDefCells,controls) @@ -12,16 +12,16 @@ customFiles] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, ~, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, ~, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, ~, backsType, cCustFiles] = extractProblemParams(problemDef); %Pre-Allocation... backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -79,12 +79,12 @@ domainSldProfiles{i,1} = [1 1 ; 1 1]; domainSldProfiles{i,2} = [1 1 ; 1 1]; end -[domainSldProfiles,allRoughs] = domainsTF.customXY.processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params); +[domainSldProfiles,allRoughs] = domainsTF.customXY.processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,bulkIn,bulkOut,res,cCustFiles,numberOfContrasts,customFiles,params); for i = 1:numberOfContrasts outSsubs(i) = allRoughs(i); - [backgs(i),qshifts(i),sfs(i),nbas(i),nbss(i),resols(i)] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [backgs(i),qzshifts(i),scalefactors(i),bulkIns(i),bulkOuts(i),resols(i)] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Get the domain ratio for this contrast thisContrastDR = contrastDomainRatios(i); @@ -114,12 +114,12 @@ tempAllLayers{i} = {layerSld1, layerSld2}; tempSldProfiles{i} = {thisSld1, thisSld2}; - shifted_dat = shiftData(sfs(i),qshifts(i),dataPresent(i),allData{i},dataLimits{i},simLimits{i}); + shifted_dat = shiftData(scalefactors(i),qzshifts(i),dataPresent(i),allData{i},dataLimits{i},simLimits{i}); shifted_data{i} = shifted_dat; reflectivityType = 'standardAbeles'; - [reflect1,Simul1] = callReflectivity(nbas(i),nbss(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld1,allRoughs(i),resols(i),'single',reflectivityType,useImaginary); - [reflect2,Simul2] = callReflectivity(nbas(i),nbss(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld2,allRoughs(i),resols(i),'single',reflectivityType,useImaginary); + [reflect1,Simul1] = callReflectivity(bulkIns(i),bulkOuts(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld1,allRoughs(i),resols(i),'single',reflectivityType,useImaginary); + [reflect2,Simul2] = callReflectivity(bulkIns(i),bulkOuts(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld2,allRoughs(i),resols(i),'single',reflectivityType,useImaginary); [reflect1,Simul1,shifted_dat] = applyBackgroundCorrection(reflect1,Simul1,shifted_dat,backgs(i),backsType(i)); [reflect2,Simul2,shifted_dat] = applyBackgroundCorrection(reflect2,Simul2,shifted_dat,backgs(i),backsType(i)); diff --git a/targetFunctions/+domainsTF/+standardLayers/calculate.m b/targetFunctions/+domainsTF/+standardLayers/calculate.m index d03207729..80e6732f6 100644 --- a/targetFunctions/+domainsTF/+standardLayers/calculate.m +++ b/targetFunctions/+domainsTF/+standardLayers/calculate.m @@ -17,10 +17,10 @@ numberOfContrasts = problemDef.numberOfContrasts; outSsubs = zeros(numberOfContrasts,1); backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); chis = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); @@ -59,27 +59,27 @@ switch controls.parallel case 'single' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = domainsTF.standardLayers.single(problemDef,problemDefCells,controls); case 'points' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = domainsTF.standardLayers.parallelPoints(problemDef,problemDefCells,controls); case 'contrasts' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = domainsTF.standardLayers.parallelContrasts(problemDef,problemDefCells,controls); end % Package everything into one array for tidy output problem.ssubs = outSsubs; -problem.backgrounds = backgs; -problem.qshifts = qshifts; -problem.scalefactors = sfs; -problem.nbairs = nbas; -problem.nbsubs = nbss; -problem.resolutions = resols; +problem.backgroundParams = backgs; +problem.qzshifts = qzshifts; +problem.scalefactors = scalefactors; +problem.bulkIn = bulkIns; +problem.bulkOut = bulkOuts; +problem.resolutionParams = resols; problem.calculations.all_chis = chis; problem.calculations.sum_chi = sum(chis); problem.allSubRough = allRoughs; diff --git a/targetFunctions/+domainsTF/+standardLayers/parallelContrasts.m b/targetFunctions/+domainsTF/+standardLayers/parallelContrasts.m index 7e7f707aa..9d383099d 100644 --- a/targetFunctions/+domainsTF/+standardLayers/parallelContrasts.m +++ b/targetFunctions/+domainsTF/+standardLayers/parallelContrasts.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = parallelContrasts(problemDef,problemDefCells,controls) % Single threaded version of the Standard Layers calculation @@ -20,8 +20,8 @@ domainContrastLayers = problemDefCells{19}; % Extract individual parameters from problemDef struct -[numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, resample, backsType, ~] = extractProblemParams(problemDef); calcSld = controls.calcSldDuringFit; @@ -33,10 +33,10 @@ % Allocate the memory for the output arrays before the main loop backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -105,7 +105,7 @@ % from the input arrays. % First need to decide which values of the backgrounds, scalefactors % data shifts and bulk contrasts are associated with this contrast - [thisBackground,thisQshift,thisSf,thisNba,thisNbs,thisResol] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [thisBackground,thisQzshift,thisScalefactor,thisBulkIn,thisBulkOut,thisResol] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Also need to determine which layers from the overall layers list % are required for this contrast, and put them in the correct order @@ -132,12 +132,12 @@ % Call the core layers calculation - need to do this once for each % domain [sldProfile1,reflect1,Simul1,shifted_dat,layerSld1,resamLayers1,~,thisSsubs]= nonPolarisedTF.coreLayersCalculation(thisContrastLayers1, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); [sldProfile2,reflect2,Simul2,~,layerSld2,resamLayers2,~,~] = nonPolarisedTF.coreLayersCalculation(thisContrastLayers2, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -161,10 +161,10 @@ chis(i) = thisChiSquared; backgs(i) = thisBackground; - qshifts(i) = thisQshift; - sfs(i) = thisSf; - nbas(i) = thisNba; - nbss(i) = thisNbs; + qzshifts(i) = thisQzshift; + scalefactors(i) = thisScalefactor; + bulkIns(i) = thisBulkIn; + bulkOuts(i) = thisBulkOut; resols(i) = thisResol; allRoughs(i) = thisRough; end diff --git a/targetFunctions/+domainsTF/+standardLayers/parallelPoints.m b/targetFunctions/+domainsTF/+standardLayers/parallelPoints.m index 94e210aa3..ff14c2dd3 100644 --- a/targetFunctions/+domainsTF/+standardLayers/parallelPoints.m +++ b/targetFunctions/+domainsTF/+standardLayers/parallelPoints.m @@ -1,5 +1,5 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = parallelPoints(problemDef,problemDefCells,controls) % Single threaded version of the Standard Layers calculation @@ -21,8 +21,8 @@ domainContrastLayers = problemDefCells{19}; % Extract individual parameters from problemDef struct -[numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, resample, backsType, ~] = extractProblemParams(problemDef); calcSld = controls.calcSldDuringFit; @@ -34,10 +34,10 @@ % Allocate the memory for the output arrays before the main loop backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -106,7 +106,7 @@ % from the input arrays. % First need to decide which values of the backgrounds, scalefactors % data shifts and bulk contrasts are associated with this contrast - [thisBackground,thisQshift,thisSf,thisNba,thisNbs,thisResol] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [thisBackground,thisQzshift,thisScalefactor,thisBulkIn,thisBulkOut,thisResol] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Also need to determine which layers from the overall layers list % are required for this contrast, and put them in the correct order @@ -133,12 +133,12 @@ % Call the core layers calculation - need to do this once for each % domain [sldProfile1,reflect1,Simul1,shifted_dat,layerSld1,resamLayers1,~,thisSsubs]= nonPolarisedTF.coreLayersCalculation(thisContrastLayers1, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); [sldProfile2,reflect2,Simul2,~,layerSld2,resamLayers2,~,~] = nonPolarisedTF.coreLayersCalculation(thisContrastLayers2, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -162,10 +162,10 @@ chis(i) = thisChiSquared; backgs(i) = thisBackground; - qshifts(i) = thisQshift; - sfs(i) = thisSf; - nbas(i) = thisNba; - nbss(i) = thisNbs; + qzshifts(i) = thisQzshift; + scalefactors(i) = thisScalefactor; + bulkIns(i) = thisBulkIn; + bulkOuts(i) = thisBulkOut; resols(i) = thisResol; allRoughs(i) = thisRough; end diff --git a/targetFunctions/+domainsTF/+standardLayers/single.m b/targetFunctions/+domainsTF/+standardLayers/single.m index 4e737e2dd..28b8e8575 100644 --- a/targetFunctions/+domainsTF/+standardLayers/single.m +++ b/targetFunctions/+domainsTF/+standardLayers/single.m @@ -1,5 +1,5 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,domainSldProfiles,allLayers,... allRoughs] = single(problemDef,problemDefCells,controls) % Single threaded version of the Standard Layers calculation @@ -21,8 +21,8 @@ domainContrastLayers = problemDefCells{19}; % Extract individual parameters from problemDef struct -[numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, resample, backsType, ~] = extractProblemParams(problemDef); calcSld = controls.calcSldDuringFit; @@ -34,10 +34,10 @@ % Allocate the memory for the output arrays before the main loop backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -106,7 +106,7 @@ % from the input arrays. % First need to decide which values of the backgrounds, scalefactors % data shifts and bulk contrasts are associated with this contrast - [thisBackground,thisQshift,thisSf,thisNba,thisNbs,thisResol] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [thisBackground,thisQzshift,thisScalefactor,thisBulkIn,thisBulkOut,thisResol] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Also need to determine which layers from the overall layers list % are required for this contrast, and put them in the correct order @@ -133,12 +133,12 @@ % Call the core layers calculation - need to do this once for each % domain [sldProfile1,reflect1,Simul1,shifted_dat,layerSld1,resamLayers1,~,thisSsubs]= nonPolarisedTF.coreLayersCalculation(thisContrastLayers1, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); [sldProfile2,reflect2,Simul2,~,layerSld2,resamLayers2,~,~] = nonPolarisedTF.coreLayersCalculation(thisContrastLayers2, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -162,10 +162,10 @@ chis(i) = thisChiSquared; backgs(i) = thisBackground; - qshifts(i) = thisQshift; - sfs(i) = thisSf; - nbas(i) = thisNba; - nbss(i) = thisNbs; + qzshifts(i) = thisQzshift; + scalefactors(i) = thisScalefactor; + bulkIns(i) = thisBulkIn; + bulkOuts(i) = thisBulkOut; resols(i) = thisResol; allRoughs(i) = thisRough; end diff --git a/targetFunctions/+domainsTF/reflectivityCalculation.m b/targetFunctions/+domainsTF/reflectivityCalculation.m index e6e58ed46..5078a488d 100644 --- a/targetFunctions/+domainsTF/reflectivityCalculation.m +++ b/targetFunctions/+domainsTF/reflectivityCalculation.m @@ -22,12 +22,12 @@ % some execution paths' error. preAlloc = zeros(numberOfContrasts,1); problem = struct('ssubs',preAlloc,... - 'backgrounds',preAlloc,... - 'qshifts',preAlloc,... + 'backgroundParams',preAlloc,... + 'qzshifts',preAlloc,... 'scalefactors',preAlloc,... - 'nbairs',preAlloc,... - 'nbsubs',preAlloc,... - 'resolutions',preAlloc,... + 'bulkIn',preAlloc,... + 'bulkOut',preAlloc,... + 'resolutionParams',preAlloc,... 'calculations',struct('all_chis',preAlloc,'sum_chi',0),... 'allSubRough',preAlloc,... 'resample',preAlloc'); diff --git a/targetFunctions/+nonPolarisedTF/+customLayers/calculate.m b/targetFunctions/+nonPolarisedTF/+customLayers/calculate.m index 805f36eea..988dd47ee 100644 --- a/targetFunctions/+nonPolarisedTF/+customLayers/calculate.m +++ b/targetFunctions/+nonPolarisedTF/+customLayers/calculate.m @@ -16,10 +16,10 @@ numberOfContrasts = problemDef.numberOfContrasts; outSsubs = zeros(numberOfContrasts,1); backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); chis = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); @@ -57,26 +57,26 @@ switch controls.parallel case 'single' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = nonPolarisedTF.customLayers.single(problemDef,problemDefCells,controls); case 'points' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = nonPolarisedTF.customLayers.parallelPoints(problemDef,problemDefCells,controls); case 'contrasts' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = nonPolarisedTF.customLayers.parallelContrasts(problemDef,problemDefCells,controls); end problem.ssubs = outSsubs; -problem.backgrounds = backgs; -problem.qshifts = qshifts; -problem.scalefactors = sfs; -problem.nbairs = nbas; -problem.nbsubs = nbss; -problem.resolutions = resols; +problem.backgroundParams = backgs; +problem.qzshifts = qzshifts; +problem.scalefactors = scalefactors; +problem.bulkIn = bulkIns; +problem.bulkOut = bulkOuts; +problem.resolutionParams = resols; problem.calculations.all_chis = chis; problem.calculations.sum_chi = sum(chis); problem.allSubRough = allRoughs; diff --git a/targetFunctions/+nonPolarisedTF/+customLayers/parallelContrasts.m b/targetFunctions/+nonPolarisedTF/+customLayers/parallelContrasts.m index 9c7174446..d6e355863 100644 --- a/targetFunctions/+nonPolarisedTF/+customLayers/parallelContrasts.m +++ b/targetFunctions/+nonPolarisedTF/+customLayers/parallelContrasts.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = parallelContrasts(problemDef,problemDefCells,controls) @@ -17,8 +17,8 @@ ~,~,customFiles] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, resample, backsType, cCustFiles] = extractProblemParams(problemDef); calcSld = controls.calcSldDuringFit; @@ -26,10 +26,10 @@ % Pre-Allocation of output arrays... backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -59,8 +59,8 @@ resamPars = controls.resamPars; % Process the custom models.... -[allLayers,allRoughs] = nonPolarisedTF.customLayers.processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary); +[allLayers,allRoughs] = nonPolarisedTF.customLayers.processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,bulkIn,bulkOut,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary); % Multi cored over all contrasts parfor i = 1:numberOfContrasts @@ -69,7 +69,7 @@ % from the input arrays. % First need to decide which values of the backgrounds, scalefactors % data shifts and bulk contrasts are associated with this contrast - [thisBackground,thisQshift,thisSf,thisNba,thisNbs,thisResol] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [thisBackground,thisQzshift,thisScalefactor,thisBulkIn,thisBulkOut,thisResol] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Get the custom layers output for this contrast thisContrastLayers = allLayers{i}; @@ -94,7 +94,7 @@ [sldProfile,reflect,Simul,shifted_dat,layerSld,resamLayers,thisChiSquared,thisSsubs] = ... nonPolarisedTF.coreLayersCalculation... (thisContrastLayers, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -112,10 +112,10 @@ chis(i) = thisChiSquared; backgs(i) = thisBackground; - qshifts(i) = thisQshift; - sfs(i) = thisSf; - nbas(i) = thisNba; - nbss(i) = thisNbs; + qzshifts(i) = thisQzshift; + scalefactors(i) = thisScalefactor; + bulkIns(i) = thisBulkIn; + bulkOuts(i) = thisBulkOut; resols(i) = thisResol; allRoughs(i) = thisRough; diff --git a/targetFunctions/+nonPolarisedTF/+customLayers/parallelPoints.m b/targetFunctions/+nonPolarisedTF/+customLayers/parallelPoints.m index 962c70ad2..bc105912a 100644 --- a/targetFunctions/+nonPolarisedTF/+customLayers/parallelPoints.m +++ b/targetFunctions/+nonPolarisedTF/+customLayers/parallelPoints.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = parallelPoints(problemDef,problemDefCells,controls) % Multi threaded version of the custom layers over reflectivity poimnts @@ -16,8 +16,8 @@ ~,~,customFiles] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, resample, backsType, cCustFiles] = extractProblemParams(problemDef); calcSld = controls.calcSldDuringFit; @@ -25,10 +25,10 @@ % Pre-Allocation of output arrays... backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -58,8 +58,8 @@ resamPars = controls.resamPars; % Process the custom models.... -[allLayers,allRoughs] = nonPolarisedTF.customLayers.processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary); +[allLayers,allRoughs] = nonPolarisedTF.customLayers.processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,bulkIn,bulkOut,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary); % Single cored over all contrasts for i = 1:numberOfContrasts @@ -68,7 +68,7 @@ % from the input arrays. % First need to decide which values of the backgrounds, scalefactors % data shifts and bulk contrasts are associated with this contrast - [thisBackground,thisQshift,thisSf,thisNba,thisNbs,thisResol] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [thisBackground,thisQzshift,thisScalefactor,thisBulkIn,thisBulkOut,thisResol] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Get the custom layers output for this contrast thisContrastLayers = allLayers{i}; @@ -93,7 +93,7 @@ [sldProfile,reflect,Simul,shifted_dat,layerSld,resamLayers,thisChiSquared,thisSsubs] = ... nonPolarisedTF.coreLayersCalculation... (thisContrastLayers, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -111,10 +111,10 @@ chis(i) = thisChiSquared; backgs(i) = thisBackground; - qshifts(i) = thisQshift; - sfs(i) = thisSf; - nbas(i) = thisNba; - nbss(i) = thisNbs; + qzshifts(i) = thisQzshift; + scalefactors(i) = thisScalefactor; + bulkIns(i) = thisBulkIn; + bulkOuts(i) = thisBulkOut; resols(i) = thisResol; allRoughs(i) = thisRough; diff --git a/targetFunctions/+nonPolarisedTF/+customLayers/processCustomFunction.m b/targetFunctions/+nonPolarisedTF/+customLayers/processCustomFunction.m index a5ef22eaf..8b9734962 100644 --- a/targetFunctions/+nonPolarisedTF/+customLayers/processCustomFunction.m +++ b/targetFunctions/+nonPolarisedTF/+customLayers/processCustomFunction.m @@ -1,5 +1,5 @@ -function [allLayers,allRoughs] = processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs,... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary) +function [allLayers,allRoughs] = processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs,... + shifts,scalefactor,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary) % Top-level function for processing custom layers for all the % contrasts. @@ -23,24 +23,24 @@ % Find values of 'bulkIn' and 'bulkOut' for this % contrast... - [~,~,~,bulkIn,bulkOut,~] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [~,~,~,thisBulkIn,thisBulkOut,~] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,nba,nbs,res); thisContrastLayers = [1 1 1]; % typeDef coder.varsize('thisContrastLayers',[10000, 6],[1 1]); if isnan(str2double(functionHandle)) - [thisContrastLayers,allRoughs(i)] = callMatlabFunction(params,i,functionHandle,bulkIn,bulkOut,numberOfContrasts,0); + [thisContrastLayers,allRoughs(i)] = callMatlabFunction(params,i,functionHandle,thisBulkIn,thisBulkOut,numberOfContrasts,0); else - [thisContrastLayers, allRoughs(i)] = callCppFunction(params, bulkIn, bulkOut, i, -1, functionHandle); + [thisContrastLayers, allRoughs(i)] = callCppFunction(params,thisBulkIn,thisBulkOut,i,-1,functionHandle); end % If the output layers has 5 columns, then we need to do % the hydration correction (the user has not done it in the % custom function). Do that here.... if ~useImaginary - thisContrastLayers = applyHydrationReal(thisContrastLayers,bulkIn,bulkOut); + thisContrastLayers = applyHydrationReal(thisContrastLayers,thisBulkIn,thisBulkOut); else - thisContrastLayers = applyHydrationImag(thisContrastLayers,bulkIn,bulkOut); + thisContrastLayers = applyHydrationImag(thisContrastLayers,thisBulkIn,thisBulkOut); end tempAllLayers{i} = thisContrastLayers; diff --git a/targetFunctions/+nonPolarisedTF/+customLayers/single.m b/targetFunctions/+nonPolarisedTF/+customLayers/single.m index 2267b3750..4bc8516aa 100644 --- a/targetFunctions/+nonPolarisedTF/+customLayers/single.m +++ b/targetFunctions/+nonPolarisedTF/+customLayers/single.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = single(problemDef,problemDefCells,controls) % Single threaded version of the custom layers, nonPolarisedTF reflectivity @@ -16,8 +16,8 @@ ~,~,customFiles] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, resample, backsType, cCustFiles] = extractProblemParams(problemDef); calcSld = controls.calcSldDuringFit; @@ -25,10 +25,10 @@ % Pre-Allocation of output arrays... backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -58,8 +58,8 @@ resamPars = controls.resamPars; % Process the custom models.... -[allLayers,allRoughs] = nonPolarisedTF.customLayers.processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary); +[allLayers,allRoughs] = nonPolarisedTF.customLayers.processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,bulkIn,bulkOut,res,cCustFiles,numberOfContrasts,customFiles,params,useImaginary); % Single cored over all contrasts for i = 1:numberOfContrasts @@ -68,7 +68,7 @@ % from the input arrays. % First need to decide which values of the backgrounds, scalefactors % data shifts and bulk contrasts are associated with this contrast - [thisBackground,thisQshift,thisSf,thisNba,thisNbs,thisResol] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [thisBackground,thisQzshift,thisScalefactor,thisBulkIn,thisBulkOut,thisResol] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Get the custom layers output for this contrast thisContrastLayers = allLayers{i}; @@ -93,7 +93,7 @@ [sldProfile,reflect,Simul,shifted_dat,layerSld,resamLayers,thisChiSquared,thisSsubs] = ... nonPolarisedTF.coreLayersCalculation... (thisContrastLayers, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -111,10 +111,10 @@ chis(i) = thisChiSquared; backgs(i) = thisBackground; - qshifts(i) = thisQshift; - sfs(i) = thisSf; - nbas(i) = thisNba; - nbss(i) = thisNbs; + qzshifts(i) = thisQzshift; + scalefactors(i) = thisScalefactor; + bulkIns(i) = thisBulkIn; + bulkOuts(i) = thisBulkOut; resols(i) = thisResol; allRoughs(i) = thisRough; diff --git a/targetFunctions/+nonPolarisedTF/+customXY/calculate.m b/targetFunctions/+nonPolarisedTF/+customXY/calculate.m index 5d409723e..448860a62 100644 --- a/targetFunctions/+nonPolarisedTF/+customXY/calculate.m +++ b/targetFunctions/+nonPolarisedTF/+customXY/calculate.m @@ -18,10 +18,10 @@ numberOfContrasts = problemDef.numberOfContrasts; outSsubs = zeros(numberOfContrasts,1); backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); chis = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); @@ -58,26 +58,26 @@ switch controls.parallel case 'single' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = nonPolarisedTF.customXY.single(problemDef,problemDefCells,controls); case 'points' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = nonPolarisedTF.customXY.parallelPoints(problemDef,problemDefCells,controls); case 'contrasts' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = nonPolarisedTF.customXY.parallelContrasts(problemDef,problemDefCells,controls); end problem.ssubs = outSsubs; -problem.backgrounds = backgs; -problem.qshifts = qshifts; -problem.scalefactors = sfs; -problem.nbairs = nbas; -problem.nbsubs = nbss; -problem.resolutions = resols; +problem.backgroundParams = backgs; +problem.qzshifts = qzshifts; +problem.scalefactors = scalefactors; +problem.bulkIn = bulkIns; +problem.bulkOut = bulkOuts; +problem.resolutionParams = resols; problem.calculations.all_chis = chis; problem.calculations.sum_chi = sum(chis); problem.allSubRough = allRoughs; diff --git a/targetFunctions/+nonPolarisedTF/+customXY/parallelContrasts.m b/targetFunctions/+nonPolarisedTF/+customXY/parallelContrasts.m index 5c0c1b0e9..37f04f766 100644 --- a/targetFunctions/+nonPolarisedTF/+customXY/parallelContrasts.m +++ b/targetFunctions/+nonPolarisedTF/+customXY/parallelContrasts.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = parallelContrasts(problemDef,problemDefCells,controls) @@ -12,16 +12,16 @@ customFiles] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, ~, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, ~, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, ~, backsType, cCustFiles] = extractProblemParams(problemDef); %Pre-Allocation... backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -54,11 +54,11 @@ resamPars = controls.resamPars; useImaginary = problemDef.useImaginary; -[sldProfiles,allRoughs] = nonPolarisedTF.customXY.processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params); +[sldProfiles,allRoughs] = nonPolarisedTF.customXY.processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,bulkIn,bulkOut,res,cCustFiles,numberOfContrasts,customFiles,params); parfor i = 1:numberOfContrasts - [backgs(i),qshifts(i),sfs(i),nbas(i),nbss(i),resols(i)] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [backgs(i),qzshifts(i),scalefactors(i),bulkIns(i),bulkOuts(i),resols(i)] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Resample the layers thisSld = sldProfiles{i}; @@ -73,11 +73,11 @@ layerSlds{i} = layerSld; allLayers{i} = layerSld; - shifted_dat = shiftData(sfs(i),qshifts(i),dataPresent(i),allData{i},dataLimits{i},simLimits{i}); + shifted_dat = shiftData(scalefactors(i),qzshifts(i),dataPresent(i),allData{i},dataLimits{i},simLimits{i}); shifted_data{i} = shifted_dat; reflectivityType = 'standardAbeles'; - [reflect,Simul] = callReflectivity(nbas(i),nbss(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld,outSsubs(i),resols(i),'single',reflectivityType,useImaginary); + [reflect,Simul] = callReflectivity(bulkIns(i),bulkOuts(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld,outSsubs(i),resols(i),'single',reflectivityType,useImaginary); [reflect,Simul,shifted_dat] = applyBackgroundCorrection(reflect,Simul,shifted_dat,backgs(i),backsType(i)); diff --git a/targetFunctions/+nonPolarisedTF/+customXY/parallelPoints.m b/targetFunctions/+nonPolarisedTF/+customXY/parallelPoints.m index 2127eed42..4605cba3b 100644 --- a/targetFunctions/+nonPolarisedTF/+customXY/parallelPoints.m +++ b/targetFunctions/+nonPolarisedTF/+customXY/parallelPoints.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = parallelPoints(problemDef,problemDefCells,controls) @@ -14,16 +14,16 @@ customFiles] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, ~, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, ~, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, ~, backsType, cCustFiles] = extractProblemParams(problemDef); %Pre-Allocation... backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -56,11 +56,11 @@ resamPars = controls.resamPars; useImaginary = problemDef.useImaginary; -[sldProfiles,allRoughs] = nonPolarisedTF.customXY.processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params); +[sldProfiles,allRoughs] = nonPolarisedTF.customXY.processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,bulkIn,bulkOut,res,cCustFiles,numberOfContrasts,customFiles,params); for i = 1:numberOfContrasts - [backgs(i),qshifts(i),sfs(i),nbas(i),nbss(i),resols(i)] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [backgs(i),qzshifts(i),scalefactors(i),bulkIns(i),bulkOuts(i),resols(i)] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Resample the layers thisSld = sldProfiles{i}; @@ -75,11 +75,11 @@ layerSlds{i} = layerSld; allLayers{i} = layerSld; - shifted_dat = shiftData(sfs(i),qshifts(i),dataPresent(i),allData{i},dataLimits{i},simLimits{i}); + shifted_dat = shiftData(scalefactors(i),qzshifts(i),dataPresent(i),allData{i},dataLimits{i},simLimits{i}); shifted_data{i} = shifted_dat; reflectivityType = 'standardAbeles'; - [reflect,Simul] = callReflectivity(nbas(i),nbss(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld,outSsubs(i),resols(i),'points',reflectivityType,useImaginary); + [reflect,Simul] = callReflectivity(bulkIns(i),bulkOuts(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld,outSsubs(i),resols(i),'points',reflectivityType,useImaginary); [reflect,Simul,shifted_dat] = applyBackgroundCorrection(reflect,Simul,shifted_dat,backgs(i),backsType(i)); diff --git a/targetFunctions/+nonPolarisedTF/+customXY/processCustomFunction.m b/targetFunctions/+nonPolarisedTF/+customXY/processCustomFunction.m index 394b88943..5f0c67699 100644 --- a/targetFunctions/+nonPolarisedTF/+customXY/processCustomFunction.m +++ b/targetFunctions/+nonPolarisedTF/+customXY/processCustomFunction.m @@ -1,5 +1,5 @@ -function [allSLDs,allRoughs] = processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs,... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params) +function [allSLDs,allRoughs] = processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs,... + shifts,scalefactor,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params) % Top-level function for processing custom XY profiles for all the % contrasts. @@ -22,12 +22,12 @@ % Find values of 'bulkIn' and 'bulkOut' for this % contrast... - [~,~,~,bulkIn,bulkOut,~] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [~,~,~,thisBulkIn,thisBulkOut,~] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,nba,nbs,res); if isnan(str2double(functionHandle)) - [tempAllSLDs{i}, allRoughs(i)] = callMatlabFunction(params,i,functionHandle,bulkIn,bulkOut,numberOfContrasts,0); + [tempAllSLDs{i}, allRoughs(i)] = callMatlabFunction(params,i,functionHandle,thisBulkIn,thisBulkOut,numberOfContrasts,0); else - [tempAllSLDs{i}, allRoughs(i)] = callCppFunction(params, bulkIn, bulkOut, i, -1, functionHandle); + [tempAllSLDs{i}, allRoughs(i)] = callCppFunction(params,thisBulkIn,thisBulkOut,i,-1,functionHandle); end end diff --git a/targetFunctions/+nonPolarisedTF/+customXY/single.m b/targetFunctions/+nonPolarisedTF/+customXY/single.m index 0a936dfab..3197bc4c5 100644 --- a/targetFunctions/+nonPolarisedTF/+customXY/single.m +++ b/targetFunctions/+nonPolarisedTF/+customXY/single.m @@ -1,4 +1,4 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = single(problemDef,problemDefCells,controls) @@ -12,16 +12,16 @@ customFiles] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, ~, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, ~, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, ~, backsType, cCustFiles] = extractProblemParams(problemDef); %Pre-Allocation... backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -54,11 +54,11 @@ resamPars = controls.resamPars; useImaginary = problemDef.useImaginary; -[sldProfiles,allRoughs] = nonPolarisedTF.customXY.processCustomFunction(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs, ... - shifts,sf,nba,nbs,res,cCustFiles,numberOfContrasts,customFiles,params); +[sldProfiles,allRoughs] = nonPolarisedTF.customXY.processCustomFunction(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs, ... + shifts,scalefactor,bulkIn,bulkOut,res,cCustFiles,numberOfContrasts,customFiles,params); for i = 1:numberOfContrasts - [backgs(i),qshifts(i),sfs(i),nbas(i),nbss(i),resols(i)] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [backgs(i),qzshifts(i),scalefactors(i),bulkIns(i),bulkOuts(i),resols(i)] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Resample the layers thisSld = sldProfiles{i}; @@ -73,11 +73,11 @@ layerSlds{i} = layerSld; allLayers{i} = layerSld; - shifted_dat = shiftData(sfs(i),qshifts(i),dataPresent(i),allData{i},dataLimits{i},simLimits{i}); + shifted_dat = shiftData(scalefactors(i),qzshifts(i),dataPresent(i),allData{i},dataLimits{i},simLimits{i}); shifted_data{i} = shifted_dat; reflectivityType = 'standardAbeles'; - [reflect,Simul] = callReflectivity(nbas(i),nbss(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld,outSsubs(i),resols(i),'single',reflectivityType,useImaginary); + [reflect,Simul] = callReflectivity(bulkIns(i),bulkOuts(i),simLimits{i},repeatLayers{i},shifted_dat,layerSld,outSsubs(i),resols(i),'single',reflectivityType,useImaginary); [reflect,Simul,shifted_dat] = applyBackgroundCorrection(reflect,Simul,shifted_dat,backgs(i),backsType(i)); diff --git a/targetFunctions/+nonPolarisedTF/+standardLayers/calculate.m b/targetFunctions/+nonPolarisedTF/+standardLayers/calculate.m index b8e6194f5..cbfc6d4bb 100644 --- a/targetFunctions/+nonPolarisedTF/+standardLayers/calculate.m +++ b/targetFunctions/+nonPolarisedTF/+standardLayers/calculate.m @@ -17,10 +17,10 @@ numberOfContrasts = problemDef.numberOfContrasts; outSsubs = zeros(numberOfContrasts,1); backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); chis = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); @@ -59,27 +59,27 @@ switch controls.parallel case 'single' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = nonPolarisedTF.standardLayers.single(problemDef,problemDefCells,controls); case 'points' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = nonPolarisedTF.standardLayers.parallelPoints(problemDef,problemDefCells,controls); case 'contrasts' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = nonPolarisedTF.standardLayers.parallelContrasts(problemDef,problemDefCells,controls); end % Package everything into one array for tidy output problem.ssubs = outSsubs; -problem.backgrounds = backgs; -problem.qshifts = qshifts; -problem.scalefactors = sfs; -problem.nbairs = nbas; -problem.nbsubs = nbss; -problem.resolutions = resols; +problem.backgroundParams = backgs; +problem.qzshifts = qzshifts; +problem.scalefactors = scalefactors; +problem.bulkIn = bulkIns; +problem.bulkOut = bulkOuts; +problem.resolutionParams = resols; problem.calculations.all_chis = chis; problem.calculations.sum_chi = sum(chis); problem.allSubRough = allRoughs; diff --git a/targetFunctions/+nonPolarisedTF/+standardLayers/parallelContrasts.m b/targetFunctions/+nonPolarisedTF/+standardLayers/parallelContrasts.m index 5744d4472..17e53c650 100644 --- a/targetFunctions/+nonPolarisedTF/+standardLayers/parallelContrasts.m +++ b/targetFunctions/+nonPolarisedTF/+standardLayers/parallelContrasts.m @@ -1,5 +1,5 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = parallelContrasts(problemDef,problemDefCells,controls) % Standard Layers calculation paralelised over the outer loop @@ -18,8 +18,8 @@ layersDetails,~] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, resample, backsType, ~] = extractProblemParams(problemDef); calcSld = controls.calcSldDuringFit; @@ -27,10 +27,10 @@ % Allocate the memory for the output arrays before the main loop backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -71,7 +71,7 @@ % from the input arrays. % First need to decide which values of the backgrounds, scalefactors % data shifts and bulk contrasts are associated with this contrast - [thisBackground,thisQshift,thisSf,thisNba,thisNbs,thisResol] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [thisBackground,thisQzshift,thisScalefactor,thisBulkIn,thisBulkOut,thisResol] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Also need to determine which layers from the overall layers list % are required for this contrast, and put them in the correct order @@ -97,7 +97,7 @@ % Call the core layers calculation [sldProfile,reflect,Simul,shifted_dat,layerSld,resampledLayers,... thisChiSquared,thisSsubs] = nonPolarisedTF.coreLayersCalculation(thisContrastLayers, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -113,10 +113,10 @@ layerSlds{i} = layerSld; chis(i) = thisChiSquared; backgs(i) = thisBackground; - qshifts(i) = thisQshift; - sfs(i) = thisSf; - nbas(i) = thisNba; - nbss(i) = thisNbs; + qzshifts(i) = thisQzshift; + scalefactors(i) = thisScalefactor; + bulkIns(i) = thisBulkIn; + bulkOuts(i) = thisBulkOut; resols(i) = thisResol; allRoughs(i) = thisRough; allLayers{i} = resampledLayers; diff --git a/targetFunctions/+nonPolarisedTF/+standardLayers/parallelPoints.m b/targetFunctions/+nonPolarisedTF/+standardLayers/parallelPoints.m index 3df8cd4e2..74449119b 100644 --- a/targetFunctions/+nonPolarisedTF/+standardLayers/parallelPoints.m +++ b/targetFunctions/+nonPolarisedTF/+standardLayers/parallelPoints.m @@ -1,5 +1,5 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = parallelPoints(problemDef,problemDefCells,controls) % Standard Layers calculation paralelised over the inner loop @@ -19,8 +19,8 @@ layersDetails,~] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, resample, backsType, ~] = extractProblemParams(problemDef); calcSld = controls.calcSldDuringFit; @@ -28,10 +28,10 @@ % Allocate the memory for the output arrays before the main loop backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -72,7 +72,7 @@ % from the input arrays. % First need to decide which values of the backgrounds, scalefactors % data shifts and bulk contrasts are associated with this contrast - [thisBackground,thisQshift,thisSf,thisNba,thisNbs,thisResol] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [thisBackground,thisQzshift,thisScalefactor,thisBulkIn,thisBulkOut,thisResol] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Also need to determine which layers from the overall layers list % are required for this contrast, and put them in the correct order @@ -98,7 +98,7 @@ % Call the core layers calculation [sldProfile,reflect,Simul,shifted_dat,layerSld,resampledLayers,... thisChiSquared,thisSsubs] = nonPolarisedTF.coreLayersCalculation(thisContrastLayers, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -114,10 +114,10 @@ layerSlds{i} = layerSld; chis(i) = thisChiSquared; backgs(i) = thisBackground; - qshifts(i) = thisQshift; - sfs(i) = thisSf; - nbas(i) = thisNba; - nbss(i) = thisNbs; + qzshifts(i) = thisQzshift; + scalefactors(i) = thisScalefactor; + bulkIns(i) = thisBulkIn; + bulkOuts(i) = thisBulkOut; resols(i) = thisResol; allRoughs(i) = thisRough; allLayers{i} = resampledLayers; diff --git a/targetFunctions/+nonPolarisedTF/+standardLayers/single.m b/targetFunctions/+nonPolarisedTF/+standardLayers/single.m index c16880b1a..4bdec5985 100644 --- a/targetFunctions/+nonPolarisedTF/+standardLayers/single.m +++ b/targetFunctions/+nonPolarisedTF/+standardLayers/single.m @@ -1,5 +1,5 @@ -function [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... +function [outSsubs,backgs,qzshifts,scalefactors,bulkIns,bulkOuts,resols,chis,reflectivity,... Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = single(problemDef,problemDefCells,controls) % Single threaded version of the Standard Layers calculation @@ -19,8 +19,8 @@ layersDetails,~] = parseCells(problemDefCells); % Extract individual parameters from problemDef struct -[numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... +[numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... ~, resample, backsType, ~] = extractProblemParams(problemDef); calcSld = controls.calcSldDuringFit; @@ -28,10 +28,10 @@ % Allocate the memory for the output arrays before the main loop backgs = zeros(numberOfContrasts,1); -qshifts = zeros(numberOfContrasts,1); -sfs = zeros(numberOfContrasts,1); -nbas = zeros(numberOfContrasts,1); -nbss = zeros(numberOfContrasts,1); +qzshifts = zeros(numberOfContrasts,1); +scalefactors = zeros(numberOfContrasts,1); +bulkIns = zeros(numberOfContrasts,1); +bulkOuts = zeros(numberOfContrasts,1); resols = zeros(numberOfContrasts,1); allRoughs = zeros(numberOfContrasts,1); outSsubs = zeros(numberOfContrasts,1); @@ -72,7 +72,7 @@ % from the input arrays. % First need to decide which values of the backgrounds, scalefactors % data shifts and bulk contrasts are associated with this contrast - [thisBackground,thisQshift,thisSf,thisNba,thisNbs,thisResol] = backSort(cBacks(i),cShifts(i),cScales(i),cNbas(i),cNbss(i),cRes(i),backs,shifts,sf,nba,nbs,res); + [thisBackground,thisQzshift,thisScalefactor,thisBulkIn,thisBulkOut,thisResol] = backSort(contrastBackgrounds(i),contrastQzshifts(i),contrastScalefactors(i),contrastBulkIns(i),contrastBulkOuts(i),contrastResolutions(i),backs,shifts,scalefactor,bulkIn,bulkOut,res); % Also need to determine which layers from the overall layers list % are required for this contrast, and put them in the correct order @@ -98,7 +98,7 @@ % Call the core layers calculation [sldProfile,reflect,Simul,shifted_dat,layerSld,resampledLayers,... thisChiSquared,thisSsubs] = nonPolarisedTF.coreLayersCalculation(thisContrastLayers, thisRough, ... - geometry, thisNba, thisNbs, thisResample, calcSld, thisSf, thisQshift,... + geometry, thisBulkIn, thisBulkOut, thisResample, calcSld, thisScalefactor, thisQzshift,... thisDataPresent, thisData, thisDataLimits, thisSimLimits, thisRepeatLayers,... thisBackground,thisResol,thisBacksType,nParams,parallelPoints,resamPars,useImaginary); @@ -114,10 +114,10 @@ layerSlds{i} = layerSld; chis(i) = thisChiSquared; backgs(i) = thisBackground; - qshifts(i) = thisQshift; - sfs(i) = thisSf; - nbas(i) = thisNba; - nbss(i) = thisNbs; + qzshifts(i) = thisQzshift; + scalefactors(i) = thisScalefactor; + bulkIns(i) = thisBulkIn; + bulkOuts(i) = thisBulkOut; resols(i) = thisResol; allRoughs(i) = thisRough; allLayers{i} = resampledLayers; diff --git a/targetFunctions/+nonPolarisedTF/coreLayersCalculation.m b/targetFunctions/+nonPolarisedTF/coreLayersCalculation.m index 4802a5f96..7c78253a0 100644 --- a/targetFunctions/+nonPolarisedTF/coreLayersCalculation.m +++ b/targetFunctions/+nonPolarisedTF/coreLayersCalculation.m @@ -1,6 +1,6 @@ function [sldProfile,reflect,Simul,shifted_dat,theseLayers,resamLayers,chiSq,ssubs] = ... coreLayersCalculation(contrastLayers, rough, ... - geometry, nba, nbs, resample, calcSld, sf, qshift,... + geometry, bulkIn, bulkOut, resample, calcSld, scalefactor, qzshift,... dataPresent, data, dataLimits, simLimits, repeatLayers,... background,resol,backsType,params,parallelPoints,resamPars,useImaginary) @@ -25,12 +25,12 @@ % contrastLayers : % rough : % geometry : -% nba : -% nbs : +% bulkIn : +% bulkOut : % resample : % calcSld : -% sf : -% qshift : +% scalefactor : +% qzshift : % dataPresent : % data : % dataLimits : @@ -64,9 +64,9 @@ % Bulid up the layers matrix for this contrast if ~useImaginary - [theseLayers, ssubs] = groupLayersMod(contrastLayers,rough,geometry,nba,nbs); + [theseLayers, ssubs] = groupLayersMod(contrastLayers,rough,geometry,bulkIn,bulkOut); else - [theseLayers, ssubs] = groupLayersModImaginary(contrastLayers,rough,geometry,nba,nbs); + [theseLayers, ssubs] = groupLayersModImaginary(contrastLayers,rough,geometry,bulkIn,bulkOut); end % Make the SLD profiles. @@ -88,12 +88,12 @@ thisSldLays = theseLayers; end - sldProfile = makeSLDProfiles(nba,nbs,thisSldLays,ssubs,repeatLayers); + sldProfile = makeSLDProfiles(bulkIn,bulkOut,thisSldLays,ssubs,repeatLayers); % If we have imaginary, we are also % going to need an SLD profile for the imaginary part if useImaginary - % Note nba and nbs = 0 since there is never any imaginary part for + % Note bulkIn and bulkOut = 0 since there is never any imaginary part for % the bulk phases.. sldProfileIm = makeSLDProfiles(0,0,thisSldLaysIm,ssubs,repeatLayers); end @@ -116,11 +116,11 @@ end % Apply scale factors and q shifts to the data -shifted_dat = shiftData(sf,qshift,dataPresent,data,dataLimits,simLimits); +shifted_dat = shiftData(scalefactor,qzshift,dataPresent,data,dataLimits,simLimits); % Calculate the reflectivity reflectivityType = 'standardAbeles'; -[reflect,Simul] = callReflectivity(nba,nbs,simLimits,repeatLayers,shifted_dat,layerSld,ssubs,resol,parallelPoints,reflectivityType,useImaginary); +[reflect,Simul] = callReflectivity(bulkIn,bulkOut,simLimits,repeatLayers,shifted_dat,layerSld,ssubs,resol,parallelPoints,reflectivityType,useImaginary); % Apply background correction, either to the simulation or the data [reflect,Simul,shifted_dat] = applyBackgroundCorrection(reflect,Simul,shifted_dat,background,backsType); diff --git a/targetFunctions/+nonPolarisedTF/reflectivityCalculation.m b/targetFunctions/+nonPolarisedTF/reflectivityCalculation.m index 566af021e..98b79b8f4 100644 --- a/targetFunctions/+nonPolarisedTF/reflectivityCalculation.m +++ b/targetFunctions/+nonPolarisedTF/reflectivityCalculation.m @@ -22,12 +22,12 @@ % some execution paths' error. preAlloc = zeros(numberOfContrasts,1); problem = struct('ssubs',preAlloc,... - 'backgrounds',preAlloc,... - 'qshifts',preAlloc,... + 'backgroundParams',preAlloc,... + 'qzshifts',preAlloc,... 'scalefactors',preAlloc,... - 'nbairs',preAlloc,... - 'nbsubs',preAlloc,... - 'resolutions',preAlloc,... + 'bulkIn',preAlloc,... + 'bulkOut',preAlloc,... + 'resolutionParams',preAlloc,... 'calculations',struct('all_chis',preAlloc,'sum_chi',0),... 'allSubRough',preAlloc,... 'resample',preAlloc'); diff --git a/targetFunctions/common/backSort.m b/targetFunctions/common/backSort.m index 3f0022f59..3ee55dd2c 100644 --- a/targetFunctions/common/backSort.m +++ b/targetFunctions/common/backSort.m @@ -1,63 +1,56 @@ -function [backg,qshift,sf,nba,nbs,resol] = backSort(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs,shifts,sf,nba,nbs,res) +function [outBackground,outQzshift,outScalefactor,outBulkIn,outBulkOut,outResolution] = backSort(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs,qzshifts,scalefactor,bulkIn,bulkOut,res) % Distributes the background and shift values among the different contrasts % % USAGE:: % -% [backg,qshift,sf,nba,nbs,resol] = backsort(cBacks,cShifts,cScales,cNbas,cNbss,cRes,backs,shifts,sf,nba,nbs,res) +% [backg,qzshift,scalefactor,bulkIn,bulkOut,resol] = backsort(contrastBackgrounds,contrastQzshifts,contrastScalefactors,contrastBulkIns,contrastBulkOuts,contrastResolutions,backs,shifts,scalefactor,bulkIn,bulkOut,res) % % INPUTS: -% * cBacks : Which backround value is associated with each contrast -% * cShifts : Which qz_shift value is associated with each contrast -% * cScales : Which scalefactor value is associated with each contrast -% * cNbas : Which NBa value is associated with each contrast -% * cNbss : Which Nbs value is associated with each contrast -% * cRes : Which resolution value is associated with each contrast -% * backs : List of all background values. -% * shifts : List of all qz-shift values -% * sf : List of all scalefactor values -% * nba : List of all nba values -% * nbs : List of all nbs values -% * res : List of all resolution values +% * contrastBackgrounds : Which backround value is associated with each contrast +% * contrastQzshifts : Which qz_shift value is associated with each contrast +% * contrastScalefactors : Which scalefactor value is associated with each contrast +% * contrastBulkIns : Which BulkIn value is associated with each contrast +% * contrastBulkOuts : Which BulkOut value is associated with each contrast +% * contrastResolutions : Which resolution value is associated with each contrast +% * backs : List of all background values. +% * shifts : List of all qzshift values +% * scalefactor : List of all scalefactor values +% * bulkIn : List of all bulkIn values +% * bulkOut : List of all bulkOut values +% * res : List of all resolution values % % OUTPUTS: % * backgs : list of actual background values for each contrast -% * qshifts : list of actual shift values for each contrast -% * sfs : list of actual shift values for each contrast -% * nbas : list of actual shift values for each contrast -% * nbss : list of actual shift values for each contrast -% * nbss : list of actual shift values for each contrast +% * qzshifts : list of actual shift values for each contrast +% * scalefactors : list of actual shift values for each contrast +% * bulkIns : list of actual shift values for each contrast +% * bulkOuts : list of actual shift values for each contrast +% * bulkOuts : list of actual shift values for each contrast % % - - - - + %for i = 1:nc + %thisBack = contrastBackgrounds(i); + outBackground = backs(contrastBackgrounds); + + %thisShift = contrastQzshifts(i); + outQzshift = qzshifts(contrastQzshifts); + + %thisScale = contrastScalefactors(i); + outScalefactor = scalefactor(contrastScalefactors); + + %thisBulkIn = contrastBulkIns(i); + outBulkIn = bulkIn(contrastBulkIns); + %thisBulkOut = contrastBulkOuts(i); + outBulkOut = bulkOut(contrastBulkOuts); - %for i = 1:nc - %thisBack = cBacks(i); - backg = backs(cBacks); - - %thisShift = cShifts(i); - qshift = shifts(cShifts); - - %thisScale = cScales(i); - sf = sf(cScales); - - %thisNbair = cNbas(i); - nba = nba(cNbas); - - %thisNbsub = cNbss(i); - nbs = nbs(cNbss); - - %thisResol = cRes(i); - if cRes ~= -1 - resol = res(cRes); - else - resol = -1; % Negative value means we have a data resolution.. - end - %end - - - end \ No newline at end of file + %thisResol = contrastResolutions(i); + if contrastResolutions ~= -1 + outResolution = res(contrastResolutions); + else + outResolution = -1; % Negative value means we have a data resolution.. + end + %end + +end diff --git a/targetFunctions/common/callReflectivity/callReflectivity.m b/targetFunctions/common/callReflectivity/callReflectivity.m index 1ea6e2b1b..233a4ff85 100644 --- a/targetFunctions/common/callReflectivity/callReflectivity.m +++ b/targetFunctions/common/callReflectivity/callReflectivity.m @@ -1,4 +1,4 @@ -function [reflectivity, Simulation] = callReflectivity(nbairs,nbsubs,simLimits,repeatLayers,this_data,layers,ssubs,res,parallel,refType,useImaginary) +function [reflectivity, Simulation] = callReflectivity(bulkIns,bulkOuts,simLimits,repeatLayers,this_data,layers,ssubs,res,parallel,refType,useImaginary) xdata = this_data(:,1); @@ -15,7 +15,7 @@ if isempty(layers) % No layers defined. Make a zeros dummy zero layer - layers = [0 nbairs 0]; + layers = [0 bulkIns 0]; end nLayers = size(layers,1); @@ -53,8 +53,8 @@ end % Add the air and substrate parameters -slds(1) = nbairs; -slds(end) = nbsubs; +slds(1) = bulkIns; +slds(end) = bulkOuts; roughs(end) = ssubs; simXLo = simLimits(1); diff --git a/targetFunctions/common/customModelFunctions/callCppFunction.m b/targetFunctions/common/customModelFunctions/callCppFunction.m index 4f7cc0422..ad6d4627d 100644 --- a/targetFunctions/common/customModelFunctions/callCppFunction.m +++ b/targetFunctions/common/customModelFunctions/callCppFunction.m @@ -1,4 +1,4 @@ -function [output,subRough] = callCppFunction(params, nba, nbs, contrast, domain, pointer) +function [output,subRough] = callCppFunction(params, bulkIn, bulkOut, contrast, domain, pointer) coder.cinclude(''); coder.cinclude('classHandle.hpp') @@ -15,11 +15,11 @@ % domain should either before 0 or 1. A value less than zero indicates no domains if (domain < 0) coder.ceval('std::mem_fn(&CallbackInterface::invoke)', ... - callback, coder.ref(params), coder.ref(nba), coder.ref(nbs), contrast, coder.wref(tempOutput), ... + callback, coder.ref(params), coder.ref(bulkIn), coder.ref(bulkOut), contrast, coder.wref(tempOutput), ... coder.wref(outputSize), coder.wref(subRough)); else coder.ceval('std::mem_fn(&CallbackInterface::invoke)', ... - callback, coder.ref(params), coder.ref(nba), coder.ref(nbs), contrast, domain, coder.wref(tempOutput), ... + callback, coder.ref(params), coder.ref(bulkIn), coder.ref(bulkOut), contrast, domain, coder.wref(tempOutput), ... coder.wref(outputSize), coder.wref(subRough)); end diff --git a/targetFunctions/common/extractProblemParams.m b/targetFunctions/common/extractProblemParams.m index 504917e07..801a064c7 100644 --- a/targetFunctions/common/extractProblemParams.m +++ b/targetFunctions/common/extractProblemParams.m @@ -1,30 +1,30 @@ -function [numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... -cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... -numberOfLayers, resample, backsType, cFiles] = extractProblemParams(problemDef) +function [numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... +contrastResolutions, backs, shifts, scalefactor, bulkIn, bulkOut, res, dataPresent, nParams, params,... +numberOfLayers, resample, backsType, contrastCustomFiles] = extractProblemParams(problemDef) %Extract individual parameters from problemDef numberOfContrasts = problemDef.numberOfContrasts; geometry = problemDef.geometry; -cBacks = problemDef.contrastBackgrounds; -cShifts = problemDef.contrastQzshifts; -cScales = problemDef.contrastScalefactors; -cNbas = problemDef.contrastBulkIns; -cNbss = problemDef.contrastBulkOuts; -cRes = problemDef.contrastResolutions; -backs = problemDef.backs; -shifts = problemDef.shifts; -sf = problemDef.sf; -nba = problemDef.nba; -nbs = problemDef.nbs; -res = problemDef.res; +contrastBackgrounds = problemDef.contrastBackgrounds; +contrastQzshifts = problemDef.contrastQzshifts; +contrastScalefactors = problemDef.contrastScalefactors; +contrastBulkIns = problemDef.contrastBulkIns; +contrastBulkOuts = problemDef.contrastBulkOuts; +contrastResolutions = problemDef.contrastResolutions; +backs = problemDef.backgroundParams; +shifts = problemDef.qzshifts; +scalefactor = problemDef.scalefactors; +bulkIn = problemDef.bulkIn; +bulkOut = problemDef.bulkOut; +res = problemDef.resolutionParams; dataPresent = problemDef.dataPresent; nParams = length(problemDef.params); params = problemDef.params; numberOfLayers = problemDef.numberOfLayers; resample = problemDef.resample; backsType = problemDef.contrastBackgroundsType; -cFiles = problemDef.contrastCustomFiles; +contrastCustomFiles = problemDef.contrastCustomFiles; end diff --git a/targetFunctions/common/groupLayers/groupLayersMod.m b/targetFunctions/common/groupLayers/groupLayersMod.m index e1b356350..d32c3b6f2 100644 --- a/targetFunctions/common/groupLayers/groupLayersMod.m +++ b/targetFunctions/common/groupLayers/groupLayersMod.m @@ -1,9 +1,9 @@ -function [outLayers, outSsubs] = groupLayersMod(allLayers,allRoughs,geometry,nbair,nbsubs) +function [outLayers, outSsubs] = groupLayersMod(allLayers,allRoughs,geometry,bulkIn,bulkOuts) %Arrange layers according to geometry and apply any coverage correction. % % USAGE:: % -% [outLayers, outSsubs] = groupLayersMod(allLayers,allRoughs,numberOfContrasts,geometry,nbairs,nbsubs) +% [outLayers, outSsubs] = groupLayersMod(allLayers,allRoughs,numberOfContrasts,geometry,bulkIns,bulkOuts) % % INPUTS: % @@ -11,8 +11,8 @@ % * allRoughs = Double of substrate roughness for each contrast. % * numberOfContrasts = double. % * geometry = 'Air / Liquid (or solid)' or 'Solid / Liquid' -% * nbairs = vector of nbair values. -% * nbsubs = vector of nbsub values. +% * bulkIns = vector of bulkIn values. +% * bulkOuts = vector of bulkOut values. % % The paratt calculation procedds through the % z,rho,rough stack, and the parameter 'ssub' in @@ -71,9 +71,9 @@ for j = 1:l this_pcw = output(j,4); if output(j,5) == 1 - pc_add = nbair; + pc_add = bulkIn; else - pc_add = nbsubs; + pc_add = bulkOuts; end if ~isnan(this_pcw) layers(j,2) = pc_add*(this_pcw/100) + (1-(this_pcw/100))*layers(j,2); diff --git a/targetFunctions/common/groupLayers/groupLayersModImaginary.m b/targetFunctions/common/groupLayers/groupLayersModImaginary.m index 355ed36c5..78703399b 100644 --- a/targetFunctions/common/groupLayers/groupLayersModImaginary.m +++ b/targetFunctions/common/groupLayers/groupLayersModImaginary.m @@ -1,9 +1,9 @@ -function [outLayers, outSsubs] = groupLayersModImaginary(allLayers,allRoughs,geometry,nbair,nbsubs) +function [outLayers, outSsubs] = groupLayersModImaginary(allLayers,allRoughs,geometry,bulkIn,bulkOuts) %Arrange layers according to geometry and apply any coverage correction. % % USAGE:: % -% [outLayers, outSsubs] = groupLayersMod(allLayers,allRoughs,numberOfContrasts,geometry,nbairs,nbsubs) +% [outLayers, outSsubs] = groupLayersMod(allLayers,allRoughs,numberOfContrasts,geometry,bulkIns,bulkOuts) % % INPUTS: % @@ -11,8 +11,8 @@ % * allRoughs = Double of substrate roughness for each contrast. % * numberOfContrasts = double. % * geometry = 'Air / Liquid (or solid)' or 'Solid / Liquid' -% * nbairs = vector of nbair values. -% * nbsubs = vector of nbsub values. +% * bulkIns = vector of bulkIn values. +% * bulkOuts = vector of bulkOut values. % % The paratt calculation procedds through the % z,rho,rough stack, and the parameter 'ssub' in @@ -71,9 +71,9 @@ for j = 1:l this_pcw = output(j,5); if output(j,5) == 1 - pc_add = nbair; + pc_add = bulkIn; else - pc_add = nbsubs; + pc_add = bulkOuts; end if ~isnan(this_pcw) layers(j,2) = pc_add*(this_pcw/100) + (1-(this_pcw/100))*layers(j,2); diff --git a/targetFunctions/common/makeSLDProfiles/makeSLDProfileXY.m b/targetFunctions/common/makeSLDProfiles/makeSLDProfileXY.m index 256b3d90d..7480a712b 100644 --- a/targetFunctions/common/makeSLDProfiles/makeSLDProfileXY.m +++ b/targetFunctions/common/makeSLDProfiles/makeSLDProfileXY.m @@ -1,4 +1,4 @@ -function out = makeSLDProfileXY(nbair,nbsub,ssub,layers,numberOfLayers,nrepeats) +function out = makeSLDProfileXY(bulkIn,bulkOut,ssub,layers,numberOfLayers,nrepeats) if numberOfLayers>0 layerThicks = sum(layers(:,1)); @@ -8,7 +8,7 @@ boxCen = 0; boxWidth = 100; nextLayRough = layers(1,3); - airBox = asymconvstep(x,boxWidth,boxCen,nextLayRough,nextLayRough,nbair); + airBox = asymconvstep(x,boxWidth,boxCen,nextLayRough,nextLayRough,bulkIn); lastBoxEdge = boxCen + (boxWidth/2); for n = 1:nrepeats for i = 1:numberOfLayers @@ -31,7 +31,7 @@ end thisLayRough = nextLayRough;%layers(end,3); thisLayThick = (x(end)-lastBoxEdge)*2; - thisLaySLD = nbsub; + thisLaySLD = bulkOut; nextLayRough = ssub; thisBoxCentre = x(end); Lays(:,(numberOfLayers*nrepeats)+1) = asymconvstep(x,thisLayThick,thisBoxCentre,thisLayRough,nextLayRough,thisLaySLD); @@ -45,8 +45,8 @@ subsBoxCen = max(x); airBoxCen = 0; widths = max(x); - airBox = asymconvstep(x,widths,airBoxCen,ssub,ssub,nbair); - subBox = asymconvstep(x,widths,subsBoxCen,ssub,ssub,nbsub); + airBox = asymconvstep(x,widths,airBoxCen,ssub,ssub,bulkIn); + subBox = asymconvstep(x,widths,subsBoxCen,ssub,ssub,bulkOut); SLD = airBox + subBox; end diff --git a/targetFunctions/common/makeSLDProfiles/makeSLDProfiles.m b/targetFunctions/common/makeSLDProfiles/makeSLDProfiles.m index 36689d815..97334b948 100644 --- a/targetFunctions/common/makeSLDProfiles/makeSLDProfiles.m +++ b/targetFunctions/common/makeSLDProfiles/makeSLDProfiles.m @@ -1,4 +1,4 @@ -function sldProfile= makeSLDProfiles(nbair,nbsub,sld,ssub,repeats) +function sldProfile= makeSLDProfiles(bulkIn,bulkOut,sld,ssub,repeats) lays = size(sld,1); @@ -9,6 +9,6 @@ end -sldProfile = makeSLDProfileXY(nbair,nbsub,ssub,sld,lays,reps); +sldProfile = makeSLDProfileXY(bulkIn,bulkOut,ssub,sld,lays,reps); end \ No newline at end of file diff --git a/targetFunctions/common/shiftData.m b/targetFunctions/common/shiftData.m index c5f9ca99a..7ad454d30 100644 --- a/targetFunctions/common/shiftData.m +++ b/targetFunctions/common/shiftData.m @@ -1,25 +1,25 @@ -function shifted_data = shiftData(scalefac,horshift,dataPresent,data,dataLimits,simLimits) +function shiftedData = shiftData(scalefactor,qzshift,dataPresent,data,dataLimits,simLimits) % Shifts the data according to scale factor. If there is no data, makes % x-data over the simulation range. % % INPUTS: % -% * scalefac = problem.scalefactors; -% * horshift = problem.qshifts; -% * numberOfContrasts = problem.numberOfContrasts; +% * scalefactor = problem.scalefactors; +% * horshift = problem.qzshifts; % * dataPresent = problem.dataPresent; % * allData = problem.data; % * dataLimits = problem.dataLimits; - switch dataPresent + case 1 - if scalefac == 0 - scalefac = 1e-30; + + if scalefactor == 0 + scalefactor = 1e-30; end - data(:,1) = data(:,1) + horshift; - data(:,2) = data(:,2) ./ scalefac; - data(:,3) = data(:,3) ./ scalefac; + data(:,1) = data(:,1) + qzshift; + data(:,2) = data(:,2) ./ scalefactor; + data(:,3) = data(:,3) ./ scalefactor; lowLimit = dataLimits(1); hiLimit = dataLimits(2); @@ -38,22 +38,16 @@ hiIndex = length(data(:,1)); end - shifted_data = data(lowIndex:hiIndex,:); + shiftedData = data(lowIndex:hiIndex,:); + otherwise + simPoints = 500; simLo = simLimits(1); simHi = simLimits(2); simXData = linspace(simLo,simHi,simPoints); simYData = zeros(length(simXData),1); - shifted_data = [simXData(:) simYData(:) simYData(:)]; -end - + shiftedData = [simXData(:) simYData(:) simYData(:)]; - - - - - - - - \ No newline at end of file +end + \ No newline at end of file diff --git a/targetFunctions/reflectivityCalculation.m b/targetFunctions/reflectivityCalculation.m index 4c7380930..5056a8ee2 100644 --- a/targetFunctions/reflectivityCalculation.m +++ b/targetFunctions/reflectivityCalculation.m @@ -21,12 +21,12 @@ % for compilation, we have to preallocate memory for the output arrays % Setting these parameters in the struct defines them as doubles problem.ssubs = 0; -problem.backgrounds = 0; -problem.qshifts = 0; +problem.backgroundParams = 0; +problem.qzshifts = 0; problem.scalefactors = 0; -problem.nbairs = 0; -problem.nbsubs = 0; -problem.resolutions = 0; +problem.bulkIn = 0; +problem.bulkOut = 0; +problem.resolutionParams = 0; problem.calculations.all_chis = 0; problem.calculations.sum_chi = 0; problem.allSubRough = 0; @@ -186,12 +186,12 @@ % Pre-processor directives for Matlab Coder % to define the size of the output array coder.varsize('problem.ssubs',[Inf 1],[1 0]); -coder.varsize('problem.backgrounds',[Inf 1],[1 0]); -coder.varsize('problem.qshifts',[Inf 1],[1 0]); +coder.varsize('problem.backgroundParams',[Inf 1],[1 0]); +coder.varsize('problem.qzshifts',[Inf 1],[1 0]); coder.varsize('problem.scalefactors',[Inf 1],[1 0]); -coder.varsize('problem.nbairs',[Inf 1],[1 0]); -coder.varsize('problem.nbsubs',[Inf 1],[1 0]); -coder.varsize('problem.resolutions',[Inf 1],[1 0]); +coder.varsize('problem.bulkIn',[Inf 1],[1 0]); +coder.varsize('problem.bulkOut',[Inf 1],[1 0]); +coder.varsize('problem.resolutionParams',[Inf 1],[1 0]); coder.varsize('problem.ssubs',[Inf 1],[1 0]); coder.varsize('problem.calculations.all_chis',[Inf 1],[1 0]); coder.varsize('problem.calculations.sum_chi',[1 1],[0 0]); diff --git a/tests/domainsTFReflectivityCalculation/domainsCustomLayersInputs.mat b/tests/domainsTFReflectivityCalculation/domainsCustomLayersInputs.mat index c756c47ed24e3e56d73ea3fad370beb247ee4047..156433b39b49fee8354856c872b04fdf4a04b462 100644 GIT binary patch delta 1361 zcmV-X1+MynRr*wrG#FH9bs$b}b|5n_ATc#MFgH3hI3O}GGBc4;BavVQf1U{d00000 z0003=O%DJ702T=V0C=428C_@`MR@MK#7j&=qIr-~WS^ohVq;PI;_cZx+6GcDxhrC! zpnG?7xgoQ=m;FH#1@oZT7vJ(?AEd+=MbN$k3kud3L9kLpEEbB|N)>}p^+EB;o!Qyl z*}2W#-rilLl7V6G`{w)KfB9zT`)(2da9IXm)Olu|nFj6{VQ`9@ga&CX+cL>|223;j zi_UBrdKE*p2pjW+f=4ik0ipmgHhIJXQjsIHWgy)!K`?5%W*Is*naBVUkW4!B90=^6 zX84r<%z#scQiZ@1&aCUIf;6*$71Q+iPjdVR1ph}l{{e#^bbsDRe+%&$XYw}29rOFr;mfkVL($+TNsM?x?(Ad&LY&T5MD>P z&_uUHUZ zx7mH0`SMY84AUhS92x>Z1O!^ziNezw;gKfp3iA-~4U+ z!e5_X%=NR6lIUH1YW&(ett)a;{y$4+uY6qlESHr3*C*cCKDKo|G5@89Uf)@|^ftA> z)rCJR@aKUyf3oh+%hmkW>_4w;PXCRcC%O9a%m*iae_XfZ1|7HMVfeROp6r#LX1cQ; z9xv8yQRm$Q9Q_o7E8cxYD(m)gQ-f|980-AJPmo98r!m&oB&&&PE3xHF2y!NTIhBQ? zWVZ$*r>^zymqB6_+plp!4uMbTxXy(q);&Bc$jN$g9Jl(iqwKpw?RW|Fwy(SGxBCUX z1PvtKNKb;3H|RJ=#v99&gPTe8&7`t$@xF7t^0cVyMJyn|F6nPkImBXr!Na-@UF^6LWV zo?l{qbjv3(|HS+h^Naq6^NgahcC-sWt6&=j_w0Aac0adxA3gfRsm|wIMxY;bU6ABn zU~8zM8){$mQ1ZUWomc7iq{q1ByZ9Nm9RAslmrED7&fAYyoOlKG?0&qu@BskrU~322D`~m delta 1369 zcmV-f1*ZD?RDxBIG#FQ9WFSs&b|5l2ATcvKGc`IjH6SuDGBc4;BavVQf2Iil00000 z0003=O%DJ703Hbd0C=42Szl-zMHrtuFYyx7kZ2yH6xpZfi`ZC{zIc1~j<$i+OL9dl z6m;%xF1KX=T=ox|D3}MuzWA0G`yeI0D1!DSSWvLO2!fR&VzE%vR;n0;st<}!?##~a z%+BrI?d{z~Dj68|zHh!ifAjrzzS;TaCIJAKWdKIqXV&d$;I$D-r?`$~6us%#79P)l zY07`m?M>6Ds7NcK`aG848PpWXPNdd*@`g!!k}n+Tjf4kDY0ET}bAB=T#}hKueX((Mr6 zP}D+0DYlI2j#fctsa~M|edt$^p&{E`7wtP1n%CfpqQmf*KmVl-tD)2bGXcL`g(|AU zs!dlw5U-=I&g)i-e;v#(Ijwe#E_5k0$fLY4roRVspL(En;&n%v1~&-uBa%yPKsomFGCjzGEif5q+d^-z2&-M zyHjnQs9`sd88PC@yRI$UjFOKS!Fh5Rusj*1{C0Vgc7LV%f7Cn5>187H?&b8RC{6c^ zM1GUTxz~C=KKU;AObPhlZaEeA)j}IRrYdWWQWO1;rH4Q7|GVDN9`wd2|IOcaF8uZR z#aut@D2d;-r^c_n)4U=l)&H|}_R7cA&vHrie|_SOonzbA6YF1k==I&DOK+3;H@oO( z1^qnmTh{w|f4P$1p8e;Qt?8e0A3dKtGk5kz&Ko}zjLYwTx%KV$UkCht-d7%U&ff!^ z-V~*)Im!K_1pV={Kea?mE3i?i`vD^e{cc@v;01ptF2Rkne_j8u0T< z6JpSQI>kTqc&Hw~PsH()@4*jV?>JXqp84R!j~ljJe<$s>JdF6-<;h<8X{0;*;rU|S z7Pa3!z{yWhy6m4yq72s;jZ>ObB)+0z2h}qU1CO zW2dI~AD4+SiXGRuUBb z>(U}FfBmF6X0M-pBkuQ|tE-9YVfc;0duc-=B{m;#qes6<>b0_>DsH*CcmCW=D?VNt z3a(N07Q5e&+$vm}8^$`G24TOLrgbpc7Ea+i3C`Z2agNG=a)khO`@itVf6wCh^Pi7& z(F1~BukwRlZ<7KJnD*|4Byw?ta~boVyQjDNe@%ZKZvuM%1z4*D`y<&NfyMSKGQQ^B z7czNr9|%Hp$zkJWkRP5s@!kv1|00Kjcs}uC;?G~3f%QAG_dG-Ewwt-%8@JBw{QV8B z-)8duxL1E)75M&B$&YM5jFt<#RR1R`HyezH?atMa_3d@Bt7X7w|tj4czJSh>%4uu;^4*V*?qja bo(bF_Qt8vY diff --git a/tests/domainsTFReflectivityCalculation/domainsCustomLayersOutputs.mat b/tests/domainsTFReflectivityCalculation/domainsCustomLayersOutputs.mat index 77693c8e5956b9352b9b0ae361b94eeaac1aa0ae..d064d5985c865e666adc43d43fcdf30c13975564 100644 GIT binary patch delta 47324 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

uRJM!^L8Q-xbgyhB#H3Zy80sN5D_Ln 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 delta 47645 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 W@P2pXDC-34vW@Sn?Rox*|9=2>)A;NF diff --git a/tests/domainsTFReflectivityCalculation/domainsCustomLayersTFParams.mat b/tests/domainsTFReflectivityCalculation/domainsCustomLayersTFParams.mat index ea96f08a3f93d38d2cab263c6fe4a9809de29218..d69ba3f7dcf8bf140f585d93699af4a82e5bc484 100644 GIT binary patch literal 19600 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 diff --git a/tests/domainsTFReflectivityCalculation/domainsCustomXYInputs.mat b/tests/domainsTFReflectivityCalculation/domainsCustomXYInputs.mat index 3052f7c0e75e3b49f6f04b8b93c98d21c3ba69b5..cc27f1f14c4ed3b375027db686c64cae2fc654d7 100644 GIT binary patch delta 1345 zcmV-H1-|%Gg-5rnD-u2o}Bh)9Y#_!Ghnz!?2 z=RMB=7Zv~*cZW&$NdpE)IGz$7!h`jeV_RfC1CDe0+wRjcjjD>Y5^5|F4w1k$281F~ zRZAo+V-34XTP8M43j|OzblWski>nL>0n3d0TmXUp$2mRaj~TF1ELRBre~|ms4Gm)5 zDyq=3Jo!aI{+P7>abf*{ySU&|q!9*6+S}Kz1b!fxW?j+LfHoAe;ViT7-W_3raBD35ma{FHBH;|zr z+uWA*I~H2f;0D%V`<&XKRUup>1D_6pqsuQ?RHyjSO8v}m*F-NEo(*{ zsq{^^gSXzIW7&pw3ahAnpOol6UxTg(bfO;Mp>`R6@Rl3cc3tgsf7Gy>$PAfr`CZeN zZHDoO%#b{J76f@R>FqB<=o64JbD+$Ynz0CIq=G$N71Y$Zpbg9<-bnpF%`@j!E$$ zIK<{NmQ!_KFSJpJ{i*cm{rKgdEmihfsN0zao;R__~+j4Ki}@>82w2; zkA3-wkEU`$*sK^EmGNVem_SRQuS2KrUW<4wKyE(LgRG$q{^3 zpcDQxpf`U?;*W}Z8i;DdXpLPm;*dhC!f8^>rv!A{4>yDjoP`H&J z#rnGC$wApUk?w6rJZI(aVc2>1u)v??c*VP;C~JnZ(bN$u|6-k=M5U1q+m?TC6>0$MRQdgGeV(SUJUvfQW(@@kou7@!7+ArdL zD5+giXIqL}f9NQs=gLFTQ(1X^D0&use+D^!;@TDJa>a}PuC>)w9);Nz_es{pUdASn?|pIXB&jPaSjBExJd${3C41xv`XY1_&5gqDjAWPKyncS; z%@xwfV6@v2cIEtyim#|A%W>LrfVzDcqZ#)qp2PC2=K=56fdHg_qS!B_^SrMZ@JoF|xnC&t2|N09#Q$9(4)VQf0(9OR zTfX+Yc{cKTbHB>#%`bQzI$QAO!|6+GES%%>Kk)gWu3f*GJ!?I6B`2THvY%riev*B9 z`Kznfe|~=V$Cu>sUh~FhMaDKA;Jvrum>)Y-j5%<-M#6Rr%CdvK8(Q(5t zwFB?pF}Qnp!!M1#AQaZlEcNC-j!<$`Tut0Yo_n>gYj zap>3{$D{1S-PsjMKxz*ldf}146@SsHDpW`<9N@^#W4+_?I=kN3X@ok`YW%%temmdn zeB&wLwK)Jry>8rl(tx)kf=)>f)xl=VbqJMbz;VHU+k0BJRn?JELX8EgAv1)>fKf!c zPGrU+Hn8WkWn;@GAZRtqbZko}!ezh+RHnS=0tm)`T<}xvJ_DADv|zwBY{E{NKmO${(tpH_wwpG;QiD2bz?vggKzqKfzP@0REA@LjCJcdIR_TYzkXZVNmThN9^h{(rz5pE(m2Mnu@boQn@n?K*8 zOB~BMg>}@qPD*T@uRsq8Ca4E=Xk4xzyyXUVyrFgv)N-204v~2JUVmuf*kSr15}GH^ zf*?;u1;1CGq`hCMecH`Rc9{^nG083~Xt7@;ikozv2W{u$Q;5Lln1T`!xUgmlyxKx|LJ=`?0Q)#+&WKZbIm7wrH}K}zJD2EKc?8v0>6zHc>g@_ckRN5f9`Dm^X+bq^Pd!Q+~)5GrvlhJ zZzm+Xte|V`yP<9PAL;wOAIE(^y#10N);jiEU>6Uc!(=ypG_Xr4c9fo$_*DN4*jqoP z=ttq62J*Plj2LvBz2-mk`3SpKpK%I(#G&h*=IT4spS|+ymVc9Puy!jyjQRD-lY@$L zBE5GUd7o9khhh8O!;*eh&=voTqODl&TGK?l{EM}J9##BNy1aqwNOPLFw!SYv?7ZKn zpRoO$`>8CJB%G3u$EFzV%MY(7w7Rx96WdSN`BM0?o0g`}2tQP5uk|9IhmyvnbvDtw zLPsk-S00F;%74=91MxH89?yREpSW?Qx?J<|A9UPFB`&3xw=`CwYcqkLGkwOD_oJ}5 z@;b?S)XUfg>bWmYoFsK+1?$)=i-&?|R*6TS;9i6+qM2dDol@dbTGY>Pytza#GC1#c zL|iq0qwtmeWChKx9H8kO2Kzy;r>J=Hx{njj?@vV70e{7=U;TqvZ{mBwF1qO6!SEmH z?>^SgpYuT6*MXo_+xM@hnS=!UBa@%y_nUz}yT1e-blDB$b~`V*KlPrDj(=OiK|NQE zf$no-tL^=6p7)~O+^vdw^9xajP8WQ6IDding>ypwgOCSx?dr|!S@P7CoVq`&;~WVY zCtatPzkj-V?dNxYd`a!^HE&$l`S)f{?USCPFMdSZ?|I(e%O~~obn)>!zrFbA*P@SA zhxV!;lEnZ1%B>?OQ`d8Uyzs%!+$Yx)_4biq2XWOGx{~CyC|p^&OeX$-pBlJeaAT@;=Gzs^aowvBsrhB zCT>`^ap3oNyxl#=zAt^^R*0Bq+&b<7UcK=Ot5+Z3#r5LW<%bEc|Fek&YyPULQFYjxY=t|i64H`}{* z4i@%*(f^XrbgSLH-i>8{|Js`WH<>!AkB`)D-_$`v1ZI zOYcl_x3hD&ZTB}V$yynko7!4AJh*eo$kxcxj>6`#o!LDT`@e+jjE#RR?wS}G+gsWG z!MyEYVSetx-{&AR{;uSf-c}Y4_V=tF{5dIk3S$Qgqb<%Ka~N4z=s4WgwsJ5v`*(5W;;xU}%S=X;2xPd;I+SBR@4BHRA*G~6_((a$K0q%c(@F1eCwB~96@aZR^ zHJKoo4p1o5=6eWWD32G0?Mv} z*)yCmFp~RH{MM6L$Pe?k#(ax|AUnIfXu}s^s%yBE-<$x6u>x^ZJc+;@z*Xkhod}Pd zS;lDmlVH-EY9oIPl0p0W3h#mCWT;f1g`BJuIIM`frD&WAF-Q76TDa4IhPNg8N@p6_ zuvXQ4@=1sBjeMem;w!lD^))Tc(km#QNH`RhnE`^G;i`N_uOYO`&n$a)CTzTO@juy~ z3Fb+*nay5rU?9}AO5apfKKQBkdm>Er^FGltPFI~SA|m-m!z%Y%pJ zHe!@_^B{-t`Gi_k9+0k?s0Z`B2cBN+^?t|qpsjw*a$om*@T=`}xpO2R%1>SjdgGT5 zTZgnj$OnJXBPu!aPyj}0m6h(X1rW7Qp|jz80kl2O$Fgb_0u8Igyk1rzDEPdld_i9X zHX8yQ#M?#i$}xdotfC0U=D4J7xrSSUz6)HiyMey0#$V%`(^YX>B`AV1=V>Y;ds0voOw=}K-PJLg~ zT#tV$I2u;_RX3*!)Y~Z^{ur$SQ%0bOXRHR#vlu^+tA+&65_ZDfYAC5#j`j(!hTc`_ z1EST{@Kx64b=zDuFxh1vwb}a-4(5C=*?ImWoc=7VRP6K-t_ztoUrYN4PR1$Po82EF z>?L+MnW6@=N46}X1{!x?`#gQE28cS*cF%wOYhW|D@0Vmz4RE(|c=Zx%;26Ut=7$`$ za7p=D1kb5juyAkQTWMJfK4tW2x8rId`G@imx~5tvm+>rky<7`})|HAHf_1Q%wO02{ zs}9(vp;aQ|HjC09o%{`Kk3R)56(m4R{XN{5V^}@rOvn>^0a?m zyWI<|hqh;v^emP2Fx4bLzN&hlrZeKw-O~X3l@bzHR2x9vbwoJMp#gMDxpGlT16VKX z$>Td4;Hgx2wf9B?q(A69CvvzEsxw)-Tdy?2=;ZmU*1nCf!taOQQP2oGZr0r|!Z*T^ zII6{~>`icP0Gu}zo8Zn47wTm5CUAe(EDcbJX@b~*l^xUdO;Fe%6Cb$L1YOj&f|C5r zu;slyn$19unU!&JX$FB}k@7unnn7{NM5SV|8LmjCwi(g2fV~Ayk5;Ayf--o=GmKgw zlepz5El|f7GxxQu1#o0<37=_!U(q`@Ww}~mci$!7VU<>p+8)H_YS#)H8ZCcO2a;OB z%%6d;uDun!>Qpk!)>Z#~!zYn{R#2`9UO(MnatTBjR!vzTmCy59{4-*~m{@aP8Vb19*usBSp* zsamfnyBjpTvE2T3-EeC~Z& zJx;w~IIe6l`>YqtF~*V=slD)MkLObGhhFe0PAoR+?u7{bN{sY$FC;CEouZ}agPgE6 zngPx}D3|1E$~e*o&F%8f9xL|&`H;2Luk`_m(Pvnkpt{Avcx_(UMZf<@T(7$4K-|sxA%kAFLT)};eNOk^K{h(`oZ$} z>k3W%esJz<@H}AI4}Nx&XBVIJL*#Z^rn=aENX-%Gh|KMWTn(jgv&Md?__wTi<7V5HmW$2LCzRtt0LIQl_w31Qj(o_7$Q ziXZOtIyMN=t>`<;!$yQS5=4L#Ie$5u^U66 z)-xEiZa)P2HY?g40Yh+yjdOQW@(|d(l^L-u83MNpIxm$whahm;#+dWd5RhvZp{eyD z$oL)bhoPXREhj*17(N=!+8HVhL)RvwoWzx37=M2uvPNM&3|m>c+h-Vl4w-nRz8D7j zhu&(A`NOc2GnHAbWf=JLKX!8Che1Mn%R`3YaDn2&%5-B#r?0>P<8^RJ>uAYQ4z;8D&9yv8m)x==p?#jZQhzOfOg+bc!& zb#Z?Lx=SzBS22zP_OjK}umhtoxBTql9l25X6_Ldut2qkWq+9ywO-6yUYdUraGYW!M z3^(6|kAf77kbq0(D8L()PZz64LH*pFH++Mm@H=eHje?nXl5{QY7&r)QCHgUVQa%2` zRC)|TZmzq@pC5ySbsl9VqcO;eQ(zc#8iRil`75p2L1R!q;1uGXHU@nTk-FMtV?a(0 zT!KAg@HMw*^!xM}tZObLHc*TM(;WNVnBC*R9Vj7UEas5f+INbjoIL5(goYqIEeH^?og6Dq{$02;r8P=9xSr91}~GA33CN&B#nBTiq> zD1wDT7tRbj87z>4;8XH#Kn>3^3zdHhSZKbld@)-e3tc5TlDltXVUWR?!`%`K69%?R zQxCB~O84m3^1{OG_mJY!U@R;uZ&kclSPjp?1g2wwf>3eedoC8}rP@#3D8~Y;#~6P@ zBNjM2XK5sRv9Ndl+GO+u76cwJHBo-Xf+#s_-e1Oo4SEG^-#E)YVLPIZ5C^C(3bULIDR?CcTH$&f?(KvF9IhwQyicw(32GII!$_@AkwD z2lo6mWKY0>vrYFIJvSV9RN)R*JjH=O+dREcBo0DuP|O4;;UMxYTkDT39K2ZL%{D5= zLFxtZkmed3WX3AmN_XHOcUpg4H+~og#d6nWX(w?|>1)pQU>*nc{f}4s*Kp9bb$kqX z=&_Hf$k>60;hK!Z?fdb7<0$rgEQ*IuMh$le$M7)suK%q1X*_)2BncO&<6-UMcShdJ zc%V+8`Ql@Y2gWZuI=()@1N%vV+{=&gusdL@kii4*@M#CpP&^2VXc>Qm$Kyfl;Vt>K zS9p+au;RJ<9uM-IZtHCocsO-8XhOCb4}XMbJZMnAO<};{fo#;?HnVuRmegW8yn+X# zZ^P%#P!r%D%!p;N62Lm>C(Euq1aKT<_~vqu04|5Qx+f(G;N>iouX&OHPn%^Ui&Y5_ z%6<0X0UZKFo9SJBdV_xe2}O5KF5V+RI-Nc5bq4~x)q6rw=T3n9)G+*!KmwF5Ce=np z5ujQrH+?gi0FA#NDgtEAtZJQpLj2 z*f1g(uu$!!P9TEe_3g{%uZge~WqR|8V7@9rF13hYa}MIuTZr&5`l2h_01@0i8Qyw` zCxVZxr4sH75uShj;ouO_8$kD-h6KN#gX|>u{Vd}lK}K~+)|W#h$YyT}(w8DZ!Og9T znFM9opR|R~k)URMSteAM1kLJnyH{_Lpet_I&)eoC7?=?pX>laMxV#Lx)FuJRZ|gxp zg3klmR_WXm_q{cWeA=AKmz)mA=`g4>q)?B{PHtLHwkv;Ww$wx zk${J?B8NCd0{%;Fp&Cmh5PmsoSGY+6iMh{u`ql0vY$rAD9H?5$?4s zM<#*%*ctyQHwoI0KrVeI!Q^+Fg!qMlJroq*Ao0&J`2ojVL&Z;D%kq7XkURNsR~ zEGowvrHo+egcS|LfF5Ms@uV6%qy_0>A7Xolw4r~%*T>w7!2lY?9vxJfxdLj`X?ck@ zS3vVhd6!jf4k|NPv0+S1u_k7w=27w-{dJLli3v2xfE-*{U&pt-S26I`P8kU2!fZvnRYOX>7{>lc$Co|WP zBST1vIHH7l{+R+#VLBM};`93y%>-WMZGp#&*+5z9gn3IPJMiZus2zO74m4D^yI%FP zg4x`}>bM{?+_`aDE5v;pboz+b zA>AlG_i1kQbRpw69IuxGyHVIpz53_dx{*14oIaeo6Mb_m z_R1S*LLpSUjDuBcker9QgRpWL$`*euC+?*zLSjss+_GN^k(x&Fhcfe0BqI^66vt4B zdPQ$G>{6*l<)bz!PD9mbgE8b?;fZQAV-WY$Jg*W7iJZLH5nhH4VB?>0?kq(nQVF^D zl8cd0Vv2zpZ!!8p>*#32RE&1okMHgpDMA`Ug<_wN6rrojVzh^+3(&UOkGg+Ca`~t* z3lm9Uo`-adUTVnpyhASDr>}`!%s~vPjAIPbZ;|?5TBV1oZ&7rH<55uO14ol)Xw?75#oS)^S@=Zntza|ytSCY`@ z&J*WaBa={716%Yj*Ccdu?qlKkEMg?Q z7q%aXLfLm>llexUqe7pxqWEVK=*Q5M zDn3hQnw*P53_q_Gwdh8pRHQ`U?Za8~7crt2fN2P7_4*aO#v6jV=hN84SAu^Le`wH|Q!~M6ak7ri z_(w3RoSCzGPZffEmx=V5lp&}-Ms(18DHzqAIQVjo5R4qh*2=xn>%PeuxVq%@yS;v4Wom)XyLX87QTf=r@o zD$@KAHTUMB{un=`CiZ;vOoAV3z6osCi~Ue4JAW$oCqFdxvnr(JfIk|WB8Avo^+%3V zBehzd{%FGTd8u8HKMKRKiBLcGM~rH}u8perqi#KX#M*y%KNLNue8@Y<56#wdhSG45 z#~J0F6CS?Er@2tx0qcXz!sm2yq59-5A8&N{(!tLfpS%#3E%vOhi5D7V^g45B zyBEqmermRi}RlGj|Ppqg{9jw^Qrh$crOsFpNCX-ef!9H0X__c6D|?2=+#o-UjtPJmig- z=T96)ue=a9-;{i z&J+Fc_!^ZZ>51}09ty9BdZM%hp8N~PJW*tiGjD&7x+kJ`w3?H9;E6uQ?~~m7+!IOO zW!TSK=81ehSL;Rj-XY&1h@xvY{bNC+j*&q)zrk#8J z-5Gxm#5?w?e2vlraVKydq3v)-6>(a8Yj54r#>Ed4+%Mgc+3RB+*Am^)GdgFgo@{q? zDf)D4Rf9WH%lXwbGv$s_2S1%>X7@n7sm2%jxa~hZJl) z^FW0QOz(|-J&=s*@+$Lv52T$O>l!NOf!u$toSzc^>5f`GIeXXNyQ9OPq*`q4j=ZK5 z0@q~R(eN|kN)ELVO^X6l~)pc^`>AOD4goviP(>)!}R-O-NBm%gj#$?FtWQU>e0Bbj4Ux%7WJ z?nqXCPM=Q69WDMmt#?hx9ld*+C4HOT9r|Gbn*EJ zl_j+svKel~I@GzMjiX<68iQOBuiNpcnLDoN>Ta1=z3Q&WTejm@ikd58c5iD{)OSVE zkE13dtz6M1k;`2Efv)Hvw)3k|nk#>b(fYu+t-uw{g)i!lmyq!>NBg+Rw76PC#F5vo zDC~e~<<4kV^d!zQ+sxAy2}>&wqD@^<{Y!5>DpfL$@{q*Q1Fp#AiJM5^4;K_BP4kMf z%LR!GOeGFxyP&fMW&HBbT~N?AOb?&83tB4Nx$C5h3qk@nf?hp#K~#o?o8o`u@yKD` zCl-%fkhXNY;RPobWUGn z-G7r8dBFwsUik4kQNac67>g_s6mmgaYkZ|^94_dxL&g&>3KvvQI4)ZC6@zwKnI?(i zG3e=YLO@JE28pjYITKqj$p3%gQ0T#G4En)sX>_;{gD&S9OS`?npk__`@%bbSIxEdz zyFC_zW}j~xDGkS<(Vyl)>_HgBAUXAN%ol?a6c@t}xnq#8>aK4u9WkhN`a)5YIR=UC zW5Oig!XQc4uc18p7^LPPb&x&?6nGNgF{j zU5o~P8c zsO&*M-j(2tvf@QCA19pAzX6k~8&-ekb>E3AqP+wpGdxiW|SKZjf4_qMNn!<)e9z6nTs|06mXcO?d z8>1LC33zkps@PUl0yg;AvmQN20I%7bDtQ?KI&EWZv&9MMkq}W(6DB~vSf_9IX7V{N zKMa~}BH*{pwfnW}37F!gb+Ui0BfqQXP0Bnc0S_JY>~3-p;J8|d{Wv=T&Rq4qE^Gu? zN{7*ZWhK}1EoO&4$!PCMIqx+D+&?FZ$5;qBB(?n5fti5V(*nnLG7|8sCUWmpdIEM= zo=`GgvIn<)j6s+G*u#G6x|?pl>_K?hz-9cWJ#Z!~EQZY3L+P6H5zc=<>_OzWnf%jl z_7HaW$dN-jC{qOsSMaXeGof7^ykaQH5GG->9W5V6f z+CcKu6>-L1^7-HC?P7m+eYS^%=kMp!$@fQ2-mO)hBJJJko#o{EjK8i?;U?EBR8p+S zKWz_VU6M^5B>A)MiffVI^YI1ym_NyBYF1(*$#HJ$yik&!kDC_FNs6=tTu>m{qR6y! z8%c@A(1Z&l9Td05iqF~uZ;8eI26BI5io+Yt$^A0RNIktw?q7cvrSiNs9RVVHcZscG zA|O4lzAT^gL-A73F$U6que_D6B$NJxKdPN!8wg0!{i4{*L;CgU&lkbG1mr4}MfUR% zAhTyvW&=L~j5ns1D1oD9%Z@_4oo5UH4W*F=zjS$_H#{z3%Y zV%Rd0vYm{Z=!}1*08s+Wem2ETND{CVb|n3vGy#Vbjm-Gu2*~EksaH8bfU&X*OOXNr z3p?EC-jnh9*;-vKU5S8*!`W_~NPw8JzoDfv0b^|QdmYsX*m`HD8&!jVm+$u0+LG}d za*=a*(`f>*zDPU&ECF-VmNacr2Wl2p>0P8QM&ds`7b1UkBND33GUMTOKjpzKQXk;v15OBuKLuLb+ z2RP~I=wg4j($O)KWFaqly8rx`{>!HSulpo7T<*pRM1 zY<~}j!gaK?_t@i6fxo)tR43FWE&h5}WLdZKjdqd;7PS1{|H#=J?}RiIlwWv+Lb`FV zDCdV0j}(obcm-hjEs=!W*+7gw$vN6$6pS`fzjl9q`xt^+Ye#Od9STG7?{%r7Dd9-p zobyG6ClY%zpGjSDdxF_PK9-d4QRsK~ZdQcBQ#3tiFq>T)gRxJxM~w@_BKsrWLfe*D zd_ZvYGy25gm^s5z5XPhSrFp?^bMaWB`2{o55^$H&@D(NFM2y_s;Zn!<92o`c;?Fld zM=O8M((+H9NjR{SO|wyYfhWGDFfq=)!2H3Ook6L|DAE+HE@YH~fu-Iz(l@2z(rX8w zLmyMoJkC0`*8L@R2AbCCA5244*GpfoXiS$**vW@lmN&m($Vb>_M%-jTtzn zB5k>~J_BW*1Xb%Ed5t%?Il7-lzs8t{UK4+``PbOaz_1{BHWS$h3hUkUOjMqk<1bi~ zh4;;^B(IM3uFBj=tUI%&D6=$U^) z|8#X8S}kqord`d$7q&6NlEr!0KgBC+&6kfGOoLV4-pj}1gB<7Rn)1CmpRPE>)y96ybwO#S;?Z z#h7t5=c1K+F^=}^xs^XyjGND z74T+4LKRxh=_rgeRpCRK;4+V;Donc5bWD6#HI}7vwA7!k#=f!R7c9N1abDPaWPMIG zuD@JimN!z3yQ3IpE^yW0F)|r1Db?V$^$x4z&1=wEtKgAZWDP!fG{1hLvIcXj4*;icspXLMU?TTVWjzlWGZ`tiwMM>zDWQ*5ju3(_TGl^(eE>Z>{6q zdOUfuE__>DJ>KwP5vurDkM0#}$u}13F^1kvnq8s+3zSOpGxUENu>HZ`!)HAj@OzG8 z&0JOkvQ68ac{0?1qEb2CN}M0@h}pE!@WGF0khEvg{pLr!KXS`jEc_#e2&OL7efWs! z7e2XKOn=0hFcG%(LXEhR40BI5;xgwmfeS<<3Y_Rm_?z5_`@Q&f#dS1dvXSHkVTLBm zT|Oo_%iDw>p5A{Lso2wm%?G`b!jCrLVE1#gn+8qz#qNXD!Fx@(u#q~={-_CAvgz{% z;+k-ywh-|;zX`X02Xt+0LTNvPRp-W<5O-0kcKmHZ&DxcnZ^rXC-fGoIG@~hV*ZQa< z&1jQ2*Lh378C{h(MuSB&1`Nqw;qq+8r;gepBhk&6y4inf{LPzYd|Tk3=26>>mHO$H zdc)1wI#(|z{;L^>Lq7jn;B3KfGOR`QJ6dqDNz5hYPz$nJsH<6?ZNW_(CTo<w0mM(uzY{LiquCxB{+R!sUHs7eF4MTKG zD6$i67&qI0n2D|(GlCWwJ9*l%NLrvKd3QV3epGmDuiB2}CZEx~*p8#Db{hq)+i@m2 zwELTPJJP9VKP`LKj{mA0wc~*jsdSb4PCS>J`9Z0t6OGO_d9VG^ zi5AmSn!~HR&>?_h-5bF!d?>Z6-F;sdM${jV)Ya_5m1q_-?!q@L-rE))bYWRi(r8^k z7k*T&NO}6A3wuYXw=IghaMGDU=16-Nu2gyMFI~t~gatH)Zsfjb=$Ombjaz?Hl)ZnY zyHP4UiurgTmSGoA^e0aF6ziLVEDf_htQ} zwY_-4PjHL>&R*32*QoU3^_B2D*Nb;=*xzI{??o5pmCmIX{S)(kyol(SRS%%@;OfR++oUSZo?ZY8`i-$qm`fzIQ@u_R_efWPTB#nE& zRv)gBt?O8A(uX|F6HmG+eJEnVa`|O&AIfluZg)uSLwu?B=~P)CY971xQmCsB|D~;| zKD^-(C;Ne^A8od;6#9O2D;s!cD%+0%m;X8`9Ph`NzXGakM*Wx;rO486*N<-%&ex~= z^;RhmOB@4eH^Ag6 z`f&g~C?dyy(*`h@Uxl;o&j7BdGMal3U+FrB-4P$e!r7P$hYt^8O;CT4Ah+Hic1ZV; zku`|4j|)jT?t?gei_hFEY7qaqH){|%Qgmk|Y6g*C-6n5wa1g~tgNcuGgBW$BdutQ( z5XJ?J(<^WfVe;TSHEzogW=O5BWECI6TnC=yyK+NFCc%fKH?Uk_-z~KhLs)C3dMaIa z2%F!YmELr92)kH}xt)J+58lE790M|9KzKy9}gQA4I!sXzi?Ic5b`vAVU%tg!p&P3$07!YaQhv$8v4&eC_z?D zv$-LZ{+H;6@xVm|i$fg42&o!pp7Rc)>Tf++PLW~M)G*y>w`YGC&xYI14=N7h`7w`f zjibYOWnbvK%rnDiN=7xm!7$!#edFYIV;JuVmy=2uM#8E^MaO9vT}p>{6h9nBpS3?$ zi-rwjfFa$af7~#Jy;@uUD{UB`E()d_hB06M z(tf6~VJz`7=e>XPV;Czt>=!x~hp}O0`&dS>^y-Ema&$O!&i9u>>c9Kpp?KUoF!M{rdP<5y4P5oGTNzWsAa@DH@mf;a3gWALD%LrbKt26DHA3>wp*-oQnOhTQWv$SsSBYzP%hO|9me#1D5|Bi!PqxkPwCNPT0WpC5I?i|H*t{OjGnNiHS zywWj`Vqy9xZLwpcSpIiTF7Vta)@m|uTDUxl%~2bFUo{`a&PkEpI@?hkP>>^A?NJ={ zUO7;V;^$6nG6j#~^vGenQP8^zTd0)N(|R*oX4@w3m|Eu*+0 zE4_i}A4LKB;tbmOC<>o$2s}AEiek_D?&dC!;-0C`I$PPs@PN{v1KvDi2)?ZRKemmb zYA@g7`Q2kk9(D%a%a5V<1Nl-()iKnsR*w(S8pF$*^vKp{3{C$1#xQ!ilb??6JI4Mm z1OAtL)BnRU6@TF^mgXZEDKMFx%iM+4Jd%@F4w3!Yru;1dW|e50mNy>4{T7ow6yMk{ zCEKG>l)c^)-Z zJ2`c*&A8vvd<#0AOS8|2+lV(3veWl5uf?gf<&(F&m~ezYx!zoj4t-Sh z@(-o{1zVPY1Sz1$O5w>IS21Snau@Rc6v2k>MGd|O^4FrO%t7bfD0KJ zt~S5u;KUnKg9`&9?0C)a$e94=HQ3}SRi3fTjDJ<(L+Y$rjOebS7%RMv9vOmOtjWB) z03%XsBH6A_!}z=FjvgIjQ0)06*}A3|{A?VL?07MPe_1&xK2K6s` zJb%A*x?#ijJsrRP^g<7%V%=JvK}ZrDjZT#uf)K}|2+Q&Ti0r=VD@5x7md9NAtJONd zcTkJXG@u2d6LvQnlsAEbPow;kay9v5mPOMbbpB=+GhGZkYv;1+y6BeG*0HfD>N?vxjhle zQ7k3UCULoHqgojh^;sp@b(g^sYryN=gJm$O7xmCQs{};F51ncZE`)7E(T{mH6o83L zOyW4! ze|;JVa(t`Ofi$QMRr@1!Us_&&JnY$$8&bS49{7*d9(lMg4r3_AGoE1#0YTlL4_gj|K#1pS`m(hyM zv`iNSKC_lyLdAh#C=o8sQWgj{uj#j)rUk;(jM;1Vr9jC3`{>r&?}4BirLU&(IuJ^= zH`{S)1cLid4$y24fTM4JK9)GB|tgY*B^M}aMcWmKh z{=iTyRd&wHACeqCZQ|zg2YseUYo>F4ATQ9!^wsb&)V4JF=$`b2#0#Cbwe z|6YCwr)&%vOmci+|9^9N?L(?QaP*_bZ&o@VQ2voLD%9x>`dmjpv%K>LKa+^^;^*G5 zif?&mN2E7sNQU;Q#CSvPWn6nH-y0ISgcJEbdBgbc(tx^cKF~it8enz72W-cCKb&#( zfx+9M1$X^?AZU24_$qrJVAc3@u}{qhT69K27Jqs}#FXkz4}U*z_)^Ie$jD7{Qgy?i zix+s-<|^0>dBTn0sk0ffo?v1+FM8h719qL>@%iK@cNkjx6YIQ`16?fy;=VE=J&7rbx> zKB4iGVuJ3V5Y{+i5a9+#O`MMJ+U5p^f|m|%DRl*T&*|+K?z_VG0KuE4$6Vo;%eU|} zX;;V+zb`f~;R?@V1hP-;bA_;0LaTdTf}u6t8BRwWsV}W^291nA zHIw7ckl6L%muXLpEw4}yMWXAXMfm*%If)+&fq=~cbY{xq%V8m)h77r&_db(%!Kw^uoVRZsPhO@$*Y z?frJP+RqULoeqRgUUP&Co8(@!X*z<({>DEE8jis3+)%Hi>j)9{;bUPIj&NFBpV!CN z5q1nUeKUIQ2$5&rv98H+gsI>e-GR5{{C~*3?R=yyr4bUcJH-)#wwab}h;RhAsN3l` zTpdA7R*@QE>Ijw3Jaib;$$9iU_w3!~2qtb$;=aEeAV`++1%0yvNNpdF?Miomqk4tH z3ZV|*w}#Rx+A12fSqfx&uI$>s19n2>bdCvi$wqY`>PHRLX{c(sqX;FW-qhCPB=i@iC-zPiVm>8 zKkTiDr~~jW3KcAJJAl4TvKud*15{EENR)n~zy=G`IEfJoJPf5iitM0()Vv)*tD}I= z{qDdWWfb_uciU)JE(P>6jb)u)Qh%UU>)ybRI0_t<75=d92?f4{uIViZra<3sb3ZOW z3b06zKkN6RK#bB%@J?q6c&Tsv{>+vF^%E!ZYRoAhxrL1qe}w|lj^6?WbSa==Q*=2( zlLEfJ&&3K=C_p>8ED@_n0mu7FO*+yPcyLx`%u0l`^P%(nCJMBKPZvnCQh#7v$)Qto zi2##liH+^E1n62+R0~fLaPnB%)Y}OHXhM41{l^F>ywfq_NF^XGT7vR^kbu|!Pyf^Z z4*&oF|NrcF`8QSn_dkUYDh;NRN@XZCqnt;HG$^Gql_Cv7nKI;%N`ulMq`^=mA(43~ zQ|9@axu!d6R)#1UK8N=&uYdLZ6TYj*T4z1h^Q?WJ_j&f-kG=PE$3v+xev%}1F3-Q* z=|~c*wx0>vV@vV1YvH_SNJ6e(?2ge%lE@bz9fD4fgx_e-u??0aanQ?q*6-sa5g#_+ zq~aJ!bnC_K4>c!=k{1`v)sK?I2_F%~O=cuD3u+sHh(0Ew`~aF(yX5}TOPtYHj{*;O-iZyT9RmSeeRm7ND_1= z@yF$)d&OLm=#}KO%$!3KV)T^QVKI`p?PctCR+JEkY8PXIHgfnMo23YQenU zg{kxW2w!eOaj5T?^?$xXB;kH&C3Xpt#1@r_yIuk$@qE9`?iG9_@w@!VniISvvASfB zmesfi;j@7+;P_t;Vk3LbS)bn?#L@}#E1!OO5MnVJqd@~6M81&eg!~^H^{^iv zM6mO=Mcv;$h?HL@^R>TG>&xrCE53LT9t)p^Uj6JrWE(JQU4K4#5O>Zh=DhysLBw4e zp0S+bhr$jS^d1kQx4*$YpJIWaqqSueE1%83`i0^Tf84jqQ+6x7U;Oo=_|j4pD*Z;_W#N27QX7M2Ql*U!*Bxi|4+U+S7`TA>(zQKh1B`1z6)&^r_L*v zm#Zn=??LpmDu2_ODV9!lRy3f#r{@O=8^s3Ce%To+YM+JR~8% zW|e{vKS?BHR25`WamXDH*fouc-y2^oix?`N#9y73;D31}5pDEMvwZ;-*RWr&0wqZz zU8~?prxZ!7Rh3ApmL>_lvraM>WJsdTUy=ElVzX7JO3kS}>Edk9Sg?pBo@honpOz(w zL22Gs_vJ{!ZrUPN>@q5ELKDaRSCWLyFIvQBWs(>V-j=XgjU={4S=vagCy7+4w5si! zNWx0{ihp2^21$%8_u=_K<>yx?J>3K?l6br|)u#m{pDM#r>{-Gg% zj|E9c+qH($DSbIf+_EXPB8g*3UoGEItnO6l+J8*Fr>`#kTSe(E+_cw0lj0MJzIO(x z-+hvm)g7VMo;?Y7k5W1;J7K(Qe8@bdf*{Qp_={^$Lq{p|nP3;aL!gOuU) z|9{vEQ4d3fhliY(pvUyM0LG)k28OC0*da4!RLJ&*5w()8x(dNLD^d)juOqwu&qlw? zzBnILon2_=2RWk%Vs!mIeD>3{e0tL#g?92U(gzESB}m zEx}OySsAx7_7QmN(!On9@C5Bi&r~dYo_``W;Fg2u&k)>mc20h59)>fA%m-5|!twm+ zvXD0@Z*hWbd9HST(n+c&yQGszQI?>><(WM5Elb^TA-esWq&Ll zwo5*`N`lOIjw(RCIvE$jHAu2DKOMOa&A$53Ve&2 zyiTr8Mb4J}_g?#^V$w{KYN)=ktv8Z2Mt=zk#|S|%v|J23-bBH4;N}>!%W>N+UjvO{NH{{j~mEFslu7kzJ2d7 z_MF+G9`_DwrH+2`=6{c~51N0MSiHwGp#wr<@84rGI)^24ATpw>6zY@%ZKr%qc6AOe ze$m{cq?n7u6KO{rujPVESAVt3?9Ro)gK?e{nt3p+l)t+pI1jhBKMT9tmxu075o4Pb z`52L!JaIl27~MRRbR{2a0*ZbdO3a6T4X^v}j(nUE25fz0R31UHb_fXscefCNySoGp z?(XjHI!SO3?(XjPA}{Xl4#C~w#rd*(_wL^BoIPjebX7goPtW|C>8`G7`C@d;NUBfE zfM0HfE3kyRo}jJ45fq0yFGDWHHz=qH+?(&2!e8s<&4fvZzef4I_~fIe`$zvx{io^e zeJKQ6;RXIKMF-ChQuo4iy?i;_5?ict=KOAEjdsGIPB+S{9zbwz-o}Tf6fn5KQ}%H< z{CC}}mDY&@nikPj{oOE*@n^sK`~9CrqrhW%4dY-dZrI3LDrY-&P^IZnjhh!UUH79G z16<+{8|4~(P|b&~>(ij{3aQ^dpXZ-W{Lxi5PE$xz)qlzFjua~-7=V5h?2sNR(aj?R z0_E!Pk==9twwaTXuv=UrWASDZsyIahdvxdL1HIk!u^xSS+DpI&3Cp_ zu;fBT_cAxcOxLNhd%Zm&I#E=m>oGA~$59rm66?5MBU+6#eL+H2v;==i>menyf6fBL z)p)ykYxOKMLq{T2*+1&n1TBv@r%@6+Ur4UzZ_DwLI6B786s`8+bZUdN3TV2?!AD!6 zekI^k(p2&PP#3L!`edy@Oeg4EsY6c@Zuq#aB@@CQ$4q8TT358)ry)bnu^z95HKh}d zD{Wd=Fk|sOYmuCnN>W5InY~OSAqX_anMZP(ozr?+FsA8@-_e3qV$&hiGw9<64k1DM zRnms1i^ev}8BexhHeG!}3H&T;U@Kl@&GIV_hAF?I(-jc+_v_2wKQ^$+Fjc5j31)p? z;VjZP*F|ns+&7+&tlqF6jDF{OVP0OB?3;&dn1r~ind2IweQ-}rUVyB*1lg`qpUvt0 z+SQe;861>TdK(5l?nHci^cF2A7MzFQSD~*OppyL~b)V?HUDd@75P*9{e-eer?n<@Ro74o93-uu0ky}M0%;A~}0e9=p*WLKPhEB9uu>**Zdk?h*D(A1agSHu*zj zJp#=%_*(e40?pD_Fw?9JW)W*kZjNG|$1YsYmY6qZA~w07S;Mn9$Y>ljZ5@%9i|<{d5wtV=n}p<9eh*Yue+-_E3#&h%ujUiI&X`+x|MaTo zyBDG6@euxZY2LQaHbGT(funxQaqf&#{IMc=)a+xK8j%0#kpZt|G3?iYgkT8&aT-K!4|Jq1wE( zC4F_PM_4X;(ZQ9|W!em%`Q9-Xm=|LT7z<3a8nCKzfi~y+0Ao{GoJ#NE^Vgn3;p`i? znqjbRvWjW32j@DjF0w$?VkE@>kC}FpTOQwM3ANQ`f-x&16*E_VWmfbIw+ez6H>E~S z5fC%h`i@;lKRyywg1d;;1i5j2D*^nfP_0=p0qM#z_RI&|kc+q8GSYD&83+@=YlH?J zO2aA@fQ9!RqJ_HMmI+n*X}vJ_r*I0A8^{~CxO!?S$)HzAcm5lDCj}kmd|n zJt>x)>j969WIl{X-ic9nWz(%qvV}i(vJ^7jl})FsT>*VT!RN8aOpZarR+i2bb-=wy1Qg=*J5nw2A(b-&?GBt4o;Pqu1Qwng(I!dbbKjfAUNZCGTLcy*4<`CpY@LtKceyQw0$6p8ViO zQmdKx)6bufXt4vp6BRFjV`kuzb|QI-NA>4FoZN%epQShUa&LZo^z4J~|CvKa)v9d~ z(P3n$ThcySf{D$B?GdfIUt4`U+kO^_MfY6AS6A)+n1=I92D>=F2$V9DVW^ZBqL9jQt+_LkquMu$utD8#oh+;;2h-<09! zApU;ppzriMa$r7q%#OsEjBk4<@n@ZlD1y#!{-f^xv>pMzzNDq^k?;l;9X;ZALZXTn zWE}AIak-RVmZ;J|#np;E#SJARMtPDA+WK|Lk>k?sG>jHD)nx-_;V#vera1?lfzdWM zOAIzgC+5an+T6wi02jfwa9Y+^c*jnAP+ENYMAs;;@-?j!VF-%0vVQl^o1IGz$Ip<9 zy&K3fVfoGn=Us?nb}a+wrji;~dHYZjnPUO#fyjMRNW1b<2XClL?rCUzr0aF{m0cd1 ziwQe}!`_Pvc28m-ajD;lNz)WxnY)@uu|S+2nb4h-4HOFvKn9)|#;pEyKIOFp@`n2p z5KLIIf}I^8z*hq-la@C4 z(AzitGKX@9?38m+-ox$t3t?`(Di~+tq>G{goaTdb^P`!JZmlUFmgiI{udvKpNY@P{ zPz>q3$o1-|l|zvkzWL&h=;ff(os946<=_R+zxjX_4BY>J*PHz%@GcHYh8#dexc_k< zKm`p=@O$r_k$5o|EqWH5Bw=|bLQW=1lD_P0@hb=sz+g$HGHdz!72UO@8c;qh% zTJL2LxR`z%qTInNEJMi%R-1Q9>3GuxTmIhEm^YO>PU#coWOvflg{W&4lvXpo0v+-MM8MM-`iiK$)rPEf3G7oh)yzXq zUg=y|vAH^qd%o%4=!9L?f?+OLFY9HiyjSl3x#we&+%$o)e_u<}=@ z(|bFKXH;GOm9rfz+pN4l+9wpQS>sQ3Z4+m*d70<4+0btGn(}jf72F1p`*YTztXAa3 z(;1)o4D&ar)&O!R@GO8#T&?X$m(P4U3Dw#d1)*d`CaKm=WH@Sm9)xOL2c%3}qll}$ z2YjsaAT`i#D0g`H_8+E4G3tD>pbmM}Z~Z&o9ReVPv<_%XlA$pKA(!oy3IkA*xXYRK zrx*8}0Uy+Mn`<{B)R)pI$f@z?vBp0RDrCR)d@g?;l4T2Om;v|V9WamAlD8H5cit$A zhqI^huZ_Dubj^Hx*CI_}Pxcu)kvOkfltu1*>50Wbx6Ua0v`4|HLVmY5 zI`sjQaUFX~7t1TJC#-fiDCO7Zx`!qLMSfvT5voMh-Z$cvW!)A1jf zV0K#lm0n`0xYv3}1$(8}Ztz}`rXbV>AhA;CpU00d6TO@n&=8Dz`t=`0>HeoyAmuQ414%ZClK_?`kk-6DQUTf%4dLo64<8e4Ochwg(s?PY!Z&$OAmu76{bIaj?U zJp-BJej09EO4F;B`xHwT$1CCMxNot~XQ|N66T7Dg=k({g&!bdi8}`>DKtY^4p6Ax| z(D*(Cw*@l4UFBn#6?29H(mhCEsofi69x;FJ9!yX*#~+3ewD_78dHdafVyp#^Y8)mA z#Qi28FU}0@@$t^a##S;KZy%TXC}%pHizkXvX8c_C=ZBpw!+F35`fd+Tj7`mV8*FcD z5eV})OFm0Y!ys9~v_@@UK=+(2KjUrlp<#b|A6MD?tWRQkA5;VK=svt@+0ga5@6KL` zXfr{TX>`6xa`UK_nkojK#x`N|gl-Q2A__HDQRoy_r5{EphY=u5w}{g{)AR3uM@7(27b=YFBGOpNhr#_t&C|-@TM{5Ct z&bzR!YILbL&o+2`v+WOo%JRc2YI<~B_i6hDtq;%TDd4Jvx|Q^G5|Y0;1=|sISMuV- zhpTqim#gu7tFLNhFTdk;)+~XwD)AzdKf3Z9yYezaut3`yIE{&%{E0FAt|~1x*6jXf zC0bT`h^&f;%A=5uyfwbV-9Uc%RMi;emCu$fx4sYj96j3BZqnsi<-PWnMKqn|IuqDT zZL9X!K{|tKE1=l)*n2&4thy1su;DWIcvd0U{_1?lJFl+eD&~Km%VJ`P2o6|U{78TD zlfMRM57@NzfW7Od1;4c{;#^-GFQPnczZ)HBy|5z;`G_kK>aSorOLdkb&YX^h}XO>D_AB0m}*DNON3 zG4C65s(=+6RsW4Ko+zZfX0!hk;#l;oE(Y0mmT>~T#ZUZ_YG%cst0~n zBM`1!oWzL6i2LqBeM~&`C^RS&qP2!`iUNBa14LpWMq`N2~Jg4{CYQ?8&`6Y#Px}97Z9s zxQ47@lq_b30Ak%#H(@<92^My)KlyJ z`{^PKIkf&pXZG^Cg+9;xrs7Qid!Y-bD<>g_xf`o6921b*o+Yk+ z_$yYrlA6dFq<|b_am0mQ;z&JA&U3c5!(b>c34o+AUC~7fM1>DOw|kpqrZ0r=6myN46E! z2Bze05TrhYCy1LWd{p^3C+w<779W|Ky;qEM6amU1E=Cy^^H(Is_ov7`w7}L1nYJL; z3Y^c0w4hxM_4^i@ckuQKXFVZ(QsH2hF>}C+%Fdih4q-p6-iMc0~$Ef21SsM(QBKA6gor?I*nYhZ*@AXR-I36 zXXQ53pXgUaiZ$KUo9@PjbC1r;sT+3qa?iB6?2DtYXAp8bBnQ=gKbM0MYJ-Kk+>*r18)+TfU;dUt%J&86nqTdT$ zYgXs03M+6H_0lp6Wt$gdtUWP_{eJ$8@dZ4=J2Bz)B@4A_9DYofn!1+#0g!5&%#1^> z5grlL5JzYj+PetQTA%oYS?bj|CvpI3vC38BRXs@O;(Rq1e@f!x&nffATtL`A*T-t4 zUyHCFz}0&myqBAlbYntZB)F?*u>-MP>l*iMT=Po(u{(4XKRi=da_KMpFj;eV z2Fyq`%H_(GIMb+TbJ#NpV;;`!v&#r*=8%MKwTRI2P%LI-a{ICMLRp$w5nUN3{1R2*kvbr>e zu2^GTA0Rz=+&jC~WN@@GrYTKW|_AzEj*c5rx^bn`>?d4e!ZYq?AuQrx<6I zj?wNXA#jI&Puz)uvs zxnY)dLt9a4RdVOMY3N>W5K}@K0XFUtP;2$J&`$>xs&3gd%xOQc+p_%;aDOMF zNmOS-ZCxFQ-AkEO^DfeFEK5F%GcZ;ljaMlzsb?%PoSeUj>L6dW*&T%4O%F z@jhH)B9~a##G3p=K3v*AJ}_ypz+2ongKbX)y2Z=b6+jpc0L zI(8+REVf|Og3KVda1^}0W52|3u#Qpjd1~Q_IKDhn>O~Hf9oq3!mjakRCpm@4^7XTI}{L^I=%E{5@rLhP{4w zYO73%tif;Y8^7tpdBSuE`ET-$XyRhlWAF76)-Br^eY zvO+!&88c!=D$jNip{v~zlnF0h$&C_u&VpOS*d!D#C9p5C1b58MN|>TDbrF$!kJ;FK zwj1_|rgfV+lxp56H~wOGVP+zM7F}|El$Dygw1_;O^uNpcCg1G%09%mkEr5E~LD@_D`Q7@2 zS_Bf0E3S(60Iny^(cwT8bU9bUSI@~p)pUHog_DFLVZx&q zPyf^F(2Aa!f|$e7i)wpNk1AK+H51Dgrhj3m_7&E?^=}<_7S-zd4|1PWCIa6y;2DIl z+*RX++x?={>533PFnnCg)F19-5pX{4?;Gt}xD&)6 zA5$M=i*Rh%f8+V?Kb|fKgx{DxR2%Nx56GKc<{ZrbSl)au5PyCkC`|uH#89?p6B9#V zbzU!H0i21lf1!bd{3|sSF=m^tp-z=!2)U22QL$Z?}o< zc}_)yJq#pKu=0#t0J&!u}$HtQ{K9*@Q)1yhz7FxhS_2%u%z0=pFNf z)F;J&!@Hq!^2^moc|N>>1tTp~Kv;VcVnMlli_#iQEvK#wU5qx&)5VB1;WXJ&#qgy;KxrO+F*XluM)*-S=)gw> zMfb;19)cqDEGoM&PENQYwp1=A`~iAAePTFzf3l(xwOPDI5FUA=v3MxfUzPl?8i+?O z!<5%+HA-a|hDSbcARgNA7a{tKMB|ZHVi>sbLiD zq=-+>VffFcyjr4#DiVEuF;6F69FE{bkwGdifc}mOr$Et&^`A{QvUhy=G?igA|35e# z{)dd~e@N2*r}wy#sshJRgwvF$`5pLwW(V_@4oRO?pgzY98M6Z&tDM@}*5C&f+1n~V zcGZ{XEb!Mr5^2@a7@K&#r~}cDswnlN{_{Nb zA;>Pd1XwpYVfaTD*`ZMNOd%XW3Xd2s2cn!b2O?PPvr|GC&=!WMwum`wF@FD_Z`_0_ z482q?NydTrN8jSyARc@Rqj&U(xsjytdPV=uN)b0{f&~>92bf~fQ{UuatQBXYsLm=# zK+7U#2Y#z(4p3tGuj3}fb(vz}hzs&eMZ!NSh#|SMP4>Ri!WAVDp(>b+n=-+Kn)xRu z-hbt!`LCRDe>pMVPm{%((?f;DF__c6zY&j{GNXUb`PW4EzCbL_)r=mBHcscSGJO&! z{#S91d;5zQNc=_UfYk7}r-^Q9@6oj2xqH_Nnj-V{Ccch8^41%cFAwII{A&8;(}=;8 z65yxsmvc8rTZfIpatKFBW}6{xsy4ry*Syb@Po8q{xThJCubu1o_h3HNRN%M-`|>IU z_Lu8KJsx#*#^YGMU(((Xee@kwnGN3W@aP+w1J1nwADhl<;4y)mR8!9}r)}!SyY~>v z_`G$~j(*&`(pCR=e#o?Tky9?g4NjlL@jwUjIO8&>^1j+Xash>fYW6tX1XE|&m>W4y2CB+r+X>sdzu0E?<>}!)Oe>74G*2@1!eZ>wqAqi zw1vKLl|+rbt`+N)S%J6mW4iYui&Y$p>XpGn9LEeBW7QBC5>2JkIB3qQN{+J|kGkd4 z^;34Y=7!dO+M>JJWGCh=+N3YzJ%Qk-);Cy&drsg5c-=RkiRwG^*nSFWzjzJ|0s9ct z=nZ88+~y-!Wb3U=MjHcU9bC*##Mim*bIG%e3dTuM+SYv4F1C?zkPh3|Yfm}QR8IfQ zw1jo(+S+L){>c2fj;ig$bk4cj(;t+VMD?`ato_A}8#QB=a~#^rg{n`-s}~%Cw+0Q- z6*mCjKz8!GDgt@#E_tn3{?_N=@*=ycD)7|T{p60;kTE`hFR5o8A6;7yyYVebf?+Wj zNRv-tmOwxbitOM3e{)-OE(t^#FZBc7Qo$ZQh0T=M8;BDP6};Gup0p=(INXqIULu|;H`sv5gxq5=&ahOM3bHyP^8Odc8>SRA@cck)J}>&lYQzmUl#>FZoL+d^eDUUg{K3L zp4+VX&&w@(4AFufYGW7!X=V^hK1Xo#qT@<#JluI`F+wlWiF0CIWG zA^y@Pv8u*yuoT+1mP_Mo)L#SF+I#EY$4MZNuIvrmxHM_RI@<+%cy-O?On5YgBG2bR zZ!Oqk6ToaN9eT{j<_-mlV=SEhEvTZE(B|%Zdf;kgah?*o;UzP5ru356PEn3Iq6b!- zGj&%x^(Y&lDx7Rz1gnc%c{u&%`QbMjdcTiHO@mmA;E_VY|!TsOX$ z7podW-Ds}Ni~zBTS@`dtdDoi97Q27_rs-hibLy)BUcB}6YE|z&ac13Vb8+>WQy(rw8*~g{NQIY%>cS0za1+|$0wrJ^=8kc z*1L7xy6Q_N<4EOt)=`)-HG$9Km~XcE8i%MES~`B$f%A%AW?Jo}H2WB@c7hlQ?fmXQ zKBr0a{@3$*v1vEDX<9|~DnO&UEN~0DgDgMsyDOc{;CZ8r6w#(}K2ekE3*7581ziga z$Hc9JZ5`)oWSw3`%m$pv%S;M-dgOgmQ%Hlyxukr_>r8LAUu~OwlD_bY7QS^c)-UrL z0V`@5oEaokIBhKy|L%*ONrVRp)9l)BEb%DA?s*9JYHc z_mz|bNlo_n5gVL3h*pAM1v^ezBN-E2)|Fa;z~_QPZ<^^XvW-0Kw`0G%jdhH-nSGLX zaY43ZEZm-=NBP2E>=acp@nlc}D5yPU2WhK}&%fvINyX>%l3MWvSY7teu*7n!69H9__j161HIESwLw zUnaznL`^nxl2Vcc(DN^RwudNacO>Z8Bm#neRwp9?(C57Es7fMt+BJipzwSQ!SP(=D z!}BDS%V@YmYl`zyOXu#9-u0oatn{6I$vyMo+uGn4R{{?+9y*wj-lNx7IX07ACi;M0 z`sKI3_d62Y%uedeVt47OUr6OPj?Wp6B&cV@UacXztWsI5nMZ8SoU+|mwggd&&7#^W ze+J_N?bd-5bbARk9=jnyD^}x@H*O+WTh|=K$NW)2)M}B`tH`2^*Hz>#$C)C1nE~*0 z1T7KBkG=6s({YL;_z7Ru^Og<@{%)BocQ?xw2*)=f4q6q-pmCqTLah|TU;~GvE-nO& zCknPddg}1Phb1sLdbS^|K%nlYW=U_poxV%}M_(jAQ{;gKPhV`9?oR657BoJ+u?cu* z_e#Ha!9HuSTZr{PCMBM76qdTc55j=on%%55>#0eczE!A;zmzM(%U04fjQP+A7o{Bi z;NxyfJDEs09>1^-b2`0SdOMbgs#GUDWZnsLU?)t!TYhVR%&+VrP zu#2r<<>*c|l1xeT(uwdzcU73r$2Uh?lZIn6S8%W$eLDUU{v8f2R>Ax_Dk{>!r6wEg z`*L7?D9r1U{nK#3d~&E>05d_xc~WnGr+7Re-yRkUgPWuuoU8ig)FjfxqFCtfba`&d zT~DGQZ*d;&V0)o+(8)~nM1e3}g1ovBFw^v#MK4KYZzv#i!x%do&X$p$#_nf6klA#7 zMR>4XXZz`TD3GBbH~+^GA1Zy4Z!c;GlE4C?et!1H-+!*Ip0HZs{}=_76;kAV!n}p( zj?~fyStH@ZYJkX5$75UZTYkW`Leb+F8+1dg>-dfE3ObiF1P@*dF-NzRiAL+0fD1aD z_%fHSPJdUKMHXWJV{z{Qnh~bSnItuzrJ$da#5{f`g#L51Sy<(|5j~BX-O*We138=P zybq4>$h+ftKZ`k#n~qZl`feSIl^$5!XFtJGmh2%yI}>K|3<@+gc6Y7v&E96SBcoZ* z^J1NJ8#e6Ygrh8PbsDUX$~N`<1gaXr4{iL&c9sj)C9RH&HjQl8*oIU6BkS*xxn{+m znS{t}S|?llzge^_dz`TSDMg}aQ4CP>)IZcCtHifIH^bYd1;DMypg7^)PClOgm*MOVwypFK9BUUDNli2a+oc#f|V* zKK)$ww&}}KIl`a`9w*Sytf&_ zI?lBn@wPBdS?gSY8~Rm<3i!Ut7w4J!#yL^vH#2@HxWDlFe&(?ijq}|85dqDeZA!nK zYg}+xCX!-2Mn;>j|);&sQ- zQn~-lm49Y|z1{b5zn=Q~;l@)ogT!-dFW$$L-A1v!g4=0|N)2{lgj> z&r=bpXvu3^o~#2Rh)E#1V-8WmlznDzd7v@3wUtUhRzNV%smHfW*~;@zBZy`r8BAqC zCKb;oZ`q8A=e=wW#PNl!D=oT8s-x+|eC!XkEOnSU5qoZ9M!I+`tdnLiL#TJck;34Ai&3ZxG@vGp)y*L9mM(5IN!vV6XROCp9r!TYrS1mvNQC zCbi%3>p|`|zb#$y`$DLnuqh~G@j1meutHy+VW1j3=&y?rMScMEa8UEUIX4R4j~`o- zVGh!*97-hL7n>4=YryK)|A}HS$~Yasm#CL!x?gRYHKc-t4myR~2>Oc1K#)ks;U=d8oKbCpA1I^e(+&GI zdi(>ulwuHMvZu#QKmC~sz^!$tu`l;ng0_A;F=%K+bAe$530B#HxtfSCCOipc)72X?4}JX- zxQg&KR)`^_;|1gh^5*ww=MqVk?6gb!1IWh4<4?6u;G6Y~#R3_VemwK%4emJeH)7Ak zrOqzr^eQek~8XxX5fW?CIqjy$-5ddleFx!>9jFvLrmJJ#l22 zWJsNkl*PW1uKMY`r|f{@!SeSRkPWAg`rcEOBHZB{W46bmR{}fF%K-P>%7s|1Sn4NC zKx(|?k?w>Y#4vxQ{c!`=rE^{FG+7kMD9^kzJ3`HmDa-G`iQj#*dRLQYdfy?@x`R8&(TrpyS7I-&Ddpz&7YXd<* z9S=n0pBgU^_k)DlA~qdkKxrVyF_XnJlNg!Q$h3(hREnzgA{6WNir90n9s@X|}ZY zQmC+UAtF_u0;r_OEjZVHb11FYG?l2JDqWs=xL1tp+n`7}ZFkm~e@7`ESU>n!f=)R6 zF%;UoaAKif2ccfl@$!?%IL&FbasStw}WV)J|L@a zOWmjOl736GF0N)vKUlRCxA0WF&4AQ3X5zqpzvJz6xI%LF`f_~M;=_*wE~T;eMAVVJmgUpIdb@~Z zd~3VANV`VgAo(Sj(!)rmym##QqNgKhbju6)x}Rrd5g&2^FZE|daBrX8O7mVOZ0Y^A zXI&)P3GD6CB)pa(m&H#QNgLzx!_l&mj(JP_p56Q!_>8Y?kVn<~<$!Q@ntQBYzL+dq z%__mP7Y8C9le!So$*;levY3-W$$?EW@1}zxEOYWl*R%NYSs1B)NJCtu2;WkU2SY6h zJ1DOG5^JIXc9V6*XL9f8Wg*SP0tbDR7~^Qtf$_*D!}iYushD|?0bxyK#(>YWzGb$tO4PSTUOg^i^vQk!Dz*7kPj#|_P+INss#s{7XYsm- zzfO_vObPJOfw*h^Cio~DE^o9a+4wl9LIR{iM>Vx$z>@qaE9H#>S}pIZh=nhBuC!;* zVM5@$O_WZ_j$kr8D$g1-F)Qk2%3Q+{%I9ald*oHxU#tfc6(5{OC8}o;OfVF&y|gw) zGN{i0duGe=fI~BbY)!BU=qgex4a2j z1`-?@1WtR^XlO>*c6pbiu$RiR=g2&!?<;ROyzA)=@NUmI|Jaae;||L;Z-2unTpJ5W ziAyS}Nm?k3Q{>&Wrjd0tLI z!7|M@&>VqCANks@e+|m;FK8!rH-l;O|*QDk`3r#PA1SyJKZO%dN$+`W)ayBqRzCJzSIGx(E5TjWHn- zef2wey%HdtTZmpW;KmQl)hCz^%n~EDwO*$btHeE-@S}5_J0{%=g3*ZU=r_vF(3Puy zC1c~S63o&jiH1XQ@0YtG2RRl?Xvnqwo%{ zjwRMH`uRZBGY>OjX=Qh+^ZLW#13@f9J>NHiyQ^W8juNi=bZN)mKv)r&&p0~^2n+1F zY!#WAQ79&t5$n9b3yOc*7+j5w8e!CZAJri*5iYuN<8{8jNMy8}4Y+@WPT*q%QtuOg zGTKhmaObyo+KN+to!1%aeOEztM4DFT@J(^r%i9=RiXX9Jj{6ne-l6tZAj~`T(*327 zDx9$^{ZLysEtap_9nenl7ADuO|NCuz5({bHrm`3AtBf#7rPe%|G*>8 z;LhD4EZZRcH%+o#7rga9AgB4eH zw5&Sz4V6XDK0USgO*c73v@1hlk&aE$PBQ!l_@lo+>Vdssptk2^@OTw!ie z%rNyW+y#1AC7<%iN|S<)9|_7r!2Q3>c!GsC7Vb6s`ih)y0CxBUMsb@2#_sT7Tjj{y zaHjj+qUW2IFXd>=6%THANUxH(rvmA(Fa;hA@*rl+Jk9S5(MM%{_a194t|xtc%|}G1 z^yGt&(wcPRjUTXVMs^2f$vw=q&gzpbsLgaoT1~cf!?t~&=n#UX9m~{sEX67j*$D!O z(?jTb-t`Sc1H?YGJ%7Hb>0Ynx-iMp3ZaM8tU$TzfQ4PH0oOh&8&`2~u>YD(>_&jRX z>0V~_?0vXcLE_3zkBJ4sonx$fkPGQDXZd?xKgn~{vf@rgSldkYF_q8Zx_f?U750wm z^8*WMa_xQFBx0EG8S7i7hH;P5^6R;AinV)EE82*@0N-?ysB&n^OIeIUXoEI`Z#qaN z6tlvj6&5O?8GZIayEYr$6aQ~?h~+Iv*OX_x9GdhIjnYT2O85o&p-d$AGT|v*Io)7Am7H3` z%5Q)^fTibqW80ljf*+~}N89B;hugB`R5M(R?>x@$%!*LbUkHm~y)<0vSZhZ)r#jah zH1+$5&mPH6Jw#qZrR1CDf?teAFg~AtZwAs3yG468J@34dzk5M9jZdOA)2-TwYK}^~s zYa#EsE!4?Uo?q{`j3tYSjga?i(9RGj}$q^S070(qm6XWHzc-ybZ1MtHNyuT6r9~whw?uMF_7Xc zkp1$?3I95AT|HK)SM;CfLooh&`@m>8K*CpHwqdNBk2)g$(@cjx=)pYIG4O?XLo65X zK@R2Xo1}HWzaO7BdTT24n8I`JXI+H7s`Q<#eY-CAXuAm2Q|qpIGQScAlntE;H5!aALT*%%H`IJ~N~zhf z7s3v;Z7KBIt@;+kzTpYnR%lctSyu2ahn*rsvg8VCIkG)(N9&*1-iw8`!z73A26XZV-LWqqq zv6O;c|8tv;;x+TLBM>ey$d(AVQdvAU^Qg1;q01PNEh8BVB)Ty+7fK%M<7(;6Tl3m} z0&QL(myiFDzFZ(jXzsQQjM}e+I$NT(>p%0xh?7GU`?lqtSLm;KV+yc_=LYb+OJu#^X74Y8ew&REpfDMop-gOd-JrT+!(lQm*5gL z5bH#mq2&?#^zDFw?S%~D^6#=l_MgtWAX2Im#QdjSugq7nWz)pzZbflC>r4J+x|!F? zC@k>?Xn~bD+>Ch5d)GHxcUfOQ0z-Q7Az`L%#na&u$e45C1UI=>-twCyPkOU8nzJ?? z3*r68Esb9(Zga;FQv6mH+7H~cj%$>p8P~IFnYSJ%!)KQOF^?;G#=;l+d*5XBrFd8Q zHk1u~zuFn~gPwV;y`CqAn?I9eQ{?!^0{@S_yNrz^+7?6|Lt4-b)n6)iL zw{M8FuP&Y(FJt#Ps|Y4+ZXsSbx|(U4Pb}0x-p2Cufmf)~!B9)gY{aIS^u~B zuu98HqLO;)NzbI?{(91|BfC8?{K=YTyk>(>CYXe&9D@Ab?cHqLNX1ASyoUkhb(9bT zv%I&J3GCkARAg1t0}(ROQ!eBZZoqo>hls{h;4_z`w)epWARZblM&UOQGDHuZ;e8K) zO8dG=q-@pR2|T64ukar$FyHTHi2L3*mGoKgdqUNC^1l{*^jfzV8sn;2lT#^J_k8#4z zx*z8eII*F`E&Z9g-%p|K>O8W6gcIz}vgHKI>_7>deTI16r3f-=@zdlzI5O(ThKaDP zESYK*iA8agsh{Hln}lL{8O>8C-*O7`&6*cY*Qw3Kco-3f!?yfkGPGyWa$IhOds0s9 zbAC&QnQ6Z&wl2O6jUM+=FTtt&VADf~N#PW;Y*4(RCR+XJ=8O(82WZd%_&mX#U)ZNV zHgsb@>U(ZSgerQ}_GFl%e9AhF7Z>L+D< zzAv-RQCr=8DKR%iPf;1|XAd~NW63kc>#zLi^`X~&$AZ60f8&6O*Nqgw(YFI(zyBnvvKKmi^mSHM<7#So(afyf~)9q72CPa%HzR9@*2o3MqD+oRG8{+(vrz{Pkp z#4vx7CHG5R#ApFaYwUvVQUiBDfX=fVZ8=E}j$DXIWy~b+1=TWOtj)@c$m;31C?=jD zuwsc8ZFocJXaCVa?9%GBbKn~WYrsWnW1C1w=p!uWzG^08Q9q_0u-QcKY)kT? zH^sUUfTSL1a`7#O`RuCN%P0Ev4|F?6FDyEGzGygHT3)7~gW0Gr9Qq4iITVNLYj8V>VEoHjTQvw%2ug0IVVHS5dkeAt8;W?ui z;=@VB!dUmmry*y&x%@moa~bNjq@kbs!2Ke>>%at7@PVq6rFENdo9@Z>{Z@h$Z2PiMCdJUX&E4{x9QAXE`^~OW@oW%RqL|Gu zq8+EdF2!d)Pc?$9WpXnA8(%_jX^MVmha1+6-9I&nNFu5q!s(H2yU}_t z=guh}hM)ZXIZ|jIvdhzW&6#PFbTega)a0b|7vtq&iA2%$ zVtkin=icl=q9QZS*dy+=$Bs4+Q^A%7O~&|okFVl*>-3pfIS1plq`WKK@iu*)v~tWc zy3`@?+?4O7rZ+6^IZuZ=N6ke4w+6%5CGh*BLRl<{9AQZ&Zb%}p?Up41^HrJ_*>zOa=f?)ZZ6zk!u)wchR^NqWFN=m^n!9Tn=7((<-3j3%JlUJg59d_Q*(s=Tn!(5&?^$4(6*)nd8N=~yM`jXCm|8a>%p`?z9PhSrgcnNfDObZ|NZXYffyqp-Xl(ICYW-)^e4LRkj zA*Z>JyP~(h*+Pasw#KfkIQ|?b->fNA>#jFF@2Mr^buU6xWY+Cgt|z%m6d{8}^v7mC z`uFh=$=|~^Cmru8C|M+K*m+v#&R0E0%;^ozzcOpf#X5`N)nKE6_qBB$K8KvQ!0w$2 zv)kCC#hVwNpY~*VxY|eKBm)ui?z!3y)&6hisb{><`O6mQxj$e61!nL?V}nVQO8u(i z>Ob|U&$uFbjX}+_`CA7w1PdGM)PAE^!g2VkRkT>D2}S|IIVjhLQ8|MD!ul@xS@yVZ zt!{t@LT@t1B&9o8uU~QnqWrsRpHk<>Xk8JUO7xrk(GddlR@ z*7mqXbdTB5``I=?K*_c8Y<2m%E6|=q$QND8APVAFK*Tt{1pvb+*v}M{F$$iKzV|i1 z2rIKb?(1g#5Zqrm`<3yrEAVvr^DIaX<4;1%3AmO6-cQiG>)`zvzLFYE-+{#*HeFy% zQN<+oOOfee0vBWcxB0s>UoQsvOlx&&m)Jd++Q{ZPM4mihhHVpDk#KaiC5?wAVhS8% z@xCT`EBS!$>w>nEj}(8-&S9FYLxL`hQ9zeGvAeI#!quB*)xyQaf44;U0;~ z)_3lMA-tCrBJ?ld4Is8>e%Q}37jN!#>{-an)~8eoxZq#(6|-eANH#8_odUm5KpO9j z=(sTj3ZG@T$5*rmcmqF5)2ok$k*Vibj(W;*!PnLoh08dw<*;Qnk2nzm#Lw5i%Di+= z+?@`(1@#gm!^0@^a}q$>qx}pO7xKxpaO*q6&|-dIP?*b~{vzTSsut1ffvilhcwoPZK&(G`s0X6xG=3CB#!;NYQRatqVR?A!M)Z|O zmRUV-Z}M@{(cWFaDY>444i{Q%c~NqXh;tp1JFSNVllLl8sx zIKIMgTSunx-EKlKVTaH|tzpm{gv(ab9V>f_i0KK>pFFIyN{_oy=5Yh(#>*4o z>pVzjmk!B^I+JE!@te!OD_m!V(I+h~fkQ+Z0V267I~QSz;K@Tdb)-bp*aa$s1F+Ek zLtuTy{@Pn`aiet?iZD`W_-bfi9Kui;)2k}k-P?FdWInQ+aKmYHCbvi4`S;Dv(Zlr+ z!Cj`0bXFaoi+u08PPAl;f-eGyO-^aTwl&0fRtH1RlN65*M)7j5k8m;xMba zj=;W)ms?l5vQb`VIVl~A7s{W(K7DBG3%v5$W-M|SUI{k7#I>#yaOMl$Jv#8XmjBhU`_^od4uEHOho3D0eP{|qC`{JdRJm;0{?|%t0 z^;D9NUD>b@6@cTTi;wEb=m=hVIWZ}NL^!9T|53l-k^}9GeQnGA>G~!trM6Y} zJz>_o)a|ll50EB!tBGV+cAt=)7=>NQT&1ETgv;|%{O?**Q12=KF zUm>Yrdrs)ZG|b1CN%N}xUK<0qkS=9vQELxIH9qwTfexz>;q>n*oBbaOeVfZu4lHOY z83bV79_;h=K2KDER_69igb9otW2G(gRb6ByoDCBUI)iPqce+S27FQUYG7y6l6bF!W zQqoO}Ru6t1iNAK7u0?8LkUwCcXs z0uCe$)4FvNN|;reTQ{j50zgnQtFvqN=zUBb8)hWH2;oUI|hG(!u%5 zcVq>R67!KbSz+;1?88%LFeWHD9gH(7;;^%|ArC6BXZT5yYJYFFeLx?v=?m?VlT}C= zsdvC#0gVX`SoBJ1O{@nvVuIF|SNzvc&z%srUtyG+Z`GeinZZfVJQjA(WIBSN(}mz6 z!HQdkR-r7R7jk~%x-aFceLff_(B9g{%&e4d$;wc zUC$YHyZr(QUy^Iya|oa*q3Wxbrg+_5j_eKfA8)^R3TdQD-2eq|SWIS64BT_RZL zd|AZN_MBfXy#RuwTZS8F<@r7~>-O8GD~&1S3QnCcAHv^{ipqRE9RnQZd+S;Xu{$la zCb%}?*=kNzc9jj`+gCJY#B6Kq#!YEKuddID$Z^&U8dug>w9T;6*epNJSvK(vt+KZk zOR{fXXP(=qcze$u58&I=TeU`V--L{p%C+?Zq|bjImIJv%CO58Wq*On(|5X3rSyMMj zJV3EN%qF!CPb=j8nQ#IRaSjcIQ={~_@~UrjI*3J2K9mSx-=6RPmKqQf z*JM^@M;-xzQ@ax}4$ALs7YXgj;UDo5cfqQb>vR83xt#X3Zu0B+xRVUUN|2r&}a zkLP+ru1i#5YvW;)aS37T%7X)R45qUt?Hu{A7?NOpuz5~!{hc2tvJWtc`+1(YhM9+#-zC|pH1fhXRhku6?6zk|Jk-Xgz*@Z!urJ)p%BaPIVt! z+*XfhbxgDD{|WBqr21OKMM}K)5}QXlSc0<#s!@f;{-?id^iO|x9{M4&uKT)x2CN3+ zi3Z6Er31!F`%MMXPrx-vyoN&f-MqDu-`_j_R&Lde5i*tKI&yJC>S%Iuvezmv$AEGW z_y)Rhcy~>Fllky>*Hv#A-eoc#-w(#4gW=!v+5e9B%cV-MP`rbMo5y2_s-% zW*G{2vlwYE=UYgJo71doWB4mGckkaM#@1Y@a8{f8X@beHyk7 zBHtPNqJJYbHi?;|TO0LMcfH(?JoAeWu=71tzzzl~WH7$NNIdPOGSTu!Eu=ik9tAI> zjUZlC<$6SXYj1I`A%#!RKIHLTJXyjH^{f^!(%9N{ov4Zix-3pvIxn-#J4};05guP^)19phKQtw(;@6m24OAC(j}| zYzmJ5lEFX7_U`i@Qr`)@^mp;7d|gM99CUd4TTm2;1|vb6?*acQF?i2*uBh&esful) zR_>QK}REFvr@{-Un4X^x~w@hT+jr`?6cKK2M>nnaM>*m^)-3nuloV> z*3Qw%SN124KK`5J%+dBfr!N7(=fRq!0dWPj^L&%+s}X#lGnu~C+KNI75P)MV%s?`W zHQqcBL;DW=;i8`4bSUb+LohSfZf(okMQ{UtJ2%$z;e{Zk-MJs8h0z7Fe;*YOS~bIg zP4pEXmyu4**wKB!?9DIE;8{RU7U*%M#KPgZf0>XP784sse<~=so-hMU`M6Ha2tk!$ zDDm`T-ETD7>gFJi63tC{I*g6auE*rtf5G8hUMaX7^FNjJ$d-7ex&;CTfqc74>sj#YdA3yf-&%1NE=#VY zNdz_QjS)=rNXpeDOq2kWYNkRdQ4OrDYR4kdx-4iSS=#hSWTw8*5+1Cwl@Qxnlku{b zPW=@R&baDQHJ>F%(ujzFxXg&5nt})*c0*UFC4F)1hvtTcx-HGsfm@PsbL`eyCer$t zQEc{}#M5*8lk{XP#$mSl@Wd^3FW&AjbKflk)~y>3h#@`X0v=%OuK&DfiE3o@VA=jt zx?35idiDFddEKMH*}%h#Q}^Y)%T7(A9cb0PmE7!y`{kp1Et}kgwv}td*YNTY8d71(@ z#+LG*Exr?8#MWYAjvR~bwRG6ltDF8rG8qcg)gPE$&vYyn+hvci+tMSvF3?RM7|FIg!xF9dD*0<8VG^u2}iW+Y;i%gnSJc@;JIL=>-Y^p40l+q^$CQ>;%e z-HARLvruYnHN1`pgK)W|p3HT?gq^8=o4RCG{Ohq(subes+umxp!_lJraC+T#J7AWy z91dj)uNXJA_Dp^LkI7r&xjfo&2VE2r7Jem!HIXFE z+|;RXcH5BS@+smCh|kHPuMDDlj-~1+|6xZ@=xLZ<5<#Nt51t2cM<`4HlwH8R@CQLq z4*bNPV1W!*B!5EgMOiU1vZ@UYV8FdkZl-qHYG-xKM{Ck|Z4X&F5dF#>DX_l~6z$1- zUn0V%xc0V|MP-^+IEEJ^mQ74}FJ1{pBzn!Qw2Fm|&6qGPRxsZ{K^m90DFOb6ABE2lJ1I(H2v?kjOcw}l)$tXs*xC0w{O z7qpUWM;Ri4xSs6hg`1#K64ZC^Q_nm96aZTx4)FqwKk_vA-7lOQg50;J2{k>}MY=g# zptvr`tIa=l{oC9HVpYw;)#`ZP6S3T04m`-%xE?oMca%>}srQg8AB-G;|1iVxDENXF-Pfj5f;2xc=UB>lD3ZPxM70_#h+d`J^upSR zWW+7nz?XYR0#bfnYS6htSFvciQhg z45Xol-y4kRfc@mm@sbVsVR+bZ4D>g^?jKLTK2=puGj=?>3e_+BrA;%QNK|uQ1lQhe zH;l}IGSFThRLyzogRMR-<~Np0Sm6o_t_y7K{eWmx+M1acF@vDi@T7~mp87Aylw<@kr33jA;B)c=3vRN#M0r~dEdRJZ?GPK{y?_4^qT96rt59E*5P z?Zq7`XbzNOBH;CX5^0utZ`6Z#ud9DkU1Ap0LYL(lBI@fw`vF$B+nx9%3Jm_Lx5Z|o zVjmZ~hc^Jd$LQrQ^3)9YZ79 z@3$<;gljGyJP+GB7O_tb%e8kt?!;4C@x4x&w%5LXo z=dD|ZhrKA*o|-(KRr&@awzz2Yt{WUfx$lmH+dewV8Qik8*1KfaRbz1S2iKdH* z$Y2)NdBo9`Tz%AQfle7tWskgVan()P-jklps8x_MePYlvGNxQF>+VSIt_!WodrP6h z<+ehO`n3ja{W;Eza%rZ1`*y7IH#CeQ1fXf*xsbal$zX4diuR3pePvDPd+#IoU~7(y zvgR*)W>y0PgrqSdfXanyDw5%`^-l;gLesu=B;S9~ssHtIs@dek5wG(^nv-bnnrA@R z+jS$qq~9-I^>Uu7xzVIpI%~LAYvYQZlEe81G7}6=iy>`utk2=jB$lXO%Hck0v&+Kn z9Zy>_geB}fOj8YGK$WoV?2|5|Gx+%9|1Y5{S8xdzBv2||*DH-kW~AI;ut3E1;C&SYI8s36>`W)#}=Z?4kY$Sm24wYJ+;O zTlyngPvBb3gj}sG}68W8}_wGhMmZ+5R@%9SaaWJyY5v8oj+T z=bA+>K*Yt69D{BO)0in-Ef!_E&l!yxmIVV~N%B%#g<)jWL9L;NJR|Hp_MiuHCCBU= z#YefhCGoe@OYgc`@`8)rouO)Uiwe7Gd#VeX25#kL8o=kiYP-^DNl~7{0LpyboXC;6 z&tg>xfwjle8B9K|FatknLr(U|gpJ4ZN4|K0V_W}%TR|hvA zi*_z8NQi&1T$TqBgVns;FunLgH}+N$oJc->H3dhc z!cDpyM2Q?tP^z%={$yZ;6;JvZ9Mh?BvW@EXx~8uAS2HRYN?^?@Z`3Ci13*N^2)u7$ z@1D09rSf)6j;r_!7}NS`SsleI-wr9Te~~{8sp}c#^rjBJm(O6jWQbp=u9oKU8Zuy(z*|4OC(@ZJ+)1M&F{O(?~Ea`y4z1=BE*l`#$CHLI>EuaCk)HLD3p6peTD0X_d5-JT3Q?rdoM zO8kt(DuO)l0R1!3txgH3ZYA)e^=wJwS9WC(SALnCC-htW${))R!W^pOpr@!~mVuyF z*SU9h`mVONbwRt(z>v6YNjVYl^gildFJ+ft9=+<`{UCYUNqNAB)`bn_)vD%AoD?P= z(I9wOB1XZO(|hE`M9qAFTmRq%KVm)#0&iDaSfPq#F#G~MJ$g5e=v(yUJy+nV!2@bb zdmb!Ic&jKFgWgZWU$C(-iuuE-KWr=bXE;PC5rB0~km*G9mj=;_+JH>egVy~i7hNUZ z&GDLumr&0PkzXp-gd2=(S{p>>)x8Ry@44mXPJGR(Q?R7Mbe)aQzsjT6g?JxDp8C?8VSCrzMh*E-|T@7zFeYG{K9g!!5I<8RPER} zt+2t~Zi*+rrHrQEUXdaRwFADHxqXq2ZiF`?KOVQmt~MW4rGh=#iI~QzN)_lvp&S)d zmSxI6!D(jKW2Dn{Fedw95M_N*wG@d+D#jpfcZ`>Jkt6{nYa>#!z-DO*-sx89p`38J zQSb@Te(M2J{#&PEQ5*V zn?PWmggS!5r5JWi`zK1ZNwA~|5=-d#T;(T?*xuxdZ~E7~kJ{uFxZindtwN)KbUS=} z*pPF*M8f7?J=LXiz>sjxSd~CsG5)q)D-&ZsX$l^|sQzd7fvWl_<)<;v$gc;cmm`M2 z5bTGo9$FjA7J!;lg?RJVCjZvaDU^S-E1(d$MmhNC1I&|qjR57ddRwg z(OyE==aw~t;{*=z&!F?o$|uq8POS6I+f5dngVeCb*lbq|ryAY?w)NDQWxrp|J4P>vQCxfw4!AZ}^r{y21AB81h zP!f4F?2=~Vi6QM!zMCJel67p6v`M&Y245hr3^Ww>t;oB%pF=5&809g!b|0H1a_{0F zWhrkSI%`*M#K2tu4Q`qM z2NNutt7b%ECCi~a$L&DLY*359j|fgMCZkadgbhdQ7FP(-7bpi0CNAM3;XKi|pAhg8 za*44{9367kt~D_>WMfTirTz}MDCyY?30pIN**Pl|aTVK6E;kys#F-mcQE!`2075DG z!y(SE0k!8}dUIiZU3c$mUs`pg3xpv72~?b&xA_OvNAZ-9KT~oW<=9F7yf^RR&l;oS z#A6vQar!#g+6}*L7<-J*RuFkE!(S4CFj;PlOI5~CIb$t4=ahs}u~U9+B$i(C92mke zGOxDH@mq9y_SRnZ6=NDM0F8T>IiGJQhqk7Me|4gDw+fUcMtfxIp3lSjueOZ?luEy{ z+(oP`Nt-ZeXd9n^o*@&=xrI;zGOJU8T^R$kILWHOvLvR~?=TF!Zqe_Ygd z1TFk|<}`X+%HWOU{PYGNYWc|V#3W<{i)nNJd2V#GNs z8w;kJ2C2E-Kf1#t8BOQX&+pJQNy4Y=HY=__MM^&7u6&X7K;^Yc%f9VvuPXvV}jN$a;I(I2^29LK@qp7&6{|tzg<5oxcwvXu8 zwcVeIBa#c3Kt{f2Lg%y@|Mcs}#1kXG+0yMoUnyLxnfCUIzs2Ol?lxA7LR9LAY3RYX z5L-vHmtn>mX7vIA>6VMfBl@zkT*iz1))`?eKWT-Y^jU-=z&EgbXVB5$&>F~57_}-C z3dN}BI_=B96+mtVS2#Y(WS6;&rrLZvu~XK7X7*$yC9Ch2m7@3lk#EgM@Pz3 z4>GKma|W~5^I%(N=bu(Dz zto*3+k7>@7?{@1|&C#ERXbrgm$!H{u2Z+c4Ugmt9Y0tIM@zhv#&eG=0(PO8g2h z6t@uEXvj{j_=@~k-MKCJSbt@}_q;eogH>Oh3e*L5wb~aw|3wU&p*WN+4u&K|JQvZF_kFIX>r6Y(?*0@0^UYamyi?$W!h3_uEp;X-89>6IGhf(7-#dbJkk;gg*7v?(+(3B zZGgC-cBXF(zGOXgw!wyp=+{Xt-heRI@PzQoLfQA_L5GVfX{6VYY!T5Cqv0%6UUG;c zIR%^&yH`shk~AASmtul~NF75^E6aiuuk*>J<7>?FJ>{?@YxSJa<_dHWQvJT_#Zti(;_ zj*jcqBNT)<_}pG>H`4~z$lJjY+VC#nPH`x$EUzy^R*i${IQp3Z9;T`Mox*JA4}fUW zZ=w4}cClm_X``X(N0}sDNes=F+@T(*f+d5}TUmGzi8a^qP|rBcSh6M?CFR{4x)Ohf zpRmuyJhBO84@kPfi|?Zw7DQetL_%UD%r*`VB|43Ur}8;VR;j)o9!9_4l0TUn8dK6l z`KwT){TeU(m(KXLmk&)ygM6|;#jMrNbU^p!if z;rp74f!U?EIg$^2DFO#R!;nP%AvN0<39h27;`*nK5y`$Qx&5joW^e#n36M=xt)Leh z#~;`8ZS^L*>l<9#t+ECQ963UAk{1Wu44v=MI5d4_GS&X*q0#2Ge$b{pks7w0hHUnm zu3o7m1MsYa`8Kw8!)?!r_syy0#Sp8SBwc?WyD=1@h(+}*qmpF&xfQ{J-rYtdbK!5; z?8)!&D{ao1x)}5Gg(?aJ=Iz_6n(&opz&g zh_qA^j%Vt&6S|c2Y+i}J^$Y&(5zV#}kLpbYm;6wkZoHZ$qhM6A4GK0FdDGE!o%k6BVY_%<Q;&mKG^9{)YsT!)iaZJ%OrwUtj&3h# z&)r>|TkSe`p3gcM0toA5nv>~$uIjuP510^pUGUJ5_4@596zaZ1c`|qF+j4T#w!VNg z9D+AI8~SXUImUhnauq@xUa%{Z7m|~mMgrj&C+Y?KKMtGk2=5U8WEbPzWtB{@`;hEV zFq*!@mxrS}h@gMAsAoBKbr(;SrN;7y0n9$sUwe^>Ugqd9GrlBJ~ceP-ELEv*)P+BzfCWtv-F#G#`E=#K4RIsgllb0Q)t-1Mn z!qKA6@!;u(kiX8;^=;qEe8Y-5qKqQHtbZBcVnC;qrkqOxk_H-eiW1 zQ29Gg)^xE;iS zLhAf*Kc?_|I>AD!ESrk%<#lZ;63-EetfMb5Kr(IK8v?n*KpXcD(diK+2<5-0&iwWK z!uT3m#Dw2=m}pv<0XfBW4ut6pwEGe&?q3&YkG7ccKN};ikv6+PR-z$vx65LGv4BID zHn>r}c!J9BVSBCjMRtCwB0epZoMx4&ex5Cea2jw@-2F`2P6EDuSAUkNrUgm=EDR6D z|BBRQuqUWNSM6TVKbyC9oMDONcW?gAa?k z^wmToinKh7f9$s>?lm&+q|+WIX)V915FiZMnAKO@rbUDQl{XkBv#z-HJwHWjmn`o= z(gacQNA8~ZOmF2|`Jsl;^!rfd@+h0Y>)T3)sC&uyXX_1tYnSd)ziAic#lD%2sr5^U zV&xH8v(I`zvH(%95u7on_ z?9^OWuc@D5Dj(G5?&eDRNsMELJ{L0y_vQ2>Ru!8^7L=cd8fU#aSbf)6{PxXP@^JO| z+t=NM?tRHrpKK)>70@5_+*%}yL?XGbrHwC6PLQ9Empp;h_V8Tqc7u5nsTP{TD!yN| z!P&&xZB9lQ*|gLL`$Wj@zL2d~TAQqf0~haP+a@~jLNXr>xa6n21}XtkhrRSG zy_*&X0Rzv9awa3Zn~a*U4jB+yyJq%;zD1$Mqvd;me{)#P8Hz>`nrX0p&~g-J$Tb>C!dv?JS)LW$X9E@{ z_OHP*bqX4>5@frmIwd&O*F?37(4@(NH@JU3ZsyG`3>^u+Y_wx%>Jp29S3&-TP|x&9 zR#(ZaJl&-3a%wuYSzIL@w$oKTw2MMfXz{jb1fX{@sV=`Y5fMkDGT}%PBTzqbi7KsH z*fIO`{^Sw%h9%8ORBIwHABp+vaqY`OnQHhnvV7nANbx!+A?L9fWx%8st=T?a?0)yF zm3qe-(Goa_m~6L~xz5ivHu%x$)(x{7a4z1jUft={IOcQto1eL%{X z0~*F!Y;M1s2WaawY;6Y3N+6y)EeFk?H?9kGr=1hnc5yB{2NFr1wLBHKJw^AMoV8Y1 z+XHqN+JP&tQ(+KNE=PIQ^=A`1Zw6j3!!DPKgLfal_8#J$<)j5&x5aL;5)213ylig! zrq2baXvSCFHzk;K67X$KHAGS}KwN`oz{7Ju4e%~$H&$OE$kNJ6xeHOjRq<*sTYm!D zCKzW*m-4Ea?my;ZNRhHyI1M_al24ZsM{Ke3x~NUsIhgZp=erF}+KHrVmiM?GNg_|L zeCyaBOO~pCF`S-oo*N~1FMr(5muPT%?-?46u&is*A8i3$>Qvv)AH#cYKzVHd?_+5V zZ>icuT}~RO%TJFA70}BdD(ma?_4n)7n@pgsef4>5{ki-7?F~^wsLr?RIsFU;lq>M0 zwq1U*pI&ND#JJ^!zXA3FDb)J~>zbHxv%r-ZX)_CdM~^>MhNnl5lHbR4Javj@Y!0*!YZ8elz}kC!55^np$WwHeeH- z&O_Ec=(ZOMUvTg-SvtdJVyKq)ai;RucxsfM^2cFQS-@UAVEp(WG5P;EBmR#`hks1g z{UgxiAAyDf$FfN*CY=Mpo3iftBZ)P-hP^iN0)Ue7h&pq%zM9E+ERH>9XesvGGMiCf z>Sr>#0H%fi94-CFsOB_@)nLpg3Zpww;D3ZJ=>A9OSe408C=Z;t3jF?m23()~N5JF9 zUH$h2Wd3sm4*W+h6G!R>X$biitOg-G%k&F+hJ(Rc0Zc99ym+#UhJBd!_3D+~1JM{Q z@L0|NVy@|5%>9d49oq~?&cy1$P=-B=8r{Gs3Oc|E2XrKOY{6_4gQGFBXxxcNCZlq~ z>M`m$x2QWr$yT3OGwMSi9$&g(gzfx42Rq?#{)=Q18voa168_b7|4jOSx;veJ@ga== zVy@ige@Uk4Him1Q3|8GP9AkfR7rZ+z#&DbjHa^v$*VU=1!{%p9#K&8TeKp&3Ek=qvkkvamnK9W5!*d)?u3_&i3 z-NXL%+li;8i$0s}9r7te`s{O742O(mSx8i<^U2a3 zzBG^)%eQYT*W%}x(Zqeoz#SYNRMXQh&x|oxo8dBfpz=bWc&zJg;+6c1g*zvWKNf2x zhtm@;1PR0_jSen*Ig5?Q^KjeSPk4_z)yDh3v+m1zg%PDpQ(_r{HO;5db*IJziUKTh zC-nU%=v8};An+;^hH+{3w|J&YCCfiOkLu@g7I~!ie0qjMWssGVDdkS3 zWhuOf?8$g$+z6@a;oW+Isd|JnqNvZ;lEqwhT;Nc&*p+yOtdeVb`CWDAT+`iamiGG= z>)F2Im)U$c1|P+s#)JRtu2^l=LNAKhaL@C-IWSusFE>XaGBW0+@3}l9S6}62&vI;L zq~&V0rJ*=0^vtJy>-31B@;LS?tzH_Y$JKX+`rf|N<0>;3X{vG5ve*VZX~uREl@idc z71k?Pw^sx!CFt!|$TWGp4+%MURX#ALmD_#E7ev~*iDQlA?qe~yq4=V|y-sjCVANJG z3s?=}d~uRpJ9F7ZhtOuBl`E6LX{^(Y_HN1eGpJJXt>|=Q{r<12AxNi~0|HClt4xZ^ zP&aEBGD5@-{$z&1ftjKB6LaXeVr`kXyQm2CZ7#k~bKMXpBV8bio#mMx)-bX2$I>~y z;@$n~wAiDz=|)_aXIQDxk%sg}+F+6|3EiT*Z9ur%*xocFWTQNC~g!Df1}c=A2KC8F(%J z*)gIvfmVyKJney8+qe9i&T|>+i~|$^HU0)R?mGnAvgFjc*gIB$^yJqi^BRuZgrw2A z?y56MU-C(zakoc6;TZ0=Au#21Z3m(I_?GCL!`p%>9rdwoGXx`n=1_N#JFb@-thn@p3+Nu(N%h-dGB7>5mvRxd+ zgI}$5Wja*U;pDnPIa`KWfvZ0;t20qpBk@ohcV6l?>Dq-S1*zr-aGA2K98tH=M~&nK zzNkkx{+$WNO|G?##No;5)O)5>(qi>(v3i9FXFZ&~?+6u=3#hGq%?EHV8h!2a_+7mo z#>B^baM#NZac5IWoz*y2^Fj@{;&iC3r1OE28=Q%<{+sLou z?=#b;+jb2z_6QP3#&RttgfaGyNOJ#;vUd#9Bnq>2yKLLG*=4KCMwe}yU)k!iZQHhO z+qUc0%$yr%PTcu%&#yN#cf{I=$c!BsYp-V=qIq@A7MbJv&p$wAulZE^rzP|ATaqLG zA-7c}P05iP?b~C}!~pq}3gPVSwj_%B8#JsWc*c1*|IQpI)>H@Dq9Ddw` zh3ljgt8~Twx0`4US*zOdE6-ah%4^tab~T5u9D5@F>B}uw3Tf7Xw@UP?l*uqc$Wa$) z-Am(G!a{25fe1aX-wtY=CB1mHl|q+TG;}N$F&bkIlS}zOmNq9ywx?r9>S2!+V!b>&(6|bu&^y zs?-E;a%sy_R=I30=N7)wvQ+r$NLbE#UHX(1V+zK6T~PFN^P|eq93hc;B@i+NN1ST; zGC6Z4UdTBZpJqRMG!KAV4krm=J((ZvDYs^RrX(8_?c;D^bKq>T2^XVZ2hFBj_S$Kt zac!EA@#9jsFF=QWuz4XvYf{h!h(IKUrjQ>nph-D)*%LN5>p$Cts*L$J-^Zsah>E=b{rLQ+W)dIWHMHLt?``b~ZwscL-G z4=*cm(#dMMQ)bng!)wafP@?wrcYO!)-(uTaE}qR!oqK3W-7E^Ql!uR2?SB7`D@a~F z|GVIlk%GFN?k_Fg?})cq?q0{CTG%Z)RjEjhI-G{TAt^Bk(ZBd9Kt6|>Brwr# ziJTsK%D1+q#_w3rH_lCJNPYZm>rRY42SS6afSbhH7UdKs+yTSP2|& zs77d$p-M24Ay){z)i~`exz;8+Fa0gJ5(gs_DwzQEx_A6TOZb*wbI-TL@}-jucx4Xy z7gv4OeDQa?`H}DOB{RTo#ky%o_U(vbDza`pYAv9-=9U0mBc(yRt!v}XDoZHbu&3X@ zkCXkg3SHMkw~Qq`9XRsMZLn}H=D4s}@^E>4sV_^YLpsLhnK#oID z^Hijh2JQjQw;SF~Aam!6T@l#CA(Qdh9-?Yd`(y$J!8*qSYh){TKaf3%c%CwDHdg;Y zK0UpE{^o=sT3d0_t}RE5^hc+(cEAAc{?O{h%0e` z64r5O^pt%n6jp{leh%w)glh~V%3VsTTY_lnhRd*V8!3#n)wdg^uY}1ih8f6}X=)?3 z?>;S!8zg7(JF8eVSWPc;*jBv*PCxd4jSQl|_=a zKN6WeMWIiX`iFf9PIh4zJx3XUJZ}G=h33ERo;bwK69mH&|FZy~ATsh<$8rKmrWCM^ z<@=zHDWjMvYoY(EVE<>?jdV;9!%DF0<&?~am2BC={SWDl{}Q|UPZg*vWtoJCJ9%uh z99U|hFt(K+9w$Pf0?=3val%ax-pCHV9A-AWXK}=EivG$Kz<^{@0N~QMlB@)4p17`&X|JvYC!vKJF^c-sOCY zD%;ohJaMRW$wf;Of=V-SH0={HxXu%C zyZ|#j$bPfD1VO&Pv(eOTGf~(cvoT!YvptBxvm&RWceCLx0Oi>rn}wMOp9Q8+@L!&7m}#bJBMBXEYz^CN=I4^t$6H5277JNbd4orv7F z$NnPzr~c-w{$nQppNTk*{7(~^B>O*v0sm`_4x+GP(4|Fa)@GuqO7c*&Q^IW?a)MJ& zLluRr6UHOnCk>B2}6Ra~I`=%R1>(x6KA%o8)15pA7RX zF!>77ihxKl1sY=xL8hrk%}Fus&-#a%iQ=p=fvGs>)(Y z^DD&cV}>;Zm8lRrO-#8p>lJCpgS$-er{0^?Z8L&y-8xG}zq0EM}HyA>forqu*<>By_=#zWQhWJbf-X91hkq@)ad5-Q5uhIr zcWe|rw}>Ksh#JMji`((0P%SY!Lid~tHu@G^swApcU)d{a55k4b}}RsB_y4!`@vt_$?{xhg_}{B7Av#i+9XL%OBy}@ zn@g`1vupN!b6Cykw*AntO$`q^6tDsS9b^VztShho@a+WWe93=kn(Q&vTNx)SG*1ZHd<#ArnFw&}fDB#JvDz?? z%=OIm^GhE`(@wSMtFqtc1{0t}fpRQ^fx4g%f7rCvU&)>Scjw8=E z&w0tc8=9svV>T6Rjr!Xy0cRC|`OYS}_&^Q{_a1v zb!HkcB+-m<=bb_XIC5X&uUSs>5w#uI)V4f@$rUJRNNR+oxa3>k22w~4Xxk@?PrEm( zqq5SZwJ1~DoSdtS4SW`Fi0;j^`%zq_-gULC7_RSC{J9Qmfr)r;__EA3^Keo2`U>z2 zy!X4u*|)hwZeE1fzSWqORY>PHKK=KHd!X@?!iIE1bB2*0@V3rPOT+Qm zF5+l<|$bpA8)U$>7p(d;D@(=GVJxFUJj}dQ1!7^YzZgwislb- z>$KU2bn0JKO}0`@b}v!4y*(aTt2HAU%6@oPs9Pfec)7KFUQ4I!iI-b_JPO_@jQ{p2 zL9A!C6={8%kB8= z*{TYwjAmPP7#3-i>*NikTDOlebA`Uy7STA&oiu;<&xz>@|W777IKQ90tavzNV zpUUrX=f}~1;^A4|Lr9Kw{a!91wZ_*p(c{T;_%^OSh5Ou`6?ighXB^!psWM$*WYG++ z@R>eVY9mZV*V*0X8(kZ>_KNEd?l4tcUwn5|rq_m1#_zKu+z6X4$zILH!wYNc+~YDJ z$KR}%?z|h#nos6}hoDtc z<-?bd(E$99{e4MM2+M*efwHJH`rvHGb4M84;5<5#O5O>mRQ#13jB2yb;L8mfbPep|XIzuw)O|XD#UBr7C zoLBYr_gdmB)bH(j;Gb4RiW9>=MmjaZY6om3YETel%J@-Q1AMekAAb|NchIMEkb&r= z$`hb+837}&FX?O8!yLUH;cqrG;=H|Fo(Xq2_*QA99H?cwxtm=ibm()8YnGRGmD z(&NcttfKb>F{;VP{3W71z5X-Oz~CSFcK@fcZ4hy-3=xA~6_^`{3b%yPub8H8Bj2oW zrj6w~aovte9WYS9kz$#DdKgA2817h&&}aIaYspsEcmyjAXi`r9>V zQo_wonVdCkhFE8o<4(2aE2TAQnwTcJtos{crs8PjjNh6UX~CB27Z~;aFdL+rP0Y;& z8bhy#Sgo(R)L)u%GxnT9ld(ir>sX&+5F7r*hV%AbWivcGL zjJe-}A6ah-0R4~Xo_8rU(RUqIwc-hV$$|+Jnn~phA-%O~VIwL1wF=>v0=D>-4^PpSG(5XAVX3g+m>L;%JU`_+ma&f`!$4#qVU(+do+p=i)|Eddnnrg?5+R z0P#Ko<&RG{kt&Y?2K?kcwy%&!X|3gfr?70LA6CcV{azMsMPSn?n&>XAl*L7)k&ye8v|6lsIkZnc z+rr^exur69i2sNNip$7Yu_}aC3p$1iaN4MYL~2V{(^*gsT4lr(|Dw#+V*W)e=48d@ zrgNG{BZ4iUsU|$mdHTs%KkK1R%?4d|mW26bmI!C+UxontPcmm+eDUPN1l6Nx^L{HU zSZH1SxZ^h%WkN~AQCLErUN#|r9i;HCM^I4AJRa(Y?6b;c?=;h&_QE9{8gU{cfYxmO zjyS4EF}smXnLuuxGRuthpx7*7}doIB8xgW;T7I6Dish)8$z(<#ZY z_Dv0w-1v~r_@%trOb(|?Kx~zrVB;lZl1B5^`9>Vmx^Vy8ihqeQPbsob@mevY*9z6l zWw`S^UcSXD<<8oj5_+{7KND&T5CUx6EG<&>3!23-aVW?uLeEQvIuSh;KCaPp-nlBo z_q4Tn|G*VuCxnEpSd!R!rz1 z#dJ6rB`@k^X(9pdqf*ILI5>$(WtPIYe@;dPWN~px(iH1k_HkI0SF_|^fFo?xR@dBe zTa?umCB*|!XS6x83KrUZdwlzmHB6(7Ex#5QaHJO&(H`n~?#2OKAbNE=snWC}AUO*J z2DQ?8pt1(~(;*q*lWd}R+*xb5`xskJ=jKr)Y<6sHN_k$r= z@oh;?*CPSe&Wb?=@a=4L!1&IfGo|titCgS?l`5t;N9vkB;Jn??3;_lx6_x_ z#ns>M3ZOnZiylSItnmEB*lR1^*Fo7*5oEGO?>pDx7;krjk@tqhVNmzptDgiO*L5yb z0Tb~Q)8CmLJnzdR^%>WW$A4t;(|Gt5T9!VELhOeQ7vASK#xteD0P#oD{Of#7)!#S8 zcLyS2y1dOk?5=lr7rM;T7ESd$xCQ8wH(dc8`-D{;>TC7X8^Y~dfv~&xH6wUqTrUuJ zrAuZ$YoS1Vw!G&QPWg(E@P{Z3W^}%;xhl%@9m*2-&Nc%Bz(mbsPUz$ZP^1X9({!S#8~Fi-k#WLe6xi0kksf&NN5eU`gG-NK);Y67)BDq7`sMnm zkP83O13rlOjCs{_#8N2}pm~fzVyrN(Aus<=3Fd+9n?w|UWLk2a6F=691Wo5c76~lK z7;eh}JXPU1K?OPwHxS67j+qvYCaff|RwQnTr5R2;zv zF2vKUtyz1zgZ?$E2UZ~4|mjr8if3UR6Ioh zDH50=gQVB7&I_?{#xsTBI3I1&FiL4OHZsi~Tpc2YDnBve70 z-B<7HO*L2N$IkM$wyLzW%dM-_Z)w->wvfKw(X(K{zf{gaTLUr#rn?*xgy8La@Y$~; zs&8iY(6i_2?3Mt(){``N&rh7dSX6ylCJ=i3o+ z$&3zwx&bSRFLe+@^U{5z66<{fT=_yauKViB+vQ+1L8-X1G3jh1RT!` zu;x!C5I;8JoGDqLDY;?zDeZ=O?7mq3r6U;T5>9L{9XjIjxY)U&S>K>aJHw&Fq@fTp zxd1j`<%k&}>{K>RB?CPX)Wys{;`PS-&(ttU1D+a)Lj63MHLFv zA_SNBR=Ym%4IOl&$@bH|(T!~`YZP!pK4^%UM)SKL#nOM%2AwGJsa({P7Sb7qkI#`}c&q|E_86IT1WcOH>1$@BB{v zVDg1!`7&PH8p^H4X<97xDWuImpdBEut zD$q~;Cd$wbY2?LBl|6?Ma9RC%A<}Ok(H-Bzprrwuf3G!s*(#;iZr&nPY6z8qV>(;d zlju7v+O0|5S17+Ac!+wS1Wll#)#*tgsSkL(i{Gp>w$m8no1|=m6}sa?HTI?p@DQ92 zX23qIN#mGhNK}CzZmkAPw#=*gx|?l3zonzySVb(MFNH&|+(d6p{qE_=BSp3S20yqg zH-@yf-Py{RaL?^ejI~sETbwFKmJrTMBHK@_(WDqR)-Hl>&;-S&5m)ug?)!-^?N;u6 zp}ZelhbY$%^4yOo_Y>Y;X5FsGjt=U4FG$yfv$#xf?T%3npdtat53nr#Qe7QHD6rU} zYD$RG(*h|>l$zz+Wt*vY@XD5#f%A%M7`IBV2C8$6UcK~zfpFMPzT$XBKiGm9OXlbf zvJ8<sgoom|?U10f8rskpRz}t!l(Xn22y!kv?&>=eI;o-k8_j%Y|%hm4v zU0EEvS`@AbLV*Qfq+Hi^2f&2KkhmRe`2~sJUs0F4?kEXgTYLuAJ>&d>yw(lbv${sap7Wlp%g+`=mM;mV`hA z5VL>8JtB_kw`!RxBfS1iy*kSMv1GZ0XBC#=o1{I(|M;H}7Mw8YH?`q3*t&_2{Y^QOq6GdsUOah}EWEHgPxqDiD zBd4^A4MhNGSpnlVcKTuhSged}n@w0|+Pz}!T&%&r;`(h}I?cdWMNtaJ{7hO%lh%TB zErB4$p?Lp>p+ipX;Ene*2rQZ8H3;D8PJ9%Hqpyr4-L#^=V0C(H$CaaTcrv`eQ#Ja( zH04yw2YhBD>2cc;q8kZRatDDp4HWM7V8c)Sw%zce&|;@qv_d`uRciCQ zv^VAIWpXavzEh;oJLKH^Cqn_cAG2+Ae;QZ}uvr6+zs-zoT(>!TJeQ@Uf|+`SJg{}` z^~2DyUgvEW_^^_sq$-0sD6)JAcWe{b#F@U-T?SKou8z^cIt9K@;~f?6a_P;)DVFg8 zSf7GdH_`}kblE^gwg1j`s>8|pBi`*Wa}u2VDe9UK*`7O5s%BCw^_$g3_k#^(39j?? zqR}{YQ(%VY2uFPrE}P#Xt9xr3t{b?bIegL;q<&`KMsf{*$Hoh3adI9c{gieK1evwo zGjsaM*Nd4~;n4&^E0#N@cDxk=b_kUYz|V691cO0RJGOw|(hk#(skH^dM;1nwQiTt> zTs{(Z85&+C#toFZv_!bUy<`h0|gN|r5%%C9S)2`O(zH%dR)+)qYrH9^(O5L>bSqAcdm8jYfcH$S?6 z=k>lC{1<{0Fi9J4f^H($Hv92DfY`QcH!k*ef`rySDq72T!DhShEI?|ICjG@gZqj;fx5qkxN@S%-8UtYk z+6}ai<{yACvq;rfmEn6TAQE3vw}4hk?k)(xeUIQ0kV?V*KF^$+iLV4#0Pp>xTXI&2 z(PD$M+6q{KN)%&hLDdNU7S94RY5RmH>vWc`ps@b4s#BSNMg#Po6%AIpoDesr&Uusu z;DmN6GLeoS2xC2yg;^{EV!NPTgyq%OlW+)mKy8@_aA6NZel<@~l6km84rSr%6xQJR zM^SGcvVih~%XBDa!vk$<18f($!Gvo9SQ0fFjUk`VItK0K;QdOT#DZb{E{-3iY@6Ww zTM4&#dm%!0=l(^B8DmEN?vr!H#GSZGpI3(spwNbGb;JtJS=eJZo$W_t*j966aK&W4 zjd-3~Mi8!DcWE$n!rZzt3y6*sRRqCvA$X71}?IP+-fq$ zx72m+*0mvjr$OUHd{=)`z4i1~0kXCBh~C=<6?w@GHI*^{hFCUOf59D9vXG(q2sBE_ zyW25z_+H_}K73)Z3V;dbV84TWf*&OJx=FHaBCapvNL1@*0E>CN8foYf4WyQHq7U_O@XT6W6w3!nBhe+*BGk`S7`< zoCjR6_w;>xLjjxp&tOe z?W*|yDWA<`! zg^LMtS7kgX%p$qI%03Rsb>W{J*__uCLslqFKAY5O(a;KRb9_ z`=qE`P{1LL^ufb&{x_THbLFS;gj;(3h94ft1pv;?zWmweKFiv{TOxrcukKX{x}{nCD!Fj8bpO8!dEA)v)=hqNY%RdKoQ}sH3P;&$>nB~0FaU>RK z+5!lNb0GkC$ik)bU`zPcRsXpr&WDsI$|dMZcc6Q#4R1^BUM@ z1z9kwdbsQs2uazRotgoOl?EevFc?WNJIDgU85jw+%38B-gtQNQ>;V;V_bJ>g)rt-2 zVoJ#CFAUO^m}QIgC58WcL+@mJyvWVJhPdn(iNGFyWZXVa;1iwsSiO7B5i$QsQ!D@i z6tjh7JwHCFAiSnhY!?RJmDSl>b^IS(v;wGHdzlrBbUUbVv-eq@|)NF9JVnL`-(3&uM4EP|Bd!)hScEE6>E{`&EWS;nv6 zVmjU@Lx~V)q~(0Pi%K5%NT<`w33?ksH@;@XAIPIr8p=EzUoP3**7Ra-eKUaRXjbg{ zqh7i;4@$2Nbl4Vi_4T)8fU5mEt?$|;Q@43_}hM=C{Fcy%1kTN;hqmF9PD5p-jUXzLTug=Fpa*$THb&)`LlCF z{eC+nyS`_5%1Lc-wzK1ETN7xlG4;R3E`GG-nW!75hx{ng% z5(xTf_4fb~SLZ4j!#-vp6rX!y1~Jg9Gi+UNwk&Y9tmv+)wmD`wLyi|EDHwHiO;m&v zg>RFv{ulftlfG9i{E^DQ%^jZrl9sm zf~XW44(_;&Jg;30T$d8IOVM*J@bJgWSjsOJTI`Hj=-U-wcs}CB)^n#Fq#!l@g#sWF zuvC#R>jXxev@Wu3eJ}uAm{piQvyQ-kgW>P%E~NcKDk%K~#v~MGG_{FGGN6zs{68>ZamV%lXiT95Wb;Si*S^@%HAfV;Ud9-uUq0{*G@r^N707s_i26Q>%Yy`G{+oyYf^ylY2+ai`sd%XO^t>n zt}~3WF&u%>JSH@`YG=as`)SfeMB0>8hi1isbnt&(T_x~N`*PjqdDFVvxMzbfE>a`> zv`?nsI^QTX+hXqyFn^L1;K{bBZao&a0~1O)BK=h?6aqrh;&TkZ_7FXUH)J#-Ya-J& z;s_$-OaA_G4-y4n^@WLy4>Kv}vghK!;YzZZSq;z+y4QgJVG24x%PbQdO5VfQ=qM9< z3z4&Q3REKm_xdoL!ZVhT;UU`QX$8fiDAH0sq!T1_a=p?^k&Nw_UzwWPH8A2(F@RZVLapVYGFX8=D0=Mv_H+pa26Aryv6ikHYqDRH55E}SU?-}#kWjd z$q1fi^VtCuU&-@F2$Yz0lj3KxqLoZFN#bKAK9^3iZT^Iw?ysAi_mM92GmH;95Ms?v z;3_G(Wkqsz7cxxF6%z8nSSwz3p^{=ENzmfUi0OES6I08P=2MuaPxEm73v^j%eAZ6! z4jzJmToQZF&LiNTaFE3r$ipjG_K)sYFk2*LPqhUcKr!Fy(nSMs{i1!^j2{xofn~J6 zo=VP*K+oJ0#5L;C{h*sPWY8SMi5I60G{{Z!V^`J|_s}=Z251=McJ{*svp;BkMm>jf ztfn1|BZ`?$tSNg-msr86q|j>4CPeeI&?ojv^jO~nW_6I`Zmy!_)TWSRLX zV*~(Lb;|%;731I98Q=bcp^ zBFs!&?MgQe)W}$C$8j?`Mh{6^)9^AVv05}@wzjU`lgoh9%nPgD&}goqEY;tTyhmp_ zpKhN_Y1cik=j9N2NfDo_$k0F%wH#!&mqR2C27t`5f*FF;LJ9M1)dz7_>oR^!st5)nkA+lTYZ~NIX&yC_kzLN|O%Ft?+TvZLx#g zJCS-Ry!q;J47P~`k&D{L?90OqH(dokb)A>u5#m7%*HANlQP*`$TY`@cp2D5DBv(9A z`S!=mi|1g#mY|Qs4xT9`Tsy&DwgO;->FP9M2s^wW^M)^!&q;^kxdlOJXgq}e-Hk*% z3gmjRxKp0gvZAg!3}bETq|nX|CzaooH^k+Oh?&*7c3;yw)QBq5_#oOd*9fnQOp|~i zp*K0HEz`8{Gs;)`4kQsFNV<-?wwdUsDf)No2`?F_?!Tydl$gd@w~MN z$ku2g?7R;CNvw`jkk=K#Bfo>8I6B9P0d?qiKK;mf5HJZhIb0qAu_ns1qxciAh+xOE z>}Bat-a8-6d-cX3@uj?u<9xlk6T~|ewI*!D6wD@?7J6Tv<+L00RCW*XdKN^-riJ>z zkrfMrag?Z`+;ixqkH6>}IV`}_ou-D;b|~&^krF*|lL~J3Jy=wfU^^I8iAQ7%cqK^q zTs?s#`)Sh0uOm8Zl>G>acF%V8I9_h-Nl|GP5IAZ!^MbDhA(1kRR!z(j1Y;(+x%~=Eglf1TCZfris z$D$ZN?mcn3VP~t2e<_*Xs~(ZuZ3(=FRs1{A2ao&wbv5pUqr=O5DADeOUPmn3iH`Us zc{Sn8>f0c^@hPLl%eMmfiuZ3$cle>#!&sf=Aw2TYfG2xl4+MZw1Irh%cm(%Yxo)f5 z=rW$S4E3Db-mSWJ&d7|>tJ-Iqp!@Ojd$V!tvEsAJd+LV)_wN40cTT?P@yPyA z00N-Q`bfksKlwHInF~hTj+gUMEx${g48pit&~iJ+>C65YD{`vF+|h1|PQfGzUTeBQ zG0i5@FBL4TLH?ep^N;9uBB1x$-UxAx;lth#6w4#4 z@{$IYT=>=2kzbadSz1bN2-fZ2uK(P$o&vy>xx~T&5K&7Ou)Q$a@z;@g!d6o}`ZsZa z@BXrYk2bUKWJvk$Un9FmZz|OS$>1&}8syraHS;JDnf*u9e|TTF|13J9mxiDXt~oM; z`jjsp7X`a739tQkoRl%@kJVKQSub0}81^m}@(G??HdP97uPISy=GQ(cW#=;InFN4L zP%Hto)hiTK)R&&;=(L2^9>lu*_!9n(LF8w0h{`yOv( z>5??jELMu%ymn94PAn))fWym~4h2Av6K0h802|66X{Z{Pk=(B`e?C}O?avIxWTmca z5Gc>^{FE40oZkAlc<^2FANj*6dY=mF|L2|2D?jY2?hW&UFdGtS|eMCv*s&Mo=&fPPZn%?7d5R2~k6NLOf{csf!RWWgqX@viE#> z%Ad?j5a^8^pJW3q+opETB)_@84jCg3+(s)7?1l$LhmuNVM7b|;fCJR9A)gqKPOXSf zF!bqRbRNg^j*uoY7$I(7r!`e6rPe~YQ%zPu8+c>sE|obTowLzVscyXWe zR=4n~dM)7>NYUc6BLj}(|KcuL$z~*5o2;#(?R_ARs(`OKiSS*mlQboTfo|VnkKKiF zFjj!#nG)^|U*#Jm2o138R{vEyF+r}FeXm#<76v|xXg$!=A@0t(c>P5H6<5$~#AZY0 zw@*j&1@S>TgMdnqN^EC09c3X*EH`3U=FS65%HhT_yQUlqDhGHyjsFaixJeY$V|Av0 zy6PCwf?tuD;1&-{k0TW{SecFNXAaCX^GcVC26b&dVlBZZe#zbIdlU2nRn4<;Iu!BI zXS%qHPB-5O1y#Ft5`RSg7~9@+Y+nmp zFVm$u#3Fu;9w5q#ti{50X&KQ;C*9=COM zpF-+b#GjM%b_!AFZ*hM`>ClOGOO&lA1G<#@p;xAYk^|B+Jsz|mySATVH>FR0LEzzO zU$}5_nE-2qg=Agv^A~;BoqnHxmUSNjURk~gzBT&(?RI}GBgZiB%B^MOavFU93h8&6 zGLu@*2mg+<0b7J}hO)E_psBM#^)Ajl@C&N!M&Pr58uBEH3PQuk&WW|br5$_ST|g1t zhphfp(E=cei{-`%RVd~d`WqE6D|VKAvRs77Q?LJU)JBp^`Bceg?P`HJ*L>imdgvbQ zt-+)yW`mT1cVPJE3q4G(vT{2Zr%Rw7Cb)jpc@`6=mc=2CAAL3Z27R?@Xpdy>4M;4T z1NXP7I((noLRSZ2iy%d?Z0p|ee=%$OxA<816-M>Y`eDFQx}k<76BGUlXp9A*V} z;u3(^^9fGJXk*v0=mJip&jp*Prdt3WEG&R@+H{u-IdzhY1SaMyWBYH*6CEFGH^U#m zKAnj?KOUdz8@hS2bmPbCHWA?c=1_Ls)lK$%PTOzE_2jX(fA?+6ik8n|={nJsy$XL0 z!Gc}#LS5Y0%ml z6>U!n8Eu;FiyL(3VC-+-4rd_voeEZt&NDKMB7Dv;qi{E?G5y|FWCV1?&a(32j=qB- z0}&Jb4|qeP?ZzrykqCQ4lPon5!=NX9y49Q?rdD#I;_dzPxdoGZjx75L|M^}!%L!mW z-KXi7*Q#8$#LV`U}=F}|GwBJ zQcw-nMc9(F&Y%(|=6Judr5V;v&4y;rrW8MvGoXHTIdpSxHs35vJ~T6p%jul^8!gDx z-+AkV_R?m{hC*FqGF~XBluRA#!ME{NDhF2e;`)&|THaF$r*(DN0L|0mkp%c8S{COi ze_{>PeI-fbUbd!beMjPrP}k9k_z1o2UU*_&_8CBMsNyWWC#YSo6FE(gAp4Tmt@v=M zLgp+&l?~xg$$O!1pAxR7QP|{om(;Z-!|r_HyBhf$RDe$fvm2m-Ip%GeJ68Z*KUK)J z30=__T)a&h%=R$#0Mh(#Fx0>+OxBRj7i44=5spk6|W~&#-u<1}9O!@~}G^8vm zU=}Lx8?Np!#~fNnw~2GocNK$=&n-2xV=m}@zl233>9DmBUhuY26@#}{scuc-RQ7iM zgXL#%SlY7}icC(lxP2oJVY@wQJaH5@Rlbz(WsL(5p|#)(9O^oo zczKpNNTvzi#Yh@lrVorilOupSetoJ!ECi3+%dm5+AymWBh&});>V!5YJ;%6IZ#c$p zahgJ^6^9iXD(L`!VO|E?ZRUa<)Aks}5CZudgx`-4?hlR@^-efSQKRbUA-bJH~oIOe@gui%_NKS(%` z?@pHqqE$2g8Nbiel%ru#8PLy)|NS>9q_lbGMPs93+opQxLUZMDxYaURh-Mr^0U90D zn0F_VDyt(#lXZuAbYE&UD8;P?PXE-rSIO-6!ppBY`*a3Cnm=r`KIw8&@F!jf_WKuO zvIpO&A1U;rc|LFb(nhna`YDEkzUD+}L)5H4S+sgM`eR2P*(;-zwiZ51_15Vsw0^l9 zPmNb=TeEu|?Sx}yu^yqnZHUS$#e22T32MA;-sk5UZ_3BrUvO#PzbrwX7UDKph&D|W zRccym%-;p%tYuEit6$RIZ0)7rrcg7_}=w`F1tVc(kd8EL-+2mjSC?ljs)K8m7us! zE(CyOmUC{$X8;M(sdh;(jNVVU`^?^OLYpTQ7>0 zsF=bhrxt>fp_^coY3If^d$#mJ>9$+E^5=ZOa0S zEoNC3TFlI7;TAJ9GgFJ1nVFfH(PCz@n3?(No4Ir5y?al*c=KmhcIC>d%;@MHoz+>j zQfJBKw1}MaHpp%(glt%(*ckrcogNI#kx$$cY zO)Qi#k2!`2c-+#;q%Qf8k@XJGR9pvqYtJytV<6W_eXxmyrU$&Xch!oCk}ODEP)4Lo z?oHPDtOs&NFdmU>;##aYSJDgU!i}ylhweI9pC$ntXkeB<6dHz3ZL8y>f$u=n%Bwx; zpCey8S_O3xxA< z?g2@6Y1JXz-j^|xdpPScy;9#~-%38Kh3$D9^t_}Us6S28(4D*4I^zo$+wXA>pY+ad zE{TwqKG9CtAVb04Yz|t~z-j?^I%b6E%5v8j@woz_Pkrd4%tjrjrmB`!OBjgqq9MvhG{0! z5YOhBhaT>O_?n-`%hJI2eC!TEyK9b^)E^lPqrI=PVchwXmJoRj{34vTw-28{z{V#< zhb3^q4$2%FEq(n09(uz)i54PTVF6%>cTQ}8Gj zzv@h89?m_%i)Y}(Dupf7yZ`+uVol-ETU-%tPk9QnOQ?VV88e!MX$pQ%P%hWXuhCu% zbXw8ME~c61{_uPJh*XLE#6 zf$tjt4eHnfmWs&K`>nmKc}7eekJcE2G3x9S%?R83&7b&n11}4gO$Rx`03U{-4$ah|qn8Sxiv6WZq+;qR7>l9FvkAL@L<))4&2AAF7pYuSVc zfWPH3kL6bZEi2=Pcy1pWG;oHnYZ2PbJb7M?ey9Q=GL=&+yza7JI`Y^<|BOD$g6Gog%k4UuE#6Xcz7La@SGh1LjV39Kqjud;cw@qB?_u@S^`$6h|FWa#$x*zwo-Xc?lItLfr?+^w7vkX*!bgr|8T^peU*D zh4-Qc4t2(1^?*FR_<@?v*uIhm6$TjafQ8G|O%_v}7UM)MebxZ_W1#!JQUR z4T+aOaZ3Bx{vaK_+|)O;4(czqI0m?rvbI>REpWkjikhU!k_)RP`giLCGmR?p31Yjy zAybfHB`TAmpR=Bg0fN1HXr=Lq0Y)LfNhnlK_L*zIm|2dAv9rr|n+rLdl0pGjYCz-r zZ*=nb>5Dg;FtL)t&EAWd2<#T)14bR=8|%1$49N46F!${2a{wx$`xFEuZO}z*b{_xO z$9QW^xQx^hQ{j6;pQ0Q6TXs7WkK3D8T8ev(fo33K9EywI8 zCusZLVaOezG4s>own2}z=!Zz%vL5T*IX_)MW=q|-Z+N}qjW?* z)z1gdboxs;Rm|n4unVa`pZk_6Zts{C1C}V5-XD-wnrJGHz-Dc@ccI~+G-tsEyORNI zz7hAKxfV+VWc(Z6)gGn@u~tL*hErIsD*i@J_qq)cHHYu+)wc6lw0m*hGV9TT@jzf2 z=3uGXP0+j%j^z960Ntj@f+Bm16~=2P#!Dwz>?MAhA}U%HBfby-yd9pX?^%}ZM5i&c zPy4j1U4ehGRLVARUDtHdv)i$P2x$_( zwcKWSkkJrnbd(5wXF+e@Ms5&X=mfJJS)=A`)&7)?rJ|R{X5Rg0Io}s^K?4&)a6%_# z=Q-#O&w}#eim?&Uo)ZY!$<;WTfhelq+g(|FhH#$$D-bFb15W~k#Nz64hem>qtkRVg zd&ex$6!e*e%w2O#<2@D7dSj3OSjpb$L@m}fUVgJpQWz@PdA~)3&Y&4yvgZ2?Sz2?r zMzkYyU2Zl;dHq@6R588UU^Va?N5!Z)|2KIlskYjBd(r?vg$}Qd5xr{=efpGPyD2&@ zD&5A*1#G;aGOcB0%r93>4r_GokXBHV=Kc3F5^F64(eKY(%-=x!O(Ar8rL9r-f)DI< zkCO*(WB^!3441j4R!{IVeQxBbYhQ5ZL1jIWlkJcD(aB7{?~Z9qoUYVeE>x;+VhZ{d zw7GVRRU|6_rZA(7LKy1$??^fCA+y@Dcizg`<^5yJmru*j*b#W?+mnAWqjeQlAgwHL zKsaP4etVy)ZSQZv5NockzW~^9s}tfzT&bA>!+aW=9J`noBtQlZ%+r@;QX`1%o&w&o z13r-gSUADEbVC>|3_si6@K*#=H?QMRya}3gJnaX7dhPMp3SXX0-g32z;VbOQV9qpA zp!dR|K$AiL5BnSSYt)?Eo{Yk@N6MpgL^gZFbQNBTKH?J#y0R>Q)_#Be+L}QhrGNfN^2XhXxm@fBacp|!ZU z7M}9mo|xxyDkMKl%*PR;wp}lJkN#^{OBaOc0FIc^8=6m;o)oUR8`yA$2#sjQxL=WA z!{_`J-130QW%jof6%th4A3MZm zh7r(O(%v`SN<-E0cnWAWpnO@vK9AVH@b9U%qBkiR?Bz8)l+}Fow?>qg$%ek<4y;_? z8zIM=AXwXN4|ojSm&W^DUrg%;k9D<#vtQVo-M;SZ$V-XCJ;Q|h7!t_Wf!1m@0Bjf` zI^8339C|?Ik!d`(Pw-&)oR3wzv_bi75O{zT4}5rS#;3)LSP}h*dizvHzHDlvy++j5 z@dhQezYch?A;Qz}G|OF3A?gy|&PBF=^8-J%aKsseaJyJ{6OLo_+fS0pi*r8UQ0HquO&2@l*9RV*=yTr!4No1Ln-zz^&d^ zUBjX`Yh&%|KjjPfT{RV+S!?*3lk1f*6xV@4KZ|Q%G~cA9QWksq4-rPqGSuiaE_@5y z#w4^VIQ^3iLn6<9X%#ITw@?&5eVx5RTBp?TfCb7bXp{CHy2ie`oD!OH16_;GCoI_M z2oE0OSjb0L5Wl3tL1pLd*^7*AIS=_P&R69@j@qn z|Jh1of%T9@zP-4Hh>qm+2Ex?We{dEzxcupdfhe^@H4otOCbr&l-}3}{VZ*e-adQ3b zKGevRl57$n6Y&d3EaouRwNpY}`@Kk7p-(&3)Xl_j<&iDKBAwHkUDURLyESn=uIAbz z5F#zRMWUPb+PodSz{tg`B6@Kd_#5Gm$FG6)>Eq9#@+PFa#0ac4Y(ND^P*>s{-bo;~c#_&AJ>)cLWB zx0qtl?QPNJGMmB}5_+AU;|#i?LaTS$Kz%c>PoNt7n^F@_Z>GnU7lm>|?AMh#b?=#R zUE#M33fKW+HCZ>r<`E=vjZ59X*Bo#=IN=Ny+idL|A5_Z_zEeqdo-+TrOHQ7eq$cRrqR z2g)(5NU|ub1?G4a+l#S)Nj-zL;ahonhCRgfSupZR8ns_Ua@vWswYR#?FB3LB^ei%l z4q$8NOEvUowh@qq*Nfg72Qm%%-`TYHUe6V9lr2IWuw9L=xxamRvsOkJ*1INJuKTb? zGC~X+)0pIiIe-WHZkkRjz6F6@ID@?(QNpR~`PWe8-akj1Uu&nPYYQz|`8KA+g);)A ze!$*7PpGkak9w5$#P3UGWpcZSH?Dk>x6kb;+qVz!1*&X?x*Sou{hKx^G!M5~Vr7Bwz6FGp%1z3~0;9r8a;Xjghv0%^@shlu(AMi!+fA}0tr6A%jsn&c(OMoD2j@MJ{% z86Oe_L0p_CXc7f6c3tRFF@X^cn-2?jUVfi=?)vWQMCDfAn&EJ^e7{;7XmswuT%cNU z4Y*4Y>cUYw0+9vZZI5?C_X4JZ8r*zvmk1cQUaeNV*gi9E#SRY^RbVr2Ma^sfv8BPP z)&RYz#leI_9jwI4Sc(${ppWPDr)7N)BzoEnON6+K5q$GEOn^)!is@CFTECAHG~LfYreOd5(4-NGw|S#$-CzQdu!s9km-62}R?;^O zQ@>)Id1C82-C~Gx23#X8s(yS!N0?aZjEEH!$!ikrr;AapqObv)*hDGaU5DIbF-7AZ zpeQUk`H@gluJzC{V*PBJPqOL>M1emJf4^sPi~dF=Rid6J_*SoW#?QeV+h@A6ke@pH z+h_A>kytXiMoW}WKq;e!;oN#Z#h)lUNq$z3kZ-azma{L6N@Hu=7GJ#J4LR&{GvTvt3vyi(3sd`!i)zRaY)Yn(W?+a&6q&V&KZi?=< zq!MVt{#u82q&;vL_2c+!-+<@Zkn;?{n$(9&*pNDRQv45hZu>&|#~0jg>P-HnR>OJ& zl%tHX&a2>_w+%}*RI+xx4A7fq0j-GUk}X6%$VWL*n#q5i6y=e<=oPh~S-9fuM5<_@ z9bdHIZR2XFnBT1{eKD_WLH2h#&12|aN4ldnqbpmce4q&#dpYi43_w}#w3TJdI*|!N zKZDDYj=UykPUxY!#$h;QC~T>_G=ME$vcC50ySibz8C(CR;7|e!ZX4(pdOC$ z6OH;=8`*Oymp=X{#;+6hyq1?O=7HVfJB7|K(X`Otn4Psg z%lD*QEudf`-E%AP^)j(?Ju36O`Pe>}!<&**>|dV7ZZK^#KY(w8yGkzWa*r;lbn8w48srE{~0i9*LyInEYGT1HRMGB_s+u4y!*P%nCkU?(4rTLkT@%yION z`VtYa8BfsVIa?2p6Ew$f`Cr8%fOg5&l{Xl6&bj!I1}EwR8s%Pw;0C-H2+SVs6&MH2>$PZo-G0*n6F_x3 ziNa(c*LUj)QWaIw@a|gOt%TdIAZUGSY{^Wdp&(WXmvXL72t!|p%kZP_5F*{uGUEB{HlMqdBSZORkreDIlYZgkH^J){=Jpf1tM;-%rI$1 z00GqlP{4J%LioVJ*6yl}_qkMHPrw8<+8L+eW=bS^5b-W{)TS5+6VLmNzA3Tc+oPLZGCqt!q^5ch@xpY!OCUon{N#u>g{ zb_?s)@lgQ*$0Z;P+PV7M=S(&!aI-^+gcx@Yn59!j2URB~T3Hs0`bpO5>H1ID)qPb_ zNHLe{`QUVXZQqE!n7;H1vU`D{tXa+Ge08R`#9K8-B+BsFJT18kEtSneLsK`bJ0&jb z7hL|?qxJJ@KAd~}k2s@b>Yd1;Ho0LmBSGPgyg4>b!Z?~cIExx2@%l_<)aYBAi_see zU>%V$g%IZgmne%>^$?D+lJr7&bkythL6&ZO2$s_>I8JGJ zjCa9nhh3ytVzd@|DZ_ydxz$Y&{&JE5*fcnC69fH%u`(@WgH)gBL2n;fNJ&yrPT{e& z%2s5SU|}0j;r=s_p7?5o1X(LnGhK4?+|h{PF>1aP_kebsH_GjLwg1;#`noa(nJoy3 z^9NZlK6I+~fyus`1?ml>`rJieU=$X!)el+>1~Vh>~?V(L!7b4Sk`oMv(2A^-11( zo}JP?(%@HS?cTX(WO=5NsZmP@5V#b=fGU#N5m>s5+#CFK4;7(XH+X@vB{Zl{f|4V# zb+F%&>#vRP{&xqcMMU08(%hp^&_6nEIKU!wHP5I>ZvRp zWC0aI%heHgx@kcV>&FDrUuq+NE@y>8gxobX zD6*O=u#m4I^Q_m_?=gJznBtd+>*3SIiok9b$Vpy0zOswR4I7r6Hg>*q{ni$IhXHj% zl&8{beiCzSbsjpYXh2bIw8(FUZBOUzHXbT0@id~bNN@{9hFpdcxVQdmCPhrLgmhJm z1mKURN+*`}_!PXdEIX8DF|%kl1j?b_ot3wB6170jvw-h}n3Y)9E3>S-)aUJd(#RtB~TPLngq{lr;Z`O?CoJC^%uKe zv8jQv%(D%~-}>yr?}W7zoT`3*t) zvDFW%MH^A7xNGX6&M^6eS2G9B4AtU}zhfeLpv)Ajp>Z8jt@_qB_(VV}a;dd@_BX9) zzpOfb58~V0A?Wb1f1P$_XvsZ9WQilxGMuiy!S<%8w=aSKl0ZDO;*ixTiY?}05nQOT z8I``p4hejZCG5&$#_9LQYPi$`@QrB<#l5H&m)1QM@ZMn#q0)BznUntt(gJE#F zJ3KW4M^C!)%upT3=tLV>4Ck|TnoQfbD%okzJ>PCc>hQo!`Oixd=Jet^ra5fIx%^IU z>`xKq1^9P>u&f42t^}_8;*5O_gnA8-Pt*Nz^{qhnX4sDFN&7%li;8+=t~hB+g#G-s zd3R3IobRnQTgUEblQx+9Ktx&22-A;)seJE)aJZmp=Zj$zEilcxHk&D~H81mh63K6> zV8eTG;Q*{9uUv_;jw3(VB7~XM>bO-`BMpRGL_H&*y?WkbKIaVqRe5Fgch|~Ke(Cxd zjy^mor&g74{`!{6acvIjG$}bPofNAYIKFZ=SrATgI!-&jxALPJlVxIQ_-;9^6!2w( zdCPTgTO#yH*bifOYW|k#r)!ZJ1rG>W)<@(~6^)TVM4^DwQxcinl<{TFA%&MMnS4|7 zFLW~yGQ!TRL;I$=qO?JBagZ;BBFLmuqSj&JGdg!ZBBjK_XET%rI!Yrc+W$og^J3u> z@u)d?*E~l1Vpf__SA#i-zy4&0ImX&aN3hUUgn1^JuauBx6;LU69?@Mo29-X-Q_5O~ z36f2i4=7+Jbf|O;a!_Hg<;kR-KQR%WlLP^no12Dp9Qu$mY|n$qnj%Y)NI6E9AYN|6gi8QUnhTeqQ)+@P1m4Sg1aZaG|vJd zFHNkLyXlIv2PmY1oMu9hp&skhji?@)GqVj$^}019p|_1b=eRX&Gs{05Z;}SFiCnY2%IvBPkLVa;Bbwb|Uf1??rUaWu=$tw&9L z2Qz$S*l(Cu&+MwyFS6lgPinTdm9c>gNz@m|JaomvhhO#E?LwWg&5j%g$o#4D5-U@< z*{s8Q8xcd)8bCX4=gRm)pKzUCz)F2OwaIBx=MP0^BLj|vy!Jxz>g8-*)}bgzV~Bg zsfCa9>%0Q<1m{dJxPym|MV%Dc;x`-sZ#uaCCq;s$)XCS3W6wpU$#1V3g&8CDj=Cl0 zaP~b%sy8h^->6wZOi$G6R0n{kS$zeJQ$(bT>B$-YPEy!7WhgZ#koRkHciEp3Zl+|% zi#o2ZY5mf5*k6!@2qk!4|?c}&8sXKBopK}cnE6MIDTabmws+4S* z+)3}T#6zp$z)??Qsaam8*3z6~dwLu+40tfWgL(~jj(KTyw=i^ znF%*z^k3^_TZ2kir&fJz#Evb4ML+I_A*`H)3E^_)KylGOp2v%W?2JWaIOD4|C5>0% z`aAm)EPj93eQzh*z=C(HP2N`N`Xf!7v8kjDa@utqGnb1?c?gccEWi!1q1=Mb0|IQy ziTlblhz@asp(jGKj~58J8bu-yf>>AAL_Dv{_*??Do|EIvpA5Hee@`o|lUqx(6y)7f z=39b9ifN2mg>ub4!5dkVa~Jx&u!4F$SKj?1QTrQ#*=$a7y^wN@6=7M!a z6LPEymBo19W57a&Qh9O{nbvPQ?{CxDp3gcUlD6yQ5nC%dzG#oV5NVPxk(ch!VTM0% z`cF!uZS5MiK0 zAj1TDRHSV=vgw|}!0Tl>l4mMaCYArPDW;F~%+Gx0Izpv9Ng|)1JV}4s3jP!ePF`He zc2jH3*fL$>;pZQ_vFv1#IUc~o{fjubMhE>uO;9}rE|J>XDlxIz#-(20qmmq(dnbg^ zm&$y#L>d7Y`^e;fn+C4L_?mN8al7x#(=q4JOIcuYjtH-Yh1M93n-k%749lJL4;(LQ z&!?=I>mvxG`>z}2@^Ua){tO78E)IppW(reHZJ}gNk$1ge3SBz5!I1XkH}cisViswN z4e#*(>5I-&bvfp!Be#ISEL;;$?-*7~N8R+O6Y>Lqd?{!Z6}5pk>`zT`8?pJpOmFfH zQf_eNkN0Xj_KaN}n{xNJUGkG{?Xi|7SwIfHU|>cL$Gn2#ioXkv_&Z-7z*j z5zKcL->lb%jTR}H8E_?n+%vQbv_NJ}Dx(iK!C8Ef8JZv7@6ti<*(PVRcB`7ubA*A+ zz#j!bP1UST6`q=@kN&P@;FHy#58O`Ro-D4;bBlMY`j zGsD!LMa{8x&T_lel`r`y#@n*q5VE+&{PphP%2T^4PqRzLSrK^cnFZL6+|G7a0l2X+iak{yt*! zc7~8{KgeK{obiRj>FcWV@r8;@_%!nc9#;FwxBW|; zc%RA2KcNN=_0GncA~-sEc2(ieX(n-Kzp;1)K>7p(!(?6B0KwZ^6uc%7MIO-7%b$r? zbr`{>>cBz(l*tphA4{tcjCMLt;FB-DXEgj<@MLEMYZ^t2JsPxjGQEi}7kyULJz8-g zz1Qua^;Iu-$Ybi2KbChi8|I7^Qli1fX(kk`jSK@E4_W1D{ibJqO9&RRn%E2L6|bhH z53lX(!{Vck00-=?${X{yrKJ^P3@eJ*>Qp8hNAdE|nDj}K_(c_|BS&!Nm$y)*;}zU* z9XyHmmCb8uj}uxH<2N;WE;h%TD8cF+{VU&j1eGQlINXF*_KhFVT1D3iuRE~MYuy%# z_Bogiyw*78t6A2Fcu8Q*Q z*P*ap$diQpP}x z@sqf}08hRK0aiO^Sv;BY8&3wE_g?8zYi~PNYVeB&0}Bgl%8p%@8588Ygs+e%4elMB z#iY+(=^8CJVd3VGCrJ&(@7u=9diUeD4ibB#w~qXYB$bU?Q)cM2yAwRA?=FsTyXdO- zV_^*(ga_1I(L7yeg8XkR*utc(7T%GKF8kOkfCITdRUDIiH3MtiwO&a_&{|7;IB6Xw z<_Q*aT}G5myMbHAFKLgB%G-ucym5Qw+N*lWlWfLAklTjpc8O9;9Z1scZGB~+l0T@B zZD90{t?(7$u%@_SD0Qvnb)Ki5%6WdQt0sDo+Fft$$m2A`ai+&XDP5nbuGO=+@Aq{G z(5?~Y7kjzv!0m|Nl&>`IjI2YdfWPeeq8YMA#ez@MpG415efLX-h1p>---TPQW~H{P z;{6_fD$Pjkbgzy3g;od)gBzjOwXOoEieuh+WGj4{uQeUnbCg5dZPIdgM+(oW)7LTm zgX+^-2&ZnuWZBk5_=Jz6l;ey&6bXKrk<4r#4O@aXKTRt3f?hP527y=I0;&Sb$L`mMyM8J0f|4$=sWL6`gh-5t>C<4E% zKXreiS69XDRny4J&(_|TMU^YDw&Wv4NnT>lH|Rb{G4Za2-r9mbb> z*D*SK9kt8w7(YLGvqQc-O4yxxfT%49JWeIz@yB!x=2&0wOjJQIx}N&MPPa3uCY5}xPN_U=B{+;c2FBi zD<4;%Gm>;aSw_QGCmZFsyQvEvs%ul)>d&%{Og#P?qxzd>b>*CbDCrJ z2OxPhUyzMFw3O;u7z<572< z{DaG|%y}^*AYAcWHRIz^S-78?vB+=$N7(zic72~`(V{c|x7K8Xd*0#!(uAkYY2_-^ zM0~m9K+A4vL$ktZ?cKP$6?4Dxv|%^J3XnRbJ>_49FL&znU_EUMq$zJr;vW3dj;`g- z=uu%9|B(WSXFjh9ky4|#8}4w4!%MVZ#6&ZYQfb(_2S)RdKQ1l6m$O{GQFN|)xM)AE zf{DFbTV8yAoP8pp63$p6eQ$reaNdvCu)V)pB9$v&_|qPkPE%+*Z1CnoybB4E01}@r zwRhjbw|7z-5gvvE<|E2%_BF}c@+((4PSV?b_x48S(uJ+eHri{|Ss&!*4m9YRD=kKP zwKVP%ohQchG!NSJ^YeiVq1bFRnaU-PV%|2hcMz*>843=nw{0 z%&{6;3=%CacR(Qlj3(dvorX^-fP}`0=w~^##(kWzc&?Ru*Rzvl&R-GfaJq7CBe-B% z9wVc`?}kO!lIL2bz!A3vZo^l$jrcW9stNyCER1rxAoYXjS>of5#YVezEM4e zZ5!maTei0kKOpk)C&YPP_S70py3(*}Ti_;^VeF7NXUZ#9VPaSH)JP}`)I4;Mn!ya@ z>jPF3_=8enLz?2bzQ?46d6@L4XESoLS371R(3#08F{cCXw|_e7ILL)@Ulo>(4<20K zAK8*!+=hBm*KZ2md91_%B@pt~d>z~21XXf?@mp}q5b1p7TBWPI`+Ir#+4*AK=Bw6k zK$lA}m*UmQa8DM~mNo!z(xq+?fZ@3x)6?SJ+pV$Ya)6IxGi>#DWW%x{=A{qYL0R zWh4_j{6|UokJ3H$pN@ekkq>j{f6SA3|1n4Y4+PRbh$c)b`GXu`e7FEI5{5`#)6d@HN-=0DVh@TB?uAum%Z-)LvQe3dT1IwSgJaiY+q{E zB06twk|}L30%0;dVs8BZyLT@-5^cF?k`JA0_9Nt2W7;l6LX^mV*LfXFr-1VLJeE%p z1r6qp2#kgNK~^Z9sYF(!C?ke;(D#tRe*kEpb zFCG#(-Jb-)XkR0(xY#gy)$3>xEGT*X`wz5#wI~PRCFBl3OK1~6Df^3-3Hvf({I!9t zMk6c}sHW6|AD~628Wq5Xk=CJOR}P_0$PU~ss{Vqk9L%k#gH$@D4F};2;0ToULmf*~ zP9*u#jS9hBPY!&MR}O-yO37paicXUeGT`x$Q#(TuK#9fg8^PaD>5 zs)w_#`V%Tzu5bQm;KT(Ek|tx0*_6@7rsaaB>LIql z^X;jt#O?+0_K9Ss$O8F-{3g+!naM8Y=WNgS=P#c7PM+)gqslI$*Vie)UfMld<$mCg zq~6zbssL-gH5t$>`fe^k(Wh{s*hyGMY$|?}I_PrY<0+ClxKsYlEWs*y7x~W$d`!|@ zvxrOrOJtDs{LMu$M-i?$9c1`$eBg>Mxwpp1%K?trTGBrSOE^osO0uwu@JxeJvd!asRkPJ+ z!5u`nWVGTU1G2s_qDk^IOq$n0%dPBPcQy!s#wPQE{rwh{6aS5EsoXcoQ$ z+BZ8G3DXNZ3@sot6*Ht2NKSBQeRyD1Yhg<T$&_Z49eM51wR(f;rpa>lV$q2psayY|d?v9adXf^tBLdCuC%A{p-dyTiu3 ziEL+4XwG=Yu>#ivE@$-`(_?xzbsGubrig#9D=?z15z)3~Xxzjxbo0m3NjdA#c9gRh z;b+?I2;{3k)*4D0py~$QkaxMU@s{*;BORLYs6F=c^m{a%jL)O%y6fYli#%}ZoUbdb zg`Zj6^HE%f*PV>#ZSZ43y0Edf5GTzROLuh5IEcQH{gE~UqV#Pogb$qYBvKuy643fB zApY?o;Wm{qjq8HEuQnzCl!1&tOW*R0>JMnUCokVzBInNNsFZRKoR=Dj1Z$WlCX>yd z3}p~iC$c6IVZrT*z9=WsOm%7;HNY2V8$SdQMzC%Ly;pL*(Y!Aqh)nU?qqktazG!|d zZ{2bfZ>;}LCyRNSz+=}SzkLR*i|2WMuhoHCD#do}h+UWT#Ti*TepJ86*9d0%#3H>f zIca8w6LAw*rX!~|iYe-<4bOe8ZZE{y?o)KH3jRJaw)w4Zd36F7snn%nOzwooEk0L) zMdPH+*=f^AI56=GVYQi$0!z^S`9{2&svE{aI79nQ^ksTc=!rg#J?$xAp||Spa@Sfg z{C;w79N%idg0bt?gTjE33RYTxkM{ny+)RNZ4D@=yd5o@iTC=IYI}MykS}CYfB<-u^ z%<5yfa3EFkv|VOq&=RyLwKj$Y;A=Y928bC4r5YwO*9QgsIk;Oq!x>1$-kI0P+x)u< z=E(Av)lJ2pyn-g)n;s9?#VqPDj@BVpU|kw~{z;!_nU;vmJk zZ2N`LNY(TgJRTUZpTczwQh&nLe27E4al{J{H#?z8Tg3cSdDCLH!+z&m_*&i5kETg` z37_cEW;tQ4l{TAo&)BDp{guUP>mrlGr#Q#kAS4ZUaU>K;c3jnW-0N(@h+3J~gy%kD zbrIFN_Ey&9oC>`{xrG7mj@M+6 zE8foeUY!HH0srA)`K)ZVY#D;c=@~vqV>N%>4T zaVC`lstMYKTZHRmF%F1~++Z4rQ(rW8({2ogPaasmye3RQI%K~26UQPDu%irD;>>kw zxJD+f{N27NxxU5_bpGYmR56>uT;;Fya7w3oxrTlW(~IZy?mAM;J8=+kdt^ot%rWrH zWx4~r+-Km42R;+8G}Pps88}#stcDZ6VFmdUFFiV*y z9N%MKOcRce@U@0V(W)(v&930_Pj%Mp7XQ!zKLxPn>ort3U9s4D*B0Hh%c$81wom0V zjSBMk?>#moJ8+7QC#oJo!385E8Lz-9j9c-ZOZ62>nTHIU6DvQ zT6v<6zOl*;wV8vlATV-pB(eIGbCQsSN+YYeKT02(z)%HNEfKo_MJ5Z0zE$ zR9p$21bSQQa0n*J3veAAh@A0loJ>^5v4RRVynU10C6VUxWogR$o@H8bCy(k1j-&qw z$@yCa#(dXfNmZPMzf`q9(jnXtQMEi5ee(1xyxSm?0;3h!x!LQ6rSi45`7;^7w?~Tb zCus%cfMW+7(0r7ly33#ubUuN*g@^UKw^P{m0pWihYp^k7@bK;SEv;Nw#e|mg;rLPz zf#&sEm?=m{L&)c8sC--St8lY4*2UL$6;oNt1n2oE^%EYoNnos5?BA(<`^=_dfLD04 zhfE<;{^0lkm|0DPPya~d@I(LuJ{)nw2_CteZ%ZLoO!wHj^p#dH>kXRq1NJElA!VN4&Nmv%hRb}I?rWoJHtuAaE^^S6K9Rs zfSQkNab=G{`N0YCJ)+Tjk3r`nU8qGdXT$WywBxrC+ws1C>Z=Bi#o2&GB7KXMI=@3T z)TJu)Rv~TG~ z02LUOQ9HyIHkdj(vCm-Y zA$>-v@BY5Y(WpCM(#LRY7Ur;SQQ1e5n!!k;!#V3T20AgfbO6#8uT9aGbb;p9_m;(5 zrMCyUGTw&0ghdmOic?=gXK*J)1FP9HS9QtvdZcDixwFvrcr(h&XW~*~S4bfyqb8i$^l^=sz;<__S$=m zQQvnFoJ(L)6p&ET!~X6^nafF_;69)`k0XGXiz%{sZ8Iv;eXwCsY4*!gM?CuD9aTsk zTtR?In(7~p;M+-;1NYfaOoHfH!Uz1b7#e;lSsxU^Ef^X;HPT4=(!7Z|=Ed%Dw1Z(t zBec1FwjcbzUl_#7`ofS(KQ2v2$-2A4kj!Xv{lE=@IOR}G;&~n6;M))WU@*hDst=T+ z>=GG%zD&;t#qUR>`$7N9EtcCyl9uZpC;ScjKbqh%R*^@taHNL+Y#jfyQBSj5dI$fH zn%MbAI}`)F!At5&K|UNazU>^^AA@9nA}D_|&O}O{e%VBX+{O6H9|{Qi+TQr^{y@YQ zf-01RLX6JUVS`|EgbIwtaMlMWq@>5wt|4R2V)gm^>9ej+3qx|Fjnlhtc|G8wFy_R4 zTU?y7|6G^ThsTiBFGEBQhHPq_Be?r(@8j11(T-6jhdzldg-iys2S+llNS{^&nV4K4 zIX4&ymFt6+c6Le-8z5#c;*`Yu5BWocC5*&6GR_G{!j;b;_?H+ED+1@hI3*kmPoBIZ zBY-PeCzInlT>Iam-M>UJG?!Uv5oC+FgDiR%<>f6XTR-?Qoc$qisnG0qi)L?z6ISvwGddo9ZKCQ&ukgCY)?>Lw!xvhn{-uil{u zi>r(P&yjIfFxoN(f3S`{ZOAa|(^R|`W6mT`_hbAYri2JXkY#MRH&17RA|4@O`( z#*ge-fQ&8-URVYb#M3eriuEKT0w!5EIe;hzo9inhPcj*4d6N_1IXlIROjSqchtzwZ zjS?SxlZ)M6l#TDeI4KBY0h`@N%Z?#Loa$+xi_Y{x+6$3loE=UOhan7^TO^V5f4U3& z6U9f-)&K3U82rC;ESdk`IaV8;s7o*F`^xEI(0iPU3`N3+Z z`Z(*V5G`PJp+aSJF$1b`aKp4wN~M#d{}1^8H#+%$f*un8$8q5QZ=9n&@2^Jd&A4}S zudd5SigR+%mRd3M2ZIWgjc+G2b!Qag^B4&uO8Va|1n|^k7+3S9WcSqF@&KU}*OPJUc0G%LQbJM>uIBURCDRe#HNrV6 z0n>i(jMnFfhu>VYJh^ofFtG=A&d@|rML22HmkH@Z$P?_x<8*b5 z-pv9NMK>$)=B%Hjev$0)Jea3C<+Ijr4PO>K=P9#49&_q-q9let;d^2+n8{wYo$Glv z&o^7M84lE?z9{LfqjfmxtOi1wD+AwIZV!w(&h~D`>Ki&6+UH?J9A{JPm^T^rk;VsH zIv-QtA;(`o_G7!d%st6-VKQmJ)tSp|lL1lEI| z*Y7U3OJ4JinPSGDehU9Sn9`r84O`Bo)e__t|O{Kn_7f%fg^-N09{ z&K8u~g|T#Itss{@{aGjOz54ESazeUii{|^V+V_Q5`6yfK`}L%u#63pX0nTVO$A!9w zd#CajHP=y`^Tm+T>h=bk5ulB^a-i*Dr}39oJNmQx-=0>hAhxX~)N`Em=VQDwCF!Lc z+eQ=wcRKFVLZn~oO?q7|8>r&ZTGkC0x-z34?Xj*FF}lMZv5+UPr6|cTXRw0M`K*)q z`Q>BLTOD{{g(a~DYaL^0?H;2g8M5XYuf2n2D`Ha)*0DO3#G;q7r9k=zDVbR$q6N&l z{o{QQLi{$H>7ymxrfKbTbh}e1N6a|F*qSPN2v%I!xRTiMoohb3>$y$4AdV&0iO2n- z#+G@Y)-#&ygW zt?l#mW}ccan%(nw^M==EiJ>2lZaaVTtKy3Zr8_InPZOKF5862Yg{k6yYtO}xlg>>P z#-LemJ=|lQsDB`!%{?-@?mlc#;rT4D-7{jwi6_&|V?#uzhV33-lQcjKNZPCG98|LEoZ6(% zs@z*nol>3UQ=Y$U{Il+UFCO3N(fpnJ)uYwToBbFlRrfyDwbAVNi_~%NT(_X+(0aA> z_jZR9Czq>Q`+FYwq#$379&?@YpPZrUAM|Vc=C?VjOB7_?^|?`h_a3pUZL5dYpB|v@ zer08^&!>c>C!w!UDIdU!coa4PDkk__aZu} zLP3h+eX5sq-*U6A))Q_-`SI(t)tn;8e5aLegFLdx^u#x_-Rsp5fu08*#vZzepUjIj z$Df%azhi+}0vr^CPOa-1Y4bn`b(tT8L;aAXu$j<*JRFYXwar}`yD9-$L_RJ-Amt#o zg&|v7gl{84uG}0V4<8}PKj#*;?xrKOxoB5?e>ZY?UhS5Icf&~9Q7iPPzUinng1sr@ znul8Nz8ADuehIoK*F{gug^1QHr1<-`kkQ&wH6x;sKH4lJ`FilSIT|~MYk}!&2Q=7P zecF|O!!D>yOwO7kok!6i*@_{Vo2Sr=JSz#V+GkPWCxN_+1}>t#o{>eA)I`**QlWtB zP$qi8Y4I`D-Bi?bc3tFyfIFyTx!rVL{%SN<{b2~N(=&96w6Efe=oS=Y%blZhI?)d! zCuxV0`_TKk!3p`GOv$=v?Q)d7OoqX##n==F~{@6wje|ZL`E(okN7CH|@ zR$5QzMn%FJRMLOQBLh6XxTN=2eT&*VA(O|uQ@%;1~xCLu29_F>DL3PM)J!IVGb8TBGxMqq5L%z7n zR~u%BTSKMlrlBz9F6Au6u_H8S1B9DPb7GTYZP2NG<7qF2mxs=z9$F zk{#|d6br3kYJN%R0mD0)E1AyH&|&Jj!iZ^rk15l+hFh7^%eFDi^s`{v)jldBVafDI zwNZK3j;gX@RHFW3*|Pn=b|#)XmkSdJytq^G zn}d~4^L+8l`9(Xk|FqA4{dp(!cfoJ2FZ%Q0cLd&FxG>r$+*p|`!c>wxhovY}0WyJU zx27aZGSfy)!k=3CRmaAS%_G2+@M#?ZmXfUYvCqf)Pj;O@kF)#l)*rv_SR7;fS7x2Z zXUEzFCOm(w{cF#XED5ajBw3Qjo%@)Czbtv&ek3QXCpqbPk58C?cWk`Cg#Aq1*SFfq zN{Wakvl~r_3;U6OSq4{9l%Ul3Wz38rHHiMDtz9Z|18~2tZweFL3sTR_-wUTi!GjtF zz1wD4a3=8HzJ4MVI=vP3&uzw_ljp9NRVoI}L#^{Z+>N7T$VbDl_RUu~Ja)s{FZ^eE7SZVV+ z+~MW1KK;0Q^D-|n^k)7(hmZeG?rk4+C|36uhVhxX%NYLVHREkFE^m6tHgDW3RgJ6Y z_&&HJ^tZO-`)oNf$lDsF%E`G#G=d-bZIn@5TUjibZ7b zV!)XrJ3Q5Yrw}?DY?@|b5EzDi97aa=!SO?tC#aDYa9>bIEOeG3l-oG> zAspI}W7M3p(U}PT(x$NsRAfN;R^IPBl;*(oB=2$s4gwrcKT$5et{(lB(@2&&kcJL4 zMUqpK+L7(I9L0Ky-hTCW%>aeF=i9nABAYyf_euUSkg{|KkyByY>TdXf;}5OUPmHx1M-h0vs_|TB*=4*=)w8fZ>WSB-MS{L* z-uU~`xqZb_M*Y}oV8DD|cKn;(yQ8O+j<99R_CF^(pZ#yjXC*&5HZOTn`6%JjIKo%r z`d)eOWb@K*eLgW?KR(GgC+5}T^YZ__yp^4Q&wihLR=s7^gMmuX4DZ`ZIP~F4%u0P; zfqP)bhoF8u4wIbzOqWUIry7HKsRJAExOL2H+x3g#bTH=>6M8<31XoxZ=B7ZZ&z@(r zSpkq!VK|#M)dPs`ULGa&j(<5%J*@vS(KJN>^5;#fSQzvMT@__^O~xw{?Xk61J|bFw ziCF3AQHX=(-~8YGZvX%Q|NmoPKm`SpbBe-yVr127_L6MAdqZsx6EtLr2{3dcIG!tTWwE|KY#VyO z?!wCV0c{@-*xi=on)Ar;pxrHAO$A=}gLYk_hj&~IK4|A*+5W;J`kOUOrPdsRMz%NDnVbVdn+j~#jOiey$ClmAL^e!O1tRwX7ZXo@^KL$*HrV$MS3B8vG zXaPlk0cO(tAqeHK0^;K0(xhSrB#@MtoSj~jUz(Q^kXV$MTg*^cRh*HTR)SDeoSc}G znwFScl3xT7Oe)RE_RK>z11R8MT7nQLN-fUMDJ{v&&x0BYG$Oe)ClMq9F#{N$!KFz- z`K9R@a4m_s1v#kmZT+i!i4sBVQrMkOFg@fYnX0LP27Yf{T$qRm=(Y4X27Z g9u&DJ7*R29PuuS7l@%PH%P~GC3eIGdeRhIyE&QGB7eTkx?U&U$=sxpLLoDizcFKE zp2(zI(rO*Shaodp+;7-{<%4XYXg+Y*bWK zHHT=a7$}s9GH9s&cj%wSV^Ny5ZWn+2A{GJ8X|9EWf z+1i`i{muU+pQZD(U|WJh(!@bNuct>0p{|A720@DIrU^wYn2Dk?V0h^D3bztaDY zc{(cAKY0(zu(h?nWBb?7?id=Gnb=s`KfFtsvbHt7Z~UibRJKNj=J$V$4UOz9ZEUF? z-Z8vy^B3shoqzm+qMxO?z1@Awhm;u##K_*<@DI+=++5rKj+UjpiRo`KLklbOd;d6{ z&3#Bw{k;!{|HD3LC~vfX;!gZGa9jSISIw=6oga9D{>{4oR$uCWiTi84f3wd8jT`On zjB3%p#h3DVebOvVfK7jV4b^|o&$j%@b5aJy{f6Q;nC++*M<*EM{d8>W@xn7IZf7t4uc0EmzciNGof`4KMxF}r> zEy*Wvj(1J3j_3+{6mEB$2QY0r_*N^!3(C8H9`kqeg@@to<#m78{DEID8Li3&!nD7< zVXRLu)R_yV7B7ZCygD1X+b|65C4L;zMmQ;{J0tu;&dRTNNn6@5O-6$2yr zi4wP;#zJAJpB3g?90c0h7DOAo023X9#ln^ZNQxDVo8nD^t^V8<4&6!c*ok$F&Mz4z z&1lv`AqBK$wa<{7oeGB(@V6C=(jew=zk4fBI?(a8rd-9QgEd=C-AC^X z7+)_W*(SH+%&lHNK`fyRu+C&)M%(M;4eR+hnzP zzJ`Gilh!LIvq8z@#^=eoY{;|GWVO$H1AC3mNzmTP0Y883lNupAb7ASMl-0hrT#$|p zZPGiF2d12?Loedtn z!^*jGPy~O5>DAS4u|*KIS03B=y$ISP3UO?j#X!d%&rtJOt9)uVN1bH-}kPHco~#*(%1)jm%$emXRkhd z83@%ZN9<83hifNnGK`|jAvo`Ian?dPG>Vus&Ru_c2Wv_AffHHpK$_>qlq-D&+z;vh z(Qvy061Qk>VXLTsP3!3Hs)Vg8%3|?0m7r)-BTsCvgvT@T7sW)YAootub!*QmAP-BL zmrhi{9_=j5hI}<>wF*5y7g-H{XA@sMpR0z6v909uDMwD%)}4J)HR@qFCzq9&QL5w_Hzu4~|BuS{vQ(Av6&;oI+Ix zIU}2%PzO!Bu78@oUI!%YXxrz0b+8fC_e+1Oqz-u6I6Zqwb#RpF^43S3AKIRr<7NnS}0caTvxpj6o!al`>q-B*xkaHOkiL-A6opSDcl-dYZOS*CdY$H6A z4y*NAZ-k78*z=-?nxHm|wY%+V6O2w?xMtDs3gAzg$9FC(|xW>^8 z=Lf)PU7;E7Zg-|lF>3}ljdFkGm}Y;7^l~= z>wq&4<_+;DJHQ}Aa>nz12RtH}+lWMUKsaC4O6!LX$hr2>!*ad@nj?i+w)1zwW-=^R z?}QDuMBZyooxpo>G<7Yr6OMoR@El6+?}SW4@oNG!SSa2&&$q~pg%2-G3H6d#=sM|> z5p@m=6GQ0_?i*m?v*QPelXh5G*-4z=>W>AcLh6$7WGw8|;&;j`#e(2B1RkAOkP0-Q z)tSTs9KtjnSi^!^%jU^|1l zFC33weK*_?+!(ty+6{mAYxkxcTIdFcTc?cIxAcJL+BGpOe-DJlJ)TWI-UEqp(FL}b zdf?4Kv4irx9w@i(li!8ufyV8N>reQQb#P5d(1I ziQTE#>;X{W4x=)!8vvc+{0|Dl17N6w^<|$M0L%GVH9X@WI0v(Cd&@Tn&m<1@c^(~v z=(YCGZWgYcHgcmK-cL8#5hAh!k&LWffQs~0Z^VT3@mu&f${88;f~Gkt@w zS>-uD4+4LEC6tqBhJf?>O_ySxA=vj5qv$I&1QJnk4A)eK;N;Qr7V(=ypxQGSxMnv5 zde+NYo&G~`mz`@@a>@``zmXlWDH{UUi`t1w*dYj*wl?DWI0Tg5MR;m$2r_>s{9!1n zYtQu;ABOjapKT2khoNhO`Gn-vVHkfQx=Lj=44Z#dy4!mgehwLXro9*j#z$VN4u!+8 zgDY*TYU?lv6u!su5QafgYcoQI;ncT{E0ydca50c?Z_vRJxbnME8G(D7?x!;Xwx&<+ z)0vHcJHuw@G6F$qC37#MM<8CYzvyx92)x2AKEBv60;Mk7(cZBUsNW+^^L1eay2~#& z)G&XK0`7|Cv(WvcFuU~p(%loI@GCr<^O(jcY>{d0XEYuKuCD3WA7M>H9HEXUdb{a=*PfbaI?^l!PDCDcP27p5PWOR zRqnzVB&_i&u^5g)cAPxZnBy3f$z5&B2^@ceh5^T5xAZaSvyar#su%-Gao`r}8H2C+ zJ)_^J$6!rkKBDipKu-IGb_M zpv#gg@EeC4DNSonlg8n}@5C_>==oAa3Y#7)3&^A=11>nptl zvE~WbtzuuYIxztvr3r{TGqexOfP>`VDQY=R9Ar)`6O;GiAXkF1fmsv>#m-!r zwz4>&B*AACYd{_EQFG;sIB0pGbSZyF4+mXk+ETmj;9!u+h||pi2NU`>i&KwqK+bUQ z*Yw1}=kLL#~xgGgLag|@`OAdu1Zx*vNF^A%9v;Cw>?Yr6+%G9HXDaL$!|?_rp0nH1t1N>0iY|`{wa65unE|rYdtg z0fy@`leX<60G_kd#N9n9MFdYL;X;j5M0nP6EV5LE2q8S@9_`mA zLbR#wwP!bpkWg~>)WUy#B4jYw@!hZ|!W-SERP}B|C`=0_91b8t`9kuC$S5MzD&}Ww zq!6L$_eF&W9k|X1U1db*lbleKuP4Ho%dA8ymI%c5HIA*LM3~vbx?uN_2yswC7qmpzj|e32K4zha z|3ZT2e*`#$_xgV`yrm<<@9Q838Gc{Oc*&4iTbBLhAQ^HvngjKu$xw7_vtuShMb1Yp zk@IAzTU(M1(IG>N8pE!YTV&{p+xhd385ss|u%fEFbM zlVSeg9V5#$GOXBJD-Y(9fnp5dGw;a2xFdK=Rs$K>j1qr8adwkoM?p@z(-;|esjG5H zQ)Cdh+#aI7NCuI_QQP7TGDyyT(%r{03C9(F9rxv$1Qfu$dv54DWwTVKKuXG;xW~+&)F=&vupW4Svu74%sDB;hbfV=_UX6$$AF7m-hNHCmsw} z9`xDXF0_Jm9+_!RVFQ>a)r)Fzn*b*32-oxvOTcb7aJeO61q#9fFkgEg9N9nyj#A8#{DCVhWs5`TO^dFCpp(xw+ASziT>tCd~4 z8M+YnDOsA#a2bp*UfKO|T?qtxEE_P)@-XOs)+YOwG=#lu!Q^Eg0bh}bf|OKQ$f;*i z2>N;)__ZsF*mdOKb3-BZQ?V0pt-zyck>MyXcb=VfpgRI-`)|%}2QiR-nP$GbMi8Fa z&>erXGTRHTI@wQhlXrq?YGKY%26mXu-cYv~qzA(8%r-M+D)3X%FFlpDh8&oJQzZ~J zGziQTd5AE;peMiY$7mMttZWZBUdj$i(kIPYt2sa*H$nBlV-BFBxzqKspAAfBCsxLV zw!+<;XEcM|wgA>!qAquX0UD!lD$E*m;CX*mK1pC3HPD2<+>&p*f(Q~@Vp#6Yqp5fI zT)g@xQI&UWrcLt*3bc2*aJ0N1#RrSL_hcPI2^$MKygek;q%D~ru{48xC-k@-PtPJ> z=g(8*&@X6*+U$68)HJ$VVb_-{MM58>E-^j((aVXrSGTN$c9K{UX3E(FUBc|sZrHsn`C}2W^#U!{J#it(b zGN{8MIls;mhq|$7$z-p_dQTTJdd>N2F`yfT-qLM|*wT&62;+=lv{>}bq13Zrpcw_z z>@*5esY55+)$B!-Do~DCC20?J2@-#2(cn4ur5LHIm%ghoD@U@D(TZ_Q)u>nOR^v|P zT2wh|o$5GLi`JQg^NLT_q8a_TXJ!S}NLcjLrOvPlv>zA$oNGrpGL}xrzn@Zygp*SB zRryNM7kUQ=LzYss!)|<6*GLIcA1W6AbhrdvTN0-~G+l(Ye0Z-Te4-E)XJdaNsmuzH zwqc_Bv7S8S>~-e4_@!LLl*T;9H2nst?V(qEr1AzuXF42VV|jyK&m1BJwPhnd)~}7a zC>ymzDF5O=^BReC*H~9izCvuTd#js`GEqim){X7U8K{5Xz%d_eIvQRV3dU2VBP^z$ zaojNtH8Fewy&XVCsn4+4K~&`2FS5Gy?^1rbVvXpNf8j1&~U{ zQjp}{;_#}YDQNfkmNUH6-R*^3xd9!#{aGl@ZM#|zoCXQEMhtKs69 zNHiLz>Zk}1jY3IkTLXV`enlWhi{o3J-i0H5g_}Q*1cf2~hu@jKUW6j!@DcwFs!-&& zXywCS6@qSxMTs)ih9LVq>iw5VA!v5tL7wM&2r69jH!u4Zf|TN}D68g$pc<_`j%=zS z$n!fZQtJvv=Wb43A210dp>;~h51s2!{mD$_hZN^B$ovDo=nBWVPfYK8QJ`^jT~)d-qUG5* z*dODIRK+7k&nEbymRrDnqtq9raR{XGeDp-wm&AL`a6gs*=0MbWcL2fcp+ebMIzt`Is-3Y}5fG2!lm zyjzOp>~Y@6G;CHoSH>F|n=A`o_4Y!CE+6=${?QZR*kjN67<-~YX3w(+w|S!c3paD< zXP=@4V~jQb>Qkh3Vw23wd%T4~9}G{Vnzj&4XS@dMCE~VUQQP{3fvX(Lpb?b?)RL^wJaY z@K33W@OdJ+$WDSm^iy=s*!9Ap{ZG+Nz8fd^)_9;3-t&Uj9(kZ|!F=~k&U>IA?q8#_ zr94o9=p&J3F%OiUz*~6ns0WJdapLPy^FXu?ma~5+9(thn@q4BAM0g;ndrbTIDm;+) zM{~x4F%J}NUly$U-2;Vvejgk}^%Thpddv%Nc%V0DGQQi)dmuj@<850B(_Jm!r?L)ik;x z)!bjrGgEFTZSdoTtsL&CH_hl`pPW0I7LbsXHFQS|XXxJfySk%cx!|Jp=kBO@p5?8P zk2{i8Sz6ipz#VC&#JYr>a7V6JFHA}NbVGk_9$dX^Z{5%#P*f?kazmce2?49JZfN*9 zX*rkH4Y7u&)gE}~is+z;j>*dvt-p|5RKMqn7EfQl?QP(Sv=mxpv@KoHGb@|&jTl#i zdp&huZ_pJT(To4W%0bch`HgSHBW`GWR-(_!1qDd@SN=qFK=k(Ms# zvgj3VzW^6>0Ehi*nC^mNG~Y3ADRO^7vtbK*<7E_l%#l7G3NN7=9)9?h3kuzDQoSSE z1wDo!KtLd z9A|V+zd}GR!Wji_!SwKZIitnm9Xn4sJ0m1`Gw|gTXGCLAydgoMhY#^RHGhBXjI?Ar z3@$o4BOCR!wl-U5@%NoQ#qps;&HK>uNbt$(j-}ofI-h9i2gDC z7$mXm=tOG8AiqaLAqQ$P=m&p~h2f!M47!qUB;)!TgIYA~#^;hT=$wqehi$PK^f_Y7 zNO>3rjs7$X~9GYk^n%YsR{jX_c_ zUqg8HFi6$D@>aAO1_cD9i&UJ&Ad>oqSdu&jxja(9>PlhIV{Pe4YaxFMUy25xAN-RB*_*QmB64-ne=v^dA5K0RR8A znRzr;(bvZjk}0WVC`pr`8$*AGj{dhPcL@Q~yzJAoTms}vF7l?N5x}{BU#)*EX*Z{| z-VP=p^uebc&YlDu4dwgGL=d2{qtv1YE2DiarZaQ^Fqy zl8(Ys#?0h%Ot|}58%UnIBF@-LKL0ztUCge}_OS5${d_w4{>aI@waQbZy<5GroLryr z*EK5KF{Mx6+kl(x320wKHr30ZF=F6nl9{zdrr> zBAAzeT&1$eem(+Z_H4>*;3t6brnSI50Rp-M#D^zHUf6ZL%7BcMe*v0G9?up6A{7(w zng|jw%TNEpUxh*?c+m zDhCKKR(4@2QXpVqha25{GCn_BtE;6e5fE`W+pQA`5Ht2Sv{WWwjBS3eqZ$EQ@9cD= zY7p@9-QHSTGQLADe{v3QI!yr97is68C17salBP}SK+VD`y^GYvNc^YgLZog)LbaL3 zt`NX~t1G&P)R*-pAG0cB0t_=h8@(baZ(V2GLEi7#UG=A))LqQ^DN99?S2MhQXUTcv zf`V!bq)i!1e|(A5>4&TxoSpC8kI+4TQ)e`UPoe~oAUKjUY~feimO zehqmYCdU&S($$CU@8M9mj+XWwdps)eSGSz%gu0}~U+;=6>vq1;PV&Hlmf!myIeX)s zkcNWt3y)Ape>V;m<@|8sk)qKPuK+B+C6bUk8;H>-IY(QJg3(6m*UoPrLr`n&$PKnb zVJQB+E>$!o9O;{LzNqj-VsGX%sVi^QH zTd{52bQvFHcBt>#J3bC#@QE`KNzz!C^Z>Hnu67Zj8ZVL z)cZ#Irc_*d?cj6hV=9`*S*O;zzr@Z!(>ncwX{hRY>C4!UG<c#;Dz)lz zI{KVFf2b9>F$3pRq%F7BXQ0fJplaPCuki*qNB7g{*BJBAYl1fa8rvBd79`JRA{#+r zy_=qi$}@BP1#7bKzPXho{q-!&png86QJRIL7fm$%1>T@Q+t8&B+c&7KdGYp^mN)4A zq21xy?rbbNblUHwcQ&qU(lj+2C3dT2C}0j6e?2cLaek76;ae1&s($8RLumF8=b2n& z)R_XT5;Lv( ze{t#^{*4{(luvz!GJKcDotO&oW?;v!$}5HVY|WW9oP~wB;vJn$MaaIOCJ}92gv!>X ziqwW8d@!kaLPES4Gp^=bv~n-T(VjiG@&}7?^Vw9&vSJBp*NHqn8dicnD$kxi{!xO1 z{p@;XJ4;~^ikctk@Biv6MN?L!i)JlD*P|3~lrO^= z*SB2M>t*=1crL;-xD4ACWVcC_mEpJjRw)frWyp3neXrH#_qZeD^VWQZ-$MoKnNGQkZO&32;Tr5Z0*@(N3eadm!f4}{Y zbY3~~)pNVI(aLcj%W3xe+#m3?>f;cB!yoXLbM5Am+aJ)gaP{-6Q6Dh=m+Efjnh#hc z=bDo;_W`>sOO#HERNze7V#W6}6}Wan;Z%rI1&Z&m>p1YL0@aMN4SRbk@XFI4V~#A9 zNOVhC2=A}Nu#LCoD~u~K>r9H%f6c&3YRN=V--b_fSLd!WFg^{Kzd?*uK=CM?TNq3r#iSMe$vQ&CgUZg8oajNVO6|&4LWNTUp!KatidOb z=GRYD)?jXxT(s|O4K}Z`7LgXN#TE6oYSrRu$`?61hg#g8FJ8p|vKEzQP1K6JYVo{u zVuKNL9p1Y&tivQ%hknU|1Ib2pm`Ym_N*z`RMNWMytixeavnrnp0Rpn~vp1j!0e|Ey z(}r@46I<<$wV_J~|ePdgS#3)Cd3Xkno+mYPlGnyCMag^0= zqo8#=&LoF+fAelfI`!zLRoo^)Vh z#`ear%nr;vsT_Qxx&w?7#*eCjs`k4(t()Aya54eyS);$k^VAKYxvTO}$ewfTM9Ds#`_-YHC~tr7(37-IRObz*yH(za=W;VYDD`xr z(YYq?wLd!1VtPt*cy$*#1aPc-BiMxxrFONu@9V;d`s0zhnq9aO&0@w~_=d%M+ron` zEK5ontqbVFkE#_ZPhWIl?|%sOwncFlPC7Hl9BJ>ul`7Bur3;yguz<$UjocRv9dr4* zaqDl2vbS_MN`*%;Ur_JHgZm0sQi~9c>m0rBQ5`O1;@$L=#n~dhY=)%0xx%8rcV&0Dz5xp3# z+>!GjqZd<#W*?lW?0?04$MvwKzZWYu%P@SK>BW|U)0L&HeK@3V@i1sxA5P6ZK6OpL z5C4Ruaqrja!!@#X9ji_Hkf(X#NjIerMJ!k@zYOj}84l6y4yk>JFV#MsD(gedW7l2^ zb@k!Dv^CX-H$38GKQQ&9&GwZ--;Zu(1Mf^_`!V41Unhm*{eKwqS3s4`s2|g!6j}Q1 z`thy8`TBIfeyr@Y3vhnkkL@;L=d=s^kt`0pBCY-SEwi=n=R`mL)tZj2q8mWADX#00 zn+A~2caONa)Bx_3IQ8|A+5pN{-^%2?G=Rz`k8Fml2T+SKRUyk~058Q?|8_I2&`}@ZmwM2`Uog z)*HkQ={_>D29fr0At}dw5T|ePnR`VI;y?Fh4I)R1?u0f@29^u#yQOww z2y4w$Po?V)Ve{Lw(wnXhVHb-rxAW~G9MrR(9lt+>qe(6uXWWPI%g=!P0{#NZHazr$8T z|9J={$bYJ7HaCRQ{}SCW9=NDrafo9WAywndbKYT8{jDdF|!? zhr{Tz_Qz_`uwe`^q?`1Q8^*9#YwLfd4dc^A!GCn4{9#NyAr(+tK8&ePl&obNhcR

W4xOnO(tDyb}u8Lv&>S;WJtY6nRe!DY* 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

+MHkPbQU@ z2Ep-+$r~P{LyfqY{Er{wN2W2SxqVN^p0xS}$NarQFOyFMfTK6N+%a7smM<}U--x)l z)`D-p5n1T|d>QM?T^uL2gBsK|D3lpOKYhB4nhzj!UH%27c7od|wu`@=X{aW8XLdV2ALG%r(8k!+`2t#1rx1zK3LLo;e`tW53ukoIrSTleFt&qqF;p5?U(o@qL5 zhaK-JCi2Z&0GmBgv%H_{zsc&MpNO)ON+7sQ(!rx?)_Q9- z$H(muBY2s|R*PLV3yJz+8d<2hoyjn`p*fZFmXs*!15l*V;>5PedcxIqzl-VsrwR%K zk>-B{2TP`a7UNVY8UUt~??I`H=s^NRWhjAa!~}2IEk!ZE)V$mKi_xHr^17EuG`IPLGt%aQ8)l;h-s|J&)j;Th#>DwICt=AgE-vhOQuE3YPsG4Jo|-=Bc7>a`=mV%Cmgl_u^A%B=NXB zANk^CRN<|_CDVVtJGxB>?1{>_TruC}5@mpp9|dxhxgv|L$jUTiqOg=?qNy~HwEZ7m zQKm9K!sLchMohCTAQ-gRdBVQ2YY-@O?N-1h^H%4nqJ6x6JS+B89&R!X%z*XNOdJP4+H;u@hI1m`HaW-&0pC=V=wx>60C-u9tLz9Q6G<)WL_W~nV zd(ciRORLhx{(B)^iI5}-sDQzBQD$IaJ8^W}EU}M{D4!3Cs7}u^)X0oVeT$KRK;lhm znD~={RR}cK3TgpFuRj9!_)yZsftafVS@Y**?KHP#WhE z@vs=>czHHer^OcCGLkJSaLD9TJV|ruHebj5yjS?10+=dzE#YR&^-8rdNUSM zl5V4`2DKeOSD?=nxPR=rs(%`!sooLt!a)sxOa3( zWFCXK+h+L7?D;9i0J7I@^GA~oJey#7o6c+?62KhrHf3GQqkzoPaD`y7Bb~l#xwOB{ zw*6TX&|dI%zAeAK9ZL(Ki|k)c%KK&)OjOv6bv`}nU7q= zF1ZW1I~(spWH*yY^W2lU;TOM?OqG$l@U0JbuE$tUVCcUO(J_m~9Lh zFv@D|pAr>;X^pb)W!NSV<{U(gz}8nOEcH(wn4un2U_>-FtD3c4&sYK(G;&YHHc44X z2=Q*ydcMQZV=>p(n#q-7A#Bv`d9CUa8}wnz=LF1{EJURleVsZyyUwV(-EXyc{lR{g zx^BMo>0sDem2-p*@1VN>IJQ%2I zT!x`&)k=V&t`n7xZDA>$advZKCv|wv&+RA0hENA(Cu);!IVTfQbq}nQ>vb~M?DioE zMdctcpMQyy>^6jRdr+nS{Dr5Hgj7ItiB(S}_8oZYG63mzp>a%INhAkmzOG5M9cDgW zNS3deeItu3?rRn<3U#Mpp6=YTe=^0_bQFBT$u(!Wbm5i{fm075(

2fh|eY(VC;A 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 Q*Ti2k(3>%BQA23{2alpBI{*Lx diff --git a/tests/domainsTFReflectivityCalculation/domainsCustomXYTFParams.mat b/tests/domainsTFReflectivityCalculation/domainsCustomXYTFParams.mat index 5599870f54490590172d179a0046f7840af845da..e4b330382bfaf334c48248b84b22a9f93c479c81 100644 GIT binary patch delta 29078 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 E0Z9tq$p8QV delta 28945 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 diff --git a/tests/domainsTFReflectivityCalculation/domainsStandardLayersInputs.mat b/tests/domainsTFReflectivityCalculation/domainsStandardLayersInputs.mat index e746408ae1ecf081cc6dbe5a757029a526e8efd6..6326929ef2c2ceaac2dfab11315ef8f56f78311c 100644 GIT binary patch delta 1252 zcmVv@CyDSJiZNP0wHV&WPqg)B9f4SMR6m)zo`C2LMnP0myjo z8Sha5r76azgon)0%(m-bGM)xUnf!V0Y1>v!M@9uTm&puKz*Ykwm(UlQ;~ zB>yvl|A6s#(LaAur1%`>_RJ0!PbyFQ>k3o3`be4IG3bEZ^8^Bd~E2 zM3Rj#G}=0nQA2jMS!Viq=r@sNAjjU3*LN{mHsGda z!tfZke{~nPv}R|Sj(mT;4t3Oob%*VMj=!$HwQS<9b%?y`cCWLBu%)|>W-&~y6R*?I zhDK-pwqyqDI!xT(vWp$d zIH~C>03=ZF*^!b8n|2)i}!^Fjwj z=+7$SxBLH&J23(-%jB>BzQ6a^SDzG;?4vk(w;!9m_Z%8_;g3I{o2^8$U`n|DN8)Q_}oFaaVw7m*O)At*4*=WA}&Q+9T>Iji7&r?01s0FU)`R#Lv4nTVE^L)|xLr1c12Sx}vpR^J*1pONqxieF!;B+_paN8;X>J^a#6!;Y^% zpV0q&LjQmB3H{Fp{)_jBVe)d&{<}lcNBE#0p!$WTx)7|F6M}%GKBm~G^v790Gng;+E9E|=)Sv9?4-)&o=o9ZO=)Rx6 z(OLaQk-q0k8&`AN_<;+o&h5tZxv->xHVDoq#T^KkX_ny7<@n`4$ zytqSKpzB^OB)hM_$>Q;CG447KmhZj(%cFOH&fY`SyS?g^IQqZ2aBb>X>QX`Mv&4_b z%f)kV6Z$ZAJShIh;xV7D&~=j_1r$yHe_yAd!P@wge;Vp83hIfy+1}?EuVq5#Y^wjc zmzL&Fy8el}@3^Mcv}_|$|2uvk>Bfr$uZ|eEao2gbN}Q6`v$sl|dhDlIb?ZL>vw;Ot O1O!C@1Ddnf31=f>7oX<< delta 1273 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 delta 60864 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

!l25dRD$qxbdw0LrR-j19Xxhq^O2j&2UuiH_ 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 b3rnGr^B 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%0AM2#KwD2Tn4~+4l~AMB=0@ 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 A2LJ#7 diff --git a/tests/domainsTFReflectivityCalculation/makeDomainsInputsAndOutputs.m b/tests/domainsTFReflectivityCalculation/makeDomainsInputsAndOutputs.m index 3a0b9c322..e6beb9f51 100644 --- a/tests/domainsTFReflectivityCalculation/makeDomainsInputsAndOutputs.m +++ b/tests/domainsTFReflectivityCalculation/makeDomainsInputsAndOutputs.m @@ -56,17 +56,17 @@ TFParams.sldProfiles = sldProfiles; TFParams.allLayers = allLayers; -[outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... - Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... +[outSsubs,backgroundParams,qzshifts,scalefactors,bulkIn,bulkOut,... + resolutionParams,chis,reflectivity,simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = domainsTF.standardLayers.single(problemDef,problemDefCells,controls); TFParams.outSsubs = outSsubs; -TFParams.backgs = backgs; -TFParams.qshifts = qshifts; -TFParams.sfs = sfs; -TFParams.nbas = nbas; -TFParams.nbss = nbss; -TFParams.resols = resols; +TFParams.backgroundParams = backgroundParams; +TFParams.qzshifts = qzshifts; +TFParams.scalefactors = scalefactors; +TFParams.bulkIn = bulkIn; +TFParams.bulkOut = bulkOut; +TFParams.resolutionParams = resolutionParams; TFParams.chis = chis; TFParams.allRoughs = allRoughs; @@ -125,17 +125,17 @@ TFParams.sldProfiles = sldProfiles; TFParams.allLayers = allLayers; -[outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... - Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... +[outSsubs,backgroundParams,qzshifts,scalefactors,bulkIn,bulkOut,... + resolutionParams,chis,reflectivity,simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = domainsTF.customXY.single(problemDef,problemDefCells,controls); TFParams.outSsubs = outSsubs; -TFParams.backgs = backgs; -TFParams.qshifts = qshifts; -TFParams.sfs = sfs; -TFParams.nbas = nbas; -TFParams.nbss = nbss; -TFParams.resols = resols; +TFParams.backgroundParams = backgroundParams; +TFParams.qzshifts = qzshifts; +TFParams.scalefactors = scalefactors; +TFParams.bulkIn = bulkIn; +TFParams.bulkOut = bulkOut; +TFParams.resolutionParams = resolutionParams; TFParams.chis = chis; TFParams.allRoughs = allRoughs; @@ -194,17 +194,17 @@ TFParams.sldProfiles = sldProfiles; TFParams.allLayers = allLayers; -[outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... - Simulation,shifted_data,layerSlds,sldProfiles,allLayers,... +[outSsubs,backgroundParams,qzshifts,scalefactors,bulkIn,bulkOut,... + resolutionParams,chis,reflectivity,simulation,shifted_data,layerSlds,sldProfiles,allLayers,... allRoughs] = domainsTF.customLayers.single(problemDef,problemDefCells,controls); TFParams.outSsubs = outSsubs; -TFParams.backgs = backgs; -TFParams.qshifts = qshifts; -TFParams.sfs = sfs; -TFParams.nbas = nbas; -TFParams.nbss = nbss; -TFParams.resols = resols; +TFParams.backgrounds = backgroundParams; +TFParams.qzshifts = qzshifts; +TFParams.scalefactors = scalefactors; +TFParams.bulkIn = bulkIn; +TFParams.bulkOut = bulkOut; +TFParams.resolutionParams = resolutionParams; TFParams.chis = chis; TFParams.allRoughs = allRoughs; diff --git a/tests/domainsTFReflectivityCalculation/testDomainsReflectivityCalculations.m b/tests/domainsTFReflectivityCalculation/testDomainsReflectivityCalculations.m index a10c24056..fde3dadf7 100644 --- a/tests/domainsTFReflectivityCalculation/testDomainsReflectivityCalculations.m +++ b/tests/domainsTFReflectivityCalculation/testDomainsReflectivityCalculations.m @@ -3,20 +3,6 @@ % testReflectivityCalculations Class based unit tests for RAT API, the % reflectivity calculation and pre- and post-processing routines. % -% In this class, we test: -% RAT, RATMain, reflectivityCalculation, reflectivityCalculation, -% domainsTFReflectivityCalculation, -% domainsTF.standardLayersReflectivityCalculation, -% domainsTF.customLayersReflectivityCalculation, -% domainsTF.customXYReflectivityCalculation, -% domainsTF.standardLayersSingle, domainsTF.customLayersSingle, -% domainsTF.customXYSingle, domainsTF.standardLayersParallelContrasts, -% domainsTF.customLayersParallelContrasts, domainsTF.customXYParallelContrasts, -% domainsTF.standardLayersParallelPoints, domainsTF.customLayersParallelPoints, -% domainsTF.customXYParallelPoints, -% RatParseClasstoStructs_new, parseCells, extractProblemParams -% parseResultToStruct, RATParseOutToProjectClass -% % We are using the test cases for a domains reflectivity calculation % to test the routines. We consider standard layers, custom layers and % custom XY examples. For the reflectivity calculation itself, we consider @@ -62,12 +48,12 @@ TFSLDProfiles TFAllLayers TFOutSsubs - TFBackgs - TFQshifts - TFSfs - TFNbas - TFNbss - TFResols + TFBackgroundParams + TFQzshifts + TFScalefactors + TFBulkIn + TFBulkOut + TFResolutionParams TFChis TFAllRoughs tolerance = 1.0e-12 % Relative tolerance for equality of floats @@ -113,12 +99,12 @@ function loadTFParams(testCase, TFFile) testCase.TFAllLayers = testCase.TFParams.TFParams.allLayers; testCase.TFOutSsubs = testCase.TFParams.TFParams.outSsubs; - testCase.TFBackgs = testCase.TFParams.TFParams.backgs; - testCase.TFQshifts = testCase.TFParams.TFParams.qshifts; - testCase.TFSfs = testCase.TFParams.TFParams.sfs; - testCase.TFNbas = testCase.TFParams.TFParams.nbas; - testCase.TFNbss = testCase.TFParams.TFParams.nbss; - testCase.TFResols = testCase.TFParams.TFParams.resols; + testCase.TFBackgroundParams = testCase.TFParams.TFParams.backgroundParams; + testCase.TFQzshifts = testCase.TFParams.TFParams.qzshifts; + testCase.TFScalefactors = testCase.TFParams.TFParams.scalefactors; + testCase.TFBulkIn = testCase.TFParams.TFParams.bulkIn; + testCase.TFBulkOut = testCase.TFParams.TFParams.bulkOut; + testCase.TFResolutionParams = testCase.TFParams.TFParams.resolutionParams; testCase.TFChis = testCase.TFParams.TFParams.chis; testCase.TFAllRoughs = testCase.TFParams.TFParams.allRoughs; end @@ -208,29 +194,29 @@ function testDomainsTFLayersSerialReflectivityCalculation(testCase, TFFile) % Choose the appropriate routine for each test case switch TFFile case 'domainsStandardLayersTFParams.mat' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgroundParams,qzshifts,scalefactors,bulkIn,bulkOut,resolutionParams,chis,reflectivity,... simulation,shiftedData,layerSLDs,SLDProfiles,allLayers,... allRoughs] = domainsTF.standardLayers.single(testCase.problemDef,testCase.problemDefCells,... testCase.controls); case 'domainsCustomLayersTFParams.mat' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgroundParams,qzshifts,scalefactors,bulkIn,bulkOut,resolutionParams,chis,reflectivity,... simulation,shiftedData,layerSLDs,SLDProfiles,allLayers,... allRoughs] = domainsTF.customLayers.single(testCase.problemDef,testCase.problemDefCells,... testCase.controls); case 'domainsCustomXYTFParams.mat' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgroundParams,qzshifts,scalefactors,bulkIn,bulkOut,resolutionParams,chis,reflectivity,... simulation,shiftedData,layerSLDs,SLDProfiles,allLayers,... allRoughs] = domainsTF.customXY.single(testCase.problemDef,testCase.problemDefCells,... testCase.controls); end testCase.verifyEqual(outSsubs, testCase.TFOutSsubs, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(backgs, testCase.TFBackgs, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(qshifts, testCase.TFQshifts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(sfs, testCase.TFSfs, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(nbas, testCase.TFNbas, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(nbss, testCase.TFNbss, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(resols, testCase.TFResols, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(backgroundParams, testCase.TFBackgroundParams, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(qzshifts, testCase.TFQzshifts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(scalefactors, testCase.TFScalefactors, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(bulkIn, testCase.TFBulkIn, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(bulkOut, testCase.TFBulkOut, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(resolutionParams, testCase.TFResolutionParams, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(chis, testCase.TFChis, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(reflectivity, testCase.TFReflectivity, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(simulation, testCase.TFSimulation, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); @@ -245,29 +231,29 @@ function testDomainsTFLayersParallelContrastsReflectivityCalculation(testCase, T % Choose the appropriate routine for each test case switch TFFile case 'domainsStandardLayersTFParams.mat' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgroundParams,qzshifts,scalefactors,bulkIn,bulkOut,resolutionParams,chis,reflectivity,... simulation,shiftedData,layerSLDs,SLDProfiles,allLayers,... allRoughs] = domainsTF.standardLayers.parallelContrasts(testCase.problemDef,testCase.problemDefCells,... testCase.controls); case 'domainsCustomLayersTFParams.mat' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgroundParams,qzshifts,scalefactors,bulkIn,bulkOut,resolutionParams,chis,reflectivity,... simulation,shiftedData,layerSLDs,SLDProfiles,allLayers,... allRoughs] = domainsTF.customLayers.parallelContrasts(testCase.problemDef,testCase.problemDefCells,... testCase.controls); case 'domainsCustomXYTFParams.mat' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgroundParams,qzshifts,scalefactors,bulkIn,bulkOut,resolutionParams,chis,reflectivity,... simulation,shiftedData,layerSLDs,SLDProfiles,allLayers,... allRoughs] = domainsTF.customXY.parallelContrasts(testCase.problemDef,testCase.problemDefCells,... testCase.controls); end testCase.verifyEqual(outSsubs, testCase.TFOutSsubs, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(backgs, testCase.TFBackgs, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(qshifts, testCase.TFQshifts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(sfs, testCase.TFSfs, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(nbas, testCase.TFNbas, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(nbss, testCase.TFNbss, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(resols, testCase.TFResols, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(backgroundParams, testCase.TFBackgroundParams, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(qzshifts, testCase.TFQzshifts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(scalefactors, testCase.TFScalefactors, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(bulkIn, testCase.TFBulkIn, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(bulkOut, testCase.TFBulkOut, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(resolutionParams, testCase.TFResolutionParams, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(chis, testCase.TFChis, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(reflectivity, testCase.TFReflectivity, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(simulation, testCase.TFSimulation, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); @@ -282,29 +268,29 @@ function testDomainsTFLayersParallelPointsReflectivityCalculation(testCase, TFFi % Choose the appropriate routine for each test case switch TFFile case 'domainsStandardLayersTFParams.mat' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgroundParams,qzshifts,scalefactors,bulkIn,bulkOut,resolutionParams,chis,reflectivity,... simulation,shiftedData,layerSLDs,SLDProfiles,allLayers,... allRoughs] = domainsTF.standardLayers.parallelPoints(testCase.problemDef,testCase.problemDefCells,... testCase.controls); case 'domainsCustomLayersTFParams.mat' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgroundParams,qzshifts,scalefactors,bulkIn,bulkOut,resolutionParams,chis,reflectivity,... simulation,shiftedData,layerSLDs,SLDProfiles,allLayers,... allRoughs] = domainsTF.customLayers.parallelPoints(testCase.problemDef,testCase.problemDefCells,... testCase.controls); case 'domainsCustomXYTFParams.mat' - [outSsubs,backgs,qshifts,sfs,nbas,nbss,resols,chis,reflectivity,... + [outSsubs,backgroundParams,qzshifts,scalefactors,bulkIn,bulkOut,resolutionParams,chis,reflectivity,... simulation,shiftedData,layerSLDs,SLDProfiles,allLayers,... allRoughs] = domainsTF.customXY.parallelPoints(testCase.problemDef,testCase.problemDefCells,... testCase.controls); end testCase.verifyEqual(outSsubs, testCase.TFOutSsubs, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(backgs, testCase.TFBackgs, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(qshifts, testCase.TFQshifts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(sfs, testCase.TFSfs, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(nbas, testCase.TFNbas, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(nbss, testCase.TFNbss, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(resols, testCase.TFResols, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(backgroundParams, testCase.TFBackgroundParams, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(qzshifts, testCase.TFQzshifts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(scalefactors, testCase.TFScalefactors, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(bulkIn, testCase.TFBulkIn, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(bulkOut, testCase.TFBulkOut, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(resolutionParams, testCase.TFResolutionParams, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(chis, testCase.TFChis, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(reflectivity, testCase.TFReflectivity, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(simulation, testCase.TFSimulation, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); @@ -340,31 +326,31 @@ function testRATParseCells(testCase) end function testExtractProblemParams(testCase) - [numberOfContrasts, geometry, cBacks, cShifts, cScales, cNbas, cNbss,... - cRes, backs, shifts, sf, nba, nbs, res, dataPresent, nParams, params,... - numberOfLayers, resample, backsType, cFiles] = extractProblemParams(testCase.problemDef); + [numberOfContrasts, geometry, contrastBackgrounds, contrastQzshifts, contrastScalefactors, contrastBulkIns, contrastBulkOuts,... + contrastResolutions, backgroundParams, qzshifts, scalefactors, bulkIn, bulkOut, resolutionParams, dataPresent, nParams, params,... + numberOfLayers, resample, backgroundParamsType, contrastCustomFiles] = extractProblemParams(testCase.problemDef); testCase.verifyEqual(numberOfContrasts, testCase.problemDef.numberOfContrasts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(geometry, testCase.problemDef.geometry, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(cBacks, testCase.problemDef.contrastBackgrounds, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(cShifts, testCase.problemDef.contrastQzshifts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(cScales, testCase.problemDef.contrastScalefactors, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(cNbas, testCase.problemDef.contrastBulkIns, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(cNbss, testCase.problemDef.contrastBulkOuts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(cRes, testCase.problemDef.contrastResolutions, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(backs, testCase.problemDef.backs, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(shifts, testCase.problemDef.shifts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(sf, testCase.problemDef.sf, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(nba, testCase.problemDef.nba, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(nbs, testCase.problemDef.nbs, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(res, testCase.problemDef.res, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(contrastBackgrounds, testCase.problemDef.contrastBackgrounds, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(contrastQzshifts, testCase.problemDef.contrastQzshifts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(contrastScalefactors, testCase.problemDef.contrastScalefactors, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(contrastBulkIns, testCase.problemDef.contrastBulkIns, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(contrastBulkOuts, testCase.problemDef.contrastBulkOuts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(contrastResolutions, testCase.problemDef.contrastResolutions, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(backgroundParams, testCase.problemDef.backgroundParams, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(qzshifts, testCase.problemDef.qzshifts, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(scalefactors, testCase.problemDef.scalefactors, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(bulkIn, testCase.problemDef.bulkIn, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(bulkOut, testCase.problemDef.bulkOut, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(resolutionParams, testCase.problemDef.resolutionParams, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(dataPresent, testCase.problemDef.dataPresent, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(nParams, length(testCase.problemDef.params), 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(params, testCase.problemDef.params, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(numberOfLayers, testCase.problemDef.numberOfLayers, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); testCase.verifyEqual(resample, testCase.problemDef.resample, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(backsType, testCase.problemDef.contrastBackgroundsType, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); - testCase.verifyEqual(cFiles, testCase.problemDef.contrastCustomFiles, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(backgroundParamsType, testCase.problemDef.contrastBackgroundsType, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); + testCase.verifyEqual(contrastCustomFiles, testCase.problemDef.contrastCustomFiles, 'RelTol', testCase.tolerance, 'AbsTol', testCase.absTolerance); end function testParseResultToStruct(testCase) diff --git a/tests/nonPolarisedTFReflectivityCalculation/customLayersInputs.mat b/tests/nonPolarisedTFReflectivityCalculation/customLayersInputs.mat index 7b761d3cea7347bbe3a8da48832ffd5733720b6a..64d2baecbdfe7c49555a1c28d8d6da229c71af6b 100644 GIT binary patch delta 5448 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 delta 5442 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 delta 49790 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 x+Q{iyI9 z<*QN>tfb`NoL|-m;b@)k>$|DXUW|(XLdz>n%+0LL4ylw{xEbpSO}0@}Qy5&8(NPFC zk56PxwvE2zaZUJ-RY{{B%ROhc6c<^wESyXf7mRU@V~3_ray?F|8|zfs8|R-fiO!8K zGuYq$2~x=q6QAKGwznrE4FhtL8y?7g?=|4G-hZ9$bEMlPhJBAx+2!UomuFAi&O7ln zj+-q!dag0Y<{jdRm)qCPyuobsaUUSuoNdNV%qG7Jonwdqe;Y;-H`?g+l-@^Zdd|#K zvo@^0f3{C*9tF2e*E7|9*QS2hB`wrX8N@=L0J!C56|6laJ&{%!I&n|ZzW7exunFI{ zZfhjIWteXrX2~L=qO6Q=hdpt+%)D#IX4gp}zL(Bq7y~_~BRfqw5fSHr4M7IqW94u= zh&rrqeQ!YU*2B<2yYEWk#j9(Xgs9%y&XVTn*}Fm>6Kv#OX18VG4@0#k-R@thhdXE2 z?~0~o_Nc#{%_VKIo;U8txg`6@>9dU=!bkdMry)@O*M#zP zEN$(_n?W#k_NO1#n9^^ukBm*g_ekZNXpD9I=Kj<1E4|gv7Y|3F;m%af7i!j#Ti0r4 z#q$^{KR@q9nM|kBc^rlDu`52q`U}{Cde`1@;z6h6C=~h*;{t>3RV3~U3aOj-^H8|X zmbn+>XKt%b;pH~B@8Y@kGXGDDAofcFC&R{tGXvH<4eYpkgIkr+T5^qag?erYPwG78Q@2r|s z?W|93PD&zu+wvrl?VE$SW@F=5(1Fiw9fV+({lAKMOa55*@9||(9id_QQ`C=N{C$sC zT4NjCP}uC(I-HJn&s2`X|E%S6|HI}rBfF9sB}vM7pj*`{58s}Q5V`%171*i{Q0%D> z7w-f+dw*1;<64={OmU6|`@2KrhV8`Hs1}gGny`-y&GE5kh{9CKpwM|O(@!$e7j}e5@-pw) zl|L>5%1sozMGY7D7;u1F+>qP%EO8#_!~uy-a!$Z7)i=ak23PdWeOq+y@sdP~Ian-u z+}_sq8+XCGlsF@lq$seQRn*<+emsi#c@pZMy#Tk=Wf&?wX3F-2_`Tml)(mD$J7x2jFM6Z<)|wm z2r?IMdP0{%lMGUplkzf&9ToKqxDP2%vp$k;3K&PX)Vr<(^ll`^b+Rk{BpijLL=_?0 z2fu2nm`eu>N2b_WQ2(8F`dUL&c%p|`Q|JM?Du|hTsVCI+qLYVhiA$CUcYALULSoXO zu#WHkaHnd3mBi&mlvpiJid}%g!uiO-u=CJX!NX}a>>p@nJvo`pYr0PC2(WZDY51Uo z2c9Bs_i%Zx(37~^h!^2wo{lLzv#ZQQ_#F+XNTs+5(|k8UTUI9?D1XqHKOlY619kY+ z@dsE*SG_VO$USYq)z=Oda7{wykf$u?%wBPhLKhA>q+a^7IX6n@Td^NU1`LCb7IVe4 zCe!ZLyjN9kymRlXpp&jiZ;;lGjI+`L*YZfUS4}BY?(8gamLaz32$`fqCQz04Osash z=p$O$A2`v`6ukNrvIELqS@TL>%;1te7oBpS$YCG-m^=?$pT--L9g>k=_*HV6`w?T; ztJ*OCa40ZGJ9V)g4K86Tqf0dOD;xs~Ak)Ol`ayDlD4ixtS8;g{R`0ce?AsZ(hith` zgA3~4l0Dr_Ly&+rY8rM_XB6F-F&b=Ah_C+tV08@s}nm0CB(toO?7p)$qA>jl>)$RT~K%b%jx&C{kWI2 z;xr$skitRE^!I}NxMyEh_W*IUD;MtN$z*Vz?o{5$j%TJsHDueT3Rv#u98sMCtKzuuCxx zDKaX3jRPS)2OlteVyYIxTv+qI%3f5uI>2n0`cmMk;M|lt{SuR^pjr_u!6yb4NLrz& z#3v)@DM6|++!EzG^V##1YE6T_e1F%XX$hE(|@zq$4P5@O5C5o2U z^Zc1U{`=dQp6p{`inJwc3e3ilT#Cq|l=U#ep!m0cqcR@s%6zz=W@m6X{#g)kbWDEb zxda(k;ISR)4<)Lbl=}os9ykff=J>`UadIsybu+VTEQLfQ)M|rQeptO_Kgn?L9QX@Rfw!781fOXpqEA;p^QBG3U0Zk@&cYhZokWqMz?g^>@sZ z>fOr$1po7mev&SshQnkzv2~Zxp1F4d{iA3(?kzZ8!wus#R?Fuaw9YaC$x;_et46T3bMPzgEXm1H2WLRINiZS^# z4kJI|iqv{8RP;6?5lgjA&nvBAN0@${B!6&h4;ILmRr@~~@2YxGEpMX4yzJ0@Y9dMO z$|qGRLO;?OEQN4YDFjm~2QGV3GHAh~{NU5Mwu1AteM1 zsqVT8(FFub4fz@Bsn&?$OoyO%@|R}DxU{@Jd`z<1ce^zn%1cr7=hv5);o6DnB|2OL zuJdYrJ4UmWNMdB4qA9&Tn;r1JncqG4*^IWW1LmT}g_q936nZkJhK`uqpHw^DwMaK^ zovm1q8cpWU&a2*lKicww)He(=I@XL4!)Uvy_1yg2t-tdamp#O`s6d}IBHb*MhfWQ3 znVo1#z{h0WHVsD?DlT<56@lL*^5(blLC9Gr2@2C&xfiRhJr`U)GME+-g# zHo64_B<|RV!JDKTQ_hT8ldJ@+?Y5r^Ek!&$KsnIPJ4tkA>st?mqFj%C7sLw7_jEdZb4AJ}G zDu@7)Zi~`UN0-Vm(UO$phH=EnK`*FgNp%~NSZARY?yxiKeG3P*)-|mB-R%j=e1)pErmExFq~!yYrf~q8n^8DrtJ0h&0)TJ4NU>5tIEL;FX5VPe7;3SooXpy z#Z^Qbj&LETn2D17Yt8p?nbOtaP}}mT#|RnB?MUd@nnBrFPEM+9>R27;=niri7J1PJ zftqj74VqM;mN zYR_-ybf&}jWz*N$y5l#A%zRWn5P~>!MNQvc;+H^#cn*N)o>Wh(Nq#c}X&*sgs`7ke zt^$r{_@XnnIhOfraU!shD&b$?Chzn;Xr$KVQa2=Uu zJs|{OxUHhKfnk#pS>urqghrIF`KL}v38Rv0@eG&lKr(;)1XaCq15;PnJYRw=adm zP$V_s{jzFVT|~mULnd}xUF6>9Xg06nTI`E8MPuCy5WxM;WEhZ4c-Q=8uzsX$*k2=l zS;4<2|9Az!SuO(p-uJAATVZWO{*Z)A_ax}}T?ezJfec?gxVKpHXwGIQwv5vLoe9cm zlC|zrR?==aNIsNxZ^Ns1@=*EXJK9k4EuNhI0|m(Qy6>|xhjNb_LE1MC4XlQH6Lq{o;(0*yEiKpCUHkXzl1XJ{ZU;APcK!BO z-JX!xDhz*p8)}g7NVaM9GiUFH_x-45no;La+ZqZP)~4!P&N@SIE^QLsy%;50Aab$A z$RS|=wm$zNK*iXe|HD;Efd=o{YbHPBko5K_`b%_f&4ZkGo26*y2}6x-Q$FTcj5z7w zQ+eHOZg`>2OP8Tm89!^>NA6*XG;ypPIk4N!7?$fS5We-~? zpMcx%BGI_9&*h>7cpKv+Gj@Veu>^}g#~a18Q?4f;O_&?}pc?yz;+@3c>y4?#XvO;5 z%0pz{n!g;w6fxy(S2KMR+f`k>!%n+D*e^>DPIGFu4QGo*d_fjKZE)(tgT=6+ysl3- zWt`Xg(x|#$fRoJ}2CdQo*uLT+mx@~B34bivPDu$64z!H8$Yh0 zT<_6B1CSCZ+Ya3L%RI!icd3MoPkx8BAwRa<_yUDQ`9QxHB4)xpX z^X1_7T6A3=$Rw$4+psO}kvlBNEx~}mmga)%Ht2!oxZgp*^Ru zKN8EYrorj$Ga9Alq{tzg&i-FH$Ebzl=6ixHJrf1TZKs`sv%ehpNF;JT613()!Z+;X1ppcywQcg@C zW`Nzyq@Gzz1cNn-o_|ou!d@8-WDTWm4=$9qs_^tSYG?earN|uN^e75l)5vW4jigpj za*DWxZ<5|=!v63xyqGVSh1KUjqw>D+Qd-y;mqqB9kHX(&yKD^m7=!YE470o$dq6v| zp5S$Lqv+*_hU6s8lFS7*(CE5R2WSKnLbDf1SnPtdA+f7zJslkM1vQZA8IO0H<-G>h zBGd^SGjPctrnSz*k(GqqN0NM8GAN)N9$X3YMCXL7Z>+p7*nNo&R<2eHc)Mht%629= zb_1eb?@l+1-8>~>AiG2Roht->+nkv{UQz?XzWs0K?8h_*WAw)UwI6_qJvlDumSlav z><1E^1c_rhe7;41$un+1H?&YbGs6pzSj6sVF}o<%iNJj zjY#IO)PEo=cG{5noW7%)qKKniC=2E*ez>dfS6J=tndx>JAWzi;mj2H5!hY#!!6nf0g{Xwu zVidUP0d-uR_%$E1b1#V~sPuWxI`frp@GtLG%<5Ve`0#q>@yuyh`FQ%asY*JCNf2dWnk(b=+>(XO@|bdC%-VqL zMpISixuC~-C;O*$KpSC;J#DQ`-!Fxq>SrS4r49>D(B$4i&H8lXi~T%i;tAhRKWB6iDPrPY;YNsBHId_K(FuFmwGu$lbP|1AB;b` z?p*d_I@_@KYqM<-MAk#+sd^krl**dG#YF59-Ou?8B!qV&&4OYpT6SndzNl?>Whdb5 z7ty9}{Lw>u|5^Ghnf>$x)T?M#sg?VFU~5=kjEgE~Un;_qwAg=PGS&zM;7(5GsBON! zav&lO;=rWr_$MuI;F2I*?=qmqY;AgC_6$|gG|K^v=xA)Uy!ue1{}xjxRCLC>>5FKk zPeI`ZL^X>IznVOiYek<uyhdtLaB zTLeH4xaNiDPAVEp^^B}3EuqGU4xF5Q;ga6!Pz{il3ZU$_%a2#tD!;x?F!;oKZ# zUWY1=kbD&-?r@ZG*>u>y`9zxY+0|CPla#0Y^3-0xo{)tp#e&z#d7whRN6x+BFDe!Sp@ltxIKi z_|X3qtR%um@c~yqCD>6*NFs~fF8DzeD+d?yWVKu0Et)UAwKzx)91T=B`9dP7FOJjK zDRT*RJ%xICp}I;Ubq0?d?>1a3oiBh4jr^J7atHTHQ^lw4FKPmt$EmMA5$Hx$8UwqB zFQBv3gg~>!Z#2T5>{=OmDlu){s)_C(61@42K^t71s9R-*o7OlKB|!6sJ##hMfZo3e zNOyCog81*Y;x0UiNb;}lo*aMCfTK(Kw-ewF_WHf}8N_>(LO5DfPp{B=DV>WIc|S)9 z8N8LcvAkl!);9Z+5*@a}=DZF9xk7r5wF6@x_mBhqXdPrAXT(T^i=pv?R~AvC3Vm_o z($E*##q8aa^m0tq6V{Jd&;2>18MckVyfCR+CLBW#n|1#*t-!)si{XLsD|2{$fQ7xX z#LAVHmH#)RWDzS&RjZ?z-$$k^t_DZS1bexwp7}-ruljb3q&sUj0N}E#ns)nQJf)z7 z`dSC$+@}fD-(L*5DDBK5-x>j;8>Uw3v+3i_wg1`pYCU+~?O1gv8=gRv?7*BX>^AJ( z)KLB|Bt0=6Ij#)_{6omzxh&X{S`SS?$$*-ejAIZ4W=D|f` zP2zaawd70}F`3GdDKjxm(#6N@Py&EAY#Co0CL=KC7iX#e1>!-$YXMVr9*r}o?Pjd= zpb*anu_#^jQ&*;NxAM~W`fA;I9-ZFbx27ljPan?YFXB0p)U>_^>s z#>?RM%HwS~`n*pKw3GxL(u|t6y}(%L4rW-O<8*}Nlp z0^Bq&@IR5_-F*xtP7%bNRa>UnHGCfmXWS!M?n{Qavimk$-BHjuz8qex@sCxnQ?1 zuBIQwR}8hOyF;U^`^v^`eOlib)C$e-1S~4rZAZijg~%O!Z~51Ll{$PGw=d%V5*6j` z?7|PTU6v@Ras?;uw7sy0729opHyaOqSwi1NSwH|2tGbZ5ey(hf;fu@ZPKL9y&C7Y!5Fu zH297#U2@<*^9dN8z2m~`27LS8pjj?cOaTAPg@e?iH!R3-%ZkMxeInORIbNysDW1WV z;jU*8kU$LY`cMA|q#N?UVsFw2 z0h4R=Z|h2!QtLJvMDu?i37e9mSBj^8cYGF+JkI%SV}2B2by@_}6&cFd54k>tE!?Pl zsvli89o3?jt6Ic)hHQmQB(jvyFx}K#P@#O|C1TT&UodnF#X2)S{Bk3oCbRiDcrQm0 z34m*ctX9vR(E*sXmEgdBhrGlnb%|-n;{>-Hk#}=JplRdF;K8e6gh;7j^tJj+a#ns*9F<`toqAbw=WAPS8`R~KFl+a z9T~QJlFQKVIZ;}H4?4_crj&i@ammj5h_#|7T?PxuSWHR5;r-NzV zf_Zrv9rjC35p{)KpptMsje<{9!K9Mir$=tVQYR-!4px()dcKG9l;L_x7}k#eG`}N5 zn{%}v*5%Y>5(ZG|%cN3v@NE>bq8t>`DxXWmxICV}3r)jA2cG1OU26)IUlhX4Wwo&S zy)x&`8G?z3hpnmQ*`Uj(jw&pdA^rA(=Dwyle7J}@Tjv~yH1(-@b+Y;|!@DwuIxpn5 z;(Y>cY=;;*nIekf0*9)B=}DPeY`zGJ!#kcO6nY>hp;6J%%{BQjj znGs`lr{ISXPJQ5IWE*kI8CLVpCqes+9PS;fVW<aGPNCB7rx7`PCBFFfX}^L zLyBTQ@vkMJmhvsBuv^Tp`F7MB4vVAv)d}KoMyE+;ElBAduRjv%D`T6Nnby(dd!_tfCsJq>2yQIMCM{4{a?`h}7GlOKliz&=yfD@I6A&mqg-MiZ!LZ zuO}1NhpK3s7BgMuB@dxo!Q6QF3ECtOC!NXE)`DYBnB>8<3_Iahd)2!O(S|Sw%S|B8 z8JNivj?A#H4H-$Za&`8@gKj(cb@X^I%p!Na&mga1|+Giy5TAVjh8W8yNg+3YQuTL zcV5ZAU6|bK6b`m@w+zNxs&mz^yNG9H&-HRB?O#Zmoo_#!nx)^2)k;4bFF9Yn2WwbA zo`~Gvgr?t#qJR}8DguV8H%bg|CMF_nMfKyz`@d=BnEW?;)o+oxk|92~ojGo*3eN&G zz8!OO^>3ty+A>j(n!b2dO?~Uros=DPTKLyH(=TVcTy)gDgK>vb>mK zg2y^YDm75VH&Nz7*xpPrvz=*%^)SQo!F_y7MMjUqtvTv2i2mVTa34rzN=(XKqx>5v z5hrf0T8-QxeR*mo4+?$ukCwW&hC3*T-#!sn-5tnSnzXtN=2f0^G zU({QB@hb{E)OhD;N5GjS33zLAO}RTC_{(goJ%l96WDHb^c@YIMbmw%=3&lZ0JZ##z z>@dz>W8ISrYUnx_6|}9?_nPgZeQ6*~*VYr;qy}w8kW`83;amvL(AlH!6DybotfSz@ zCCi-+=BNTpZn2+YS#mU<@d_rA%n6qvni`oB3n2WYg&#P(i*hNyg!crJKpOkiqpJyE;>yjzU#PzRUQ{6M=hyr*F%IV!||@zvwWr0 z2dev@&@nqA!DWknc#cmIcVS||KHoE)13_Z@v8pEC|1n9!!T-f770Z$F`&egHf4#=9 z(=g40d1&x{YV7TEL)Xs1QL^NO~bwmD;YT@AZwFQA@d z%(yj~kL;p3V^0NNa|!lNcUVb?C|E6n$Q;%_`^T$OcR11-(5(T~<()qoZ^}D;7=#Vq z*rm0qt0!Mq9w~e|cbDb$dEwuMXS?a;V7%@=2H{5f*iMEDI1XxdR-~ZZJ*dM)Q^<~1bzN(GB zu7}@{vYBjgXu5Zct}hCgndc#bLmZzJ+FJb@!8}5D)D-0zyUmaOglpBc)a4ySBW_@N zw{^A_n8rB$s|9=Pr*gy9r1TA~1AM9T^n~<)oDS>ROo9%K5pN=h1)k<`o?L52iMLF5 zf1As&DWv_V2Qgi$TN-Oh!3EfEe|K3+zwCOSLS<}w`&PbN_8E-M==0|MyY$a1E(2TA z-C}k+ybWjkPo(i>09LI7s=JS=pt>Bh zwD6@b8uv&@b6@QGoK|j0=w4TZT(vXL;XYUN&Gzso2g{%r@nr@csM1KC;I8jG;YmI2 z1(90F!tmM=NH2cV=yVgST-;9h7oY!=a_8*BkHhmN$x1Z zh+O;h+n5f%z1m?Lr6^kI*##|3O)J*5IwbBjmM@o(+iPMd2-P51nhkRLar(x5VMV}!Bh>AWvcOm7y zIqR4P$dWQRXF5qgz76V*wQC%jG5i5unbV>nOK#ibJ=k!eNI1$vt#G#<#;qPXI#*fvF zO_mXlT|iI&W8AEE#;!y-uYuj1-pfuabW`d2*w5b5rz(YZwIN)` z;_sM!s*H=P&)44A=Bl5>;dP9$Ry?nk*U{iNBQ1sCd8zo2YC*kcbz+?@IvrsoSW}`& zK^}We5!y(-ew7Q8emoJ3=J*s4`H4P=JY;iGdO#05ai7}GJDrhx-scd)s`@*iQQZ=W zwHiu%VS{fh5!0{~iQsyD5`p~1r3C7j`}eo^*ky_g+iAI`_n44 zq-Wcbx7xExtykPor^XQya)HgOeakVggQIiwb^GlxOKL;Q;@~JEJ`)RWak|)F&WsQnVXhvA_hktd zDh-}b>KBKQ`1+NjAcH3ZSS73v zVEZWpn;LuQLX94aS8(p2;gvG}7tQUz9P6F7>{sN7hz;!`zN8Vz)ajF~(|doZ)GHc| zWaIk>?TdC;_A~m8UX9bKuVacC;K+JNo`WZj#PsRIBGVpZXWFgdYegN;sb zXFn#|ftXFbt<2kQA&o|cKV&?cy(O-EJb2un-X!LQsebEPfx;XN&)zKV`J1US(RS^( z2<^9&t(>i;2|2d$2`Uk@raEWm>d;{zy^TovmVDfJ*IoPWMP6v^|D5Q3`A#qW`0{CL zvUTwnA^&;1@tQIDD5x01eVsPqoQmz{p@d_4rDq{*w+iPk8RJd_bt*;5zDC96g6Y{% zxX7~%N)#6#gbRooyX5G5T8rRg+Z&W3R ziijl~+H2&A6dX#2J~%IA(eXx0@Bw4ndV{)idhv_SiGkd&Z(*~#p7*ne%W+f<#29x6 z3lUH#^3WJMh%4_G52EGd3Qeomk{_Wtq9cw( zfTJ7|mnA3GUoIpxCJvrxH(>Kw-jBO(D){3|4_Rh9F>);i02vA8ANJ+rI8e|?@1sUl zPKEB&aWx%k#%h z@Pno?eB?c-{G0gvZ;>QhbWdXX+T2Y9>%*XfAf^n{c^DvYR}`r~`N^fS>q@pnCb2*p70py^e3k%YSgWQ>V%JHBI7% z?()=|FdNB{7pH4yty&Rqv3sO)xM~rKE7`iVlAJDKL|&tte~bTs;XL3{fr)QwktdI$J4WL|@eWYR+N|BR8P_fWv(ewY4is#4 zCQmt|q+Bgc`ukL86mMWl`drnK4Em1MTYcjFmmY8+U^=?rw(Rssf{&499D96_=h_Jw z$`N+Lh#+ zN0E;IC`Nwj&LAn2Lm4I?jw@4ZSE4R(ObeoFv9Wp4rQ*=F8>^yfOYWd*6H{4L4oakO zI&QSE_>UuaET?r&bT4#ge)xYrIxjrCf4;t-uCaLe4K_D^mAe&b##al5Od9nURjRtw zzFe!&GMKQ(xhJs7nG*KyU99MB&uoT@Xuo5p8)9#!E)$*pmLY1moI6xlAc5ASGMzHl z`V~DvV;e~udv~fbZp9Mm1ezxNqNu+K6RztV77B8TE`!R)=?$t%4x$KbH$KwC`l zwm+|_+ohb7!BkXfYV;Tnpm&85muqkmD9De5QsaIS36RCP@?3t;lPJ~jYY7mvLrp#A zTR)AZpg?@R>{s8sEhuZMnrDZnF40pbY!5M3fK{giKp4e3Wn_<>3F)o0YkmYO{6^f( z%Mloc%3B5h+A>`+vVp1F*|fnA;5QD9Jv}p&q;J*(xKAlP*5aLRlu7q3sLYglzZ-LH z`@SQuap19<#FD#sh~?G|%|N;QQG?fZkV*McC#x>Hn=P!7%ySB5tO)gBJH{EF*u;w& zW~cv~ZBH?>yWaScP3~GJ1&`w+nh-78zx|x)NqBIZU^72AJ91arVON*!XaPDu?bLV@ zOr8(s9_r8zKuMMz+TiviKOn24+!(rnbiFxmNso{dcJD4gu6`?{nr^T?^RH%;TXpmF zpXp$;VZ%w9Fm!{X#>=K`l{#DXXh`m==f=-D(uApb80|F-v@2PtWr85+7ebzOcQXQ5W(xJKPd!`>R-wpPwV>>LT4PN zx2-2*9DGv^{Ym*4qN3@q<#eR(gD9hwvt5+A%b=y$ewQ;(^fQ{HfzCkJC4OHmhL1H9Gv~IIW{5fJ;s!RWT$0_RwXD;ZjNxN0&3D8>`KKoT5sw zTmUp(Aqbc;jY>|71_pfSmIMZn;mpoGHosqN^Z}2^m*zOReo^Y-R#%6&Mwo<*(GRlu z9ESB0V+x z+yoRTjyM^b^X{iMZLoHUL0wv#BEZk_M2%c_bY9;P4v<;k&oeg%meM0v(#p078*h|- zExT&~72@q&^Tt5+hci&kuXTumCr{{4%>t%)?Y7(cY{M`!3#UFW+zO%aWhC&G$XM9BTwuk8|aNK`wBHCU*5;(zzddP4tizLGz!SNdI{_dOxYd|7!@%P z!YvRCa)`~cvy88K1K2Ax$tTWwX_KjN3}#ztYAJ=LfGm7Wh-_6SG($fDHUQkb zDg_%|V$P}lV8l?tPH{t52Kf4F@YCBN5|gQmvghO;|0w%8or79dNa{Ezxh^-Bz3G#I zi1`uK<)-^m`?M!`^({T&ez~RJ)ctwl{U<k+!=ADrX>QT+?)R3X@=EA=C6ciP}nsU%ei)L~z?}(!*D6 zXb1rBE6n11cT56a#{0O`6R@SJLSq-tpMIGDnNAEhD!%kR-sT*8-0}WSN3f{{Pj<#E`gp&koY$NciY4URrKUU)#;}itPWMR-k-huu?5;h;~U;;CWesq zIjGYtky2ETFjtfWZB}7(md+39qPTwRpYnE)6 znzMqiWg^4_ts{WfG77UURRAShqYDQ^YHc)w)YfxkanJ&%1XHZz{ME$*-t&4ph;BK- z^?_ZC{!}4bQbYxiMzrU(#*7psOYl%qQB5b}F>Ax^_cI9K678zp5*4y;L(sFkQd(S= zM?ia|3(mC<=DJ;rGpNs857=Zx=d+RL5I1Pj z3Md7*usl2iT8lZte?UDv+ucM$FQfd^OmJAg@J{1_^?uQVQfc7TjQ<{{hHYg56}y=s;ap&P?NxLa`4PagYsIdGt5eR~7H$|wz=E)rMo`QIClzKC(B^-&C6fz} zrAoyV>-R)>&gO$eS0J}!sJn~};&m&<&6<|zYf^P3OGzu8@g8(P_I*Z{GkijJ;vd8l z#5ELqJ?IX+a(hSg?cY=)@pUIk6o@r9gG!WEd{;g*bciYGQah`ptq2A=$~nVfu8Q01 zVUxGAg;3jUX@P^c|3*J~HJoQ4`k}r5CjKt*TGV`22BZrHDSJPZe-cI*|7(f8S$`4# zy;dhfgM$r1C$c{iD(`GddJv#|o`p?o-5+EILIs?o-WgPX9-dN!P$TCUiwJk|g) zFC4?}9)7zt?f$SdF-d>Z&`Nqcnd)WJSRVq2;ma24;j+~IHtdKAv z8$BbToRBJ=xs|OMEuo^Vk*m3bvmG~~qKJl+JUc5bp@_4Yk*k?0p@Tg)p~in+-oc%a znTwE#g`0(qn~j-}nUR@=@c#**{{yg;9KwIGA{P*lXU?^zg{s;_BR^zh5Ml5+WN=X= zF=0h))CPf)s;H=9aIh#8zB8g?>@hAFspPCs6f&8ND!dRgNKs@WVMQb*0%kYMoEyLo zFk9cYn%$$Gzp1vP_N|t`yP`KDNt`%*ELBqK;<}-$BmD7QsCQiXvwZ4RDnijr+Z;=0 zCB;e_F6OnQ%hJTSLVktyTW4G7kylf0VrFS#X(rLg%Gye9qlJ}~HT|rKjhWZBxRkos zxJaBhuI=uP9&M^O<%K8Hcnbxy^cZg1!=)Z0%g?^oF>hjRS88ch+jA$sxVqR;;LriN z=sU1YY~l42;d#rnu-f>AV)71QQfOf%{WEZhiTSg@!f_#`V&fMA4t4Z}F!O7#=b!%D zfX{Kd@CAC0FpplgO8!{)<1x>zZQApw&8=SM(mNZ(-uza`3h{ve15;3Yw&p0$Twc`F zUX=D&fL7ar;m82H#LP}|_1ypu;}4nmb7yj);IH_5JeI@-1qU}1ynFB~=2 z&-o-0!FSK{O~d&^?N3cz)fXEe{BwOooa=mO@u6|kgXA=k8hP;(k!$923 z&tJZz6ZQr9C3|)Q_xGpiyVEz(Ku&x8>kPg3kBrUHd-{k`fEQlR@hRB`e?eK<55X(aO1^8r`S+cG^)rFD zs=&oJ@7|XuOJ@LI0@}sv@9Er6)J&X5=XOf%#{wK5ABdZ(*ezwNOd_k(OJK2jWwd;(`N!$1X|pqbC(`onsL2L%9Lqr3p0sYy8(}AzSHqH z| zvLH(8yx6-csVP=ya}l|oi=Y&#^?o`nQ*AlCnaFEiRy@#Q{!)~p0=xbZ-Y%nQTv&J`_|j)`f$YG?<@p_2wqsY{&$JN)&#XMXsYBJc-Fq=H zq6s=FB&Sg~OwH1M9o<#@hUg_>+t@bWFA@pA{uGpI#Ss#lKA=iFBt7zq!Kh}${Z_iS zcT?MvCmxH}qc#NK^)o+u^gLeKLKUUE7dVP4y>;OMm!a&7PoVw`X*NVZjn4MvKY)Me&WflJ}+G{xbl+Z}%@J$D7cj1rP3KX?p<# z&r?z_-|(v~0-Z{)N~H$L;IxMDgdV*`;b_(hVxN&H)b zk}rk0O{ff`wL9|pGiZRp0mP-H4w#4ggze2 z3&XZ3%Xgh1)SBl$J#Nbs$T4}QMBy3Dc?|JPgE!=;IB}48m61Zqr-Ee+efYrzhfRjV zzRzOWV`T~W2!@($PY;_UzWG64zOuj9AVJWS8Z11A<6CG#7$fyVi;mtWGtv<2)yZ0D zQ#W^s6tjHVGk>f$6D;62v<`D8#AhE}Pdz&qU(eIeM%VYLIOIyLL*b35n6$+FEK^?B zu+q$0uM&)qOWNjOsqO#5pF9Dm=MZh#6mAbh{7W=qgz5+KsXo|2AdFBE}>z)bA%8(8rSg18hKMjbrLR-i%qZ45Qz>P?@$w00jET%#kDGLv34jAUVEF#?Pn10kMTq-cdGDv)?F0P%0 zIX;TY55r`OUW<0xofr2 z+!06JmB;KWwr5Je^&HP6I4F>j2Fu%Zb})pk-}SDUY0@ONOH68sLyjRC6{6>jx-W#r zDHWy`%8)XtbB^a7pb4eGMn+kxmj1zU0u(0RN-64hYhQJ7MIMApGE!_MgRK-G~2Ifx2yq6CX; ziEIaPM2;_#)J25U(QVJMTKztERKF?A>J@g(!u?op2@mcFH670;{zF9=?_2#s*Sd&u z<;s--sqgM@VX0Gg&P7l?S(1T%_jPI&@-P4!!6=Kx6PHc@>c_{++$P#buviqdc=;#L z?4FB!C<7m8GO+XqB1We|zg(Gx9xD<+$0WKFPI$ffv?y@mhnU2xc}2q=>{RnR$P5VI z^6aMCnCPPi^Nmgz&dw6Kzpc&$R24FI$NzhQF6s>_p|+XB3r1Quvb_~sh#M|dli|Ok z6dMrswCZ}7MU~F`a4{_r7ddWyY?|3*+TZV3qwHovPm6zI=nOZ$uR4#lmUYLS^o!+| z*f}&J?6rI95CY-dLff=NMHX6nU?fr`hMN5x8RCpIh5Z<2eUUEP*OlDO29>VV^obB? zn`4E;@EMENhbSc>B`%Kc{Glgh&1mJX>4-36P@i(_G%rx$Nf>P7LD?H;fNn!D6P}%L zj}aF|r`EXfc)QVMuZvr%&p(|Ru-^D6A5!5eKuMQUvzZv_QmFEV;(AqD)^*XMrA8P_ zk;NJhdWZDy9c4RI2d-$#>S2qb6#dP5*jUmMlPuZc>M1J4v?hS*-09;3f)ObGK}%Hb z_D7a{C)5t7Z*kFa4xgN7!Puz;okD76 zp;5^5y9qeW7%ib1XDoCMo|cwX|1WF3}E_EjUE8Vo%> z?l7I?47M9V`)2g3*tW{IM1Eja;2HHSJ8D^;NfBUCJmS$uyGfYt2|jKCi`%N`U*Zm7 zj}Yh=O>a8PX}(xP9&^1@E;cIy*v=PYb+8asM>95>*?5k*u8aZ~xHEJo`y>}9qAUugl_=Uxz*@5F${;cnYlJCz8 zxz+F~BYA{&5<7jOka@iS!#9{!Mwvj3KrKlaoK2iU4tgTkhR4&aggex+rui|y1sa6M zh~Wn{JyWxSyma;Kh#Gcjly{l4(y}kqq`Pv6R`f|ZWM}EiYa;rEks)0Kn-*4~{Y)VCv1+n^LhBFO4J_OpK`7p0s4bzpTslo)QMc|G4HESaPZN7!{Fy8MHy zbMDLsl{PNo>y*VmoZSjRwKm!fm2ZB}&>Bjy&{ppx8gVEsdHsS|Y2r@)5_iJ(%Vh?yHHGNFJaZJ84lOZN1wKAZPL;pEOw zk8#gjJ1ys^(~Z$tZ1=-5^V%;S5eRl~uAu9M-X8X_0Aqr7b4-L!AQ_4aeTVoGwwwic zD!b`bRAL(HcN4f~R9sr!I!f5jQWUsH3JBeR6lm?l2qgN)-Obyh|qu@(h7- zp^_wQFLx1W)rS+-VAN_>;lUI!8YLe)b~u_}1VJFWK;+EzVWFkKgVyN{iZps>^!2y< zl(eNcn22Rlxb)}*HFLu#F4jVVJZ<+(xwRwpY|LnUbC4M5or_tO;>8A+z6bFbD{knp zc|`d*#=I+0;L8=cSX*fEo8!Xu+Dq8MAzmsgMy02uDj(kG4pw=F1s0E7`)qFZZpP%0Td~fC+5Ws zlh#WY)m)JBE*vn5<0BVJO(8ySfa3LEF(D`w{N3p;f#kM~h!c}s^0nMS1n_@EOR(Aj zG{e3rG6s6E4`tf-CtU=F{5DA38o^KwV%2m5rI>kLe!s@b;bF~TwYX=+?tUH>^kd|8 zQV&)U(6ll~ic5T&Q9ZlV_z$XTl0F%d+7gw67FR)zr*9GKZ0RlC?OJed>}iboFl-qz z_MgvltB2#hou#@FH52C@)Bo_1Qy%Sx#NpO2Y>|p@pDdXYd}2FH4eiZvoTexjyTW^+ zh|`N!YqF;h!WHuPo~3%QK37R$b_`Y;GcZ~WWj+gtCz{X}Kpsi*_I+Pp`}=F{D*VVN z+vzAFh3r?Qgv;6x(dsyo$Bz&uMvb!;R(dt-s!m&0=24ip2{M2~SgHmEQ^vl-GLo$oHz13Uk?lCv? z)e5-kEx|%1&E(wSNM2ab@YWDq1p0={GCw5c+qTsCEeX`X!4ZuS&(GtIu+q2BXDMM( zSxCn64%j ziRM|0aG}Y4>&;=>&~Q(aSYQyy$Ud#67@ww}%-yl1DH8s^E+;jUyBSgwt5aY-1N-9V z^JG^;#pvV}0pf5r(J`0nv1(%i5bE~#gbAY%i+F6@ERB>+E=3=G$Hv7gnvlQ&X5Riy zv}U_^Gu{45g4p`qy(JR|MbzNyxg^H#X!vyugS}^mMV#@054q6bJx?=Td$2$6DeIg7 z77r%XTk3i|O}mhVNm7-LrPt+DT0p29<1mNyia1_Cr?>B3jK=8UbXb41aBSH2@_5tr zC?fQA4VwFf3;|N82h=H47M*Ct^UZNC-t%yvlzI+ii|`QYWZ6on9r5agiOGQ5J1m3U z3NCf3PdcN_l?P}9CEw*Jk2zwR)N&dYM4GDp8r+%a$XNZ&c-_;1ViE4&Z16>!yL zx8aB;o{mrTMx`gB_3HlpeN`WF6F7BZ@x3Ml?{#p79sr7_au_v;VQ-u(ZR(W%mqhl# zJgYvySrjdM^X|o%qNXhqgL9}R&aI^<7N+V|^Uj&2J@^P+thsjtEnsctr!M`u)Ama8uQgYX<}bx^e`Ugc9Q+AM%z!MhZ#EP*YMPLqi8I z?(FQ;r!-UMCM{CYRj?8h<39CT>~!67pZ)m#ayGrxu=%{O*vwt?U46duqqGjIq_XJ- z9v8Q4@R2?uJ+?{Zn=Ro!{ZWw*3}sOg?$+BEIb(f#@{bE?QGnj8$TXpbmll6+I%Hl| zqlz548BJo4!@i8fwq9J3k;q65?nV26eUkjG+^uD}sL0k{9pz_$gHym;gZY&fA5vJw z=>|Rg3z~V>y6FyvZK6(oa|SP7v#wOltg|b*?|(rov22s_pg;0z-OTe*QbX;SwTh=D z_KNUd(;{J>mKylp6=WtG}J#uIA zDSY9=4=)5QUle-tBmk4i2`vE;vLB!CQ36PzU*6;oIcAg<&G z=Rk?+t|dwS8a`;!nD}|jFc?ThN9GVJfZNT~RBSeNU`Sm=H=KRD|gk>lIye5DRo zpul_*9$7xjuCgg6~;M2cUZlTciP4Yn&Q^pDRH(o)LJus@}{Vo&@^wYgR?2yzT;LM zpLAUi)@Ha#?xObi02(hLb_MA7&ZX1u9w0C);d)o*{`KxeMHP@X4S~7TH>B1322AdJ z8s=1lO_;?)<0f2-6e-SZ%Yecbr1~to+0je>w{U<@QP%!X7Mk^$V+4AJw^EB@=?1h# z+m@D;>87EWUKGdQKD@ukr_qnU5XE`^r7*h3bUA z_%1Q^jolEIOpoOw?%qP5=^@iQ%lw|+Az`<@-U2zc^cWU3z@FkxQZA+TK+w`_-xfQ6 z4s__oeqt{v`h^fB2bjTraLbp}Gx9}-s)Yxb4lVwP8J`qg9s>DUFo2QmwStaHge2(r z+8&(V#Ygr3h^+I@jifjo0k12s8yF9_hQBh5-L*5l3T85iNgd^pEu(G|QDCuzAORfO zTiMDOJKBRBZp=W~_+-_^^hWz7T$c$I%^=;<+Pv`H&qJbIo5xlg=%=ZwFj_Bm|Cr%1 zdnf7J{hK&zA>mj9u^wm^m5`QWv@^)};qr#r{BsI5LSsKTtmsbOx(J6j!@FJ>s~7>m zSrrRcv);$XiT@21MDzdBpZWfIqQ0huKW;Rl5s`ZD>5jG~^VD5ltTd^EoPI)ZxQwI; zlsorcq)+Be*}~|{El&iEAMGH9R@cJZ-B4Qe3Eodxb*JzOfo=Ydt?L~2fm*FyH1&ol z5e#Xy|IY0u6_vt~V+iPh)FVI`)p{5vA|5lyUr>U*hV_YSw2ut-c-0*r6+`m;;Br0M z?`9-jKGh+6gbecZQgA6P1Ol^C1&r{Yg?Kvc2)zsH{{_Ha7B2}PB%cZj<@KnEXzYKi>1lp`WQEa%CA*E;YT6`M7N_}8~|UK1R0n(ts90S z(K9u13tPl~M`bm?B9U*moBk}bOS@{mk9IzwO_(Wgw9+sXk-Lb?0e@Jr=H~M(I6b2n zWAsYov#$rmM{{G}4_++{EU{sIjvF^S!!Lb3sZ(!Wermm&Fk(i%p3c-|b&FFso;fIJ zc8f<7V5c+mya?en<$=CAfFij~qV38iBQ|qC(eL?@V1_+SeY*+=S!y?)b$Qh@Bw@fI z0t%kQlWQl)V)c(`J_szTpW(e1_DA3g4Yb- zx4!}$`>*@2>89Vsan z@e_IR;lcIvbTa(V{$SKR&Crev5|z>M%ij8MlJcVcoZpdypyw;-J~~H(v{sxmpn5?%5{~{f38qF|W_fC{r*xvo zuaX`I*4Av^92V$W9?f*VZZjbGAJD3|haV3OJ`3#A0ufD)N!hoA^-I-BTJULrZH%UZ z1$Bur);y~HOFM%bM)BTCjz%AP6YzV}D;{Cg`Am!&s|I8DP<`$ulQA+%@_86^rwY9t zfcS1Rn_s%_uRBtQXA1jiMQYm(p6$FLW9o&jfHA13qo@yE5ttIF31#XAG)n2H^&1Xm zsWz#>DcH%+aQ)N;2~_EdszI<{-#CXB0R**QJ+;o|`D`IoGPJ6gWW*w4cSDDWZ=UK+pzpOXUUb#TLQ-y z1$1HXYYjyuauFX2;O;!nEN-z{L!#9**k*3vDR-nu^x4kA-gmo1re3=Q=eOv0#;b8| zVHr`)jsw7a-vta>A&3FxU~P#{L2ogt+Tn}*nyZY8d#C> zV?D0NG{DpHGEv(T0r$!lY!`)-5r6z${VF+doJUGYWSy9e62&VV3Hjl0yCo3rCY1Ys z-Zw0_5}@XPw8F1-U0FpxxlW<^;zO53r-pFr92L(id0OPrphLYsgtk|M3Z@&T%$*La z^Hz6lCyAfKr?z=}Z$|O|R*!M&{7&ITdNt0kP-}Q*Cu%MC+`u}Z_q~~y^Mhx#bcY|R z`d|`ZSe;}xgEyAWjzfd%w3iCb9tN!b5ii^O9jZ43XVD{Xb;gwOBuFtc7O zZwB-OBS=I7j{>=}Wsu^T+J~HcsAS~}unx$u--n%V=ny*pBOtRWf~UIjVHw$`7Bv1* zH@r?oE=l0$GG|JRXw1Ab5FZ6P#hV-4#wjIYW6!Xu1`zw2)6f>Sp@hMXet}0o5{|!ili~fs6=tm ziz1H6jPMQz6**EpJJf0l`Zkm0dO?8JQ_5`Hvc>;3Y5ry-C=^lk-#f!B_6*$Z8kgjC z+mK*iiy)rvd_lbTs#5g5)k~4~)c?JEX3v`SPW`m?M#1y*?e8UT4I20C8j*_ZBMJ}p zRxaCSur#OlC((C;(xX%%W!}pZnE^vchSi@Xe3FYa8*_)%`<10!X=04TuiZ@{)cJ~x zhjBlT!EY_tH;8+aT?hOPEOjMUrWcFm)2Nr%9Tx`ZvqGrzh!rdJY;uF_hhUOUP#IM8 zib5p(Ia;aSo+p8J{?5Wvc)IyS>x$D42<_-)5}QR07XQXWjh_}-C=+(8{}zX|?ptx& z9b<-+ThtPhgLx~yuh<*0w(y;w@#jAaV^k3Juk;tBK4!zVdT1Co40ukb>6QJ>rqTSx z&~W^@`JDR^xJMoS<%_`mNnrY&DAXc`9i1wzmvvY}ASZw0`DguIILl>lkmv#AndJ}3 zFb@X?C|FD{8Wftp+rlGAAjTx#Gb4k(1s|GWe?+N-1crmo{O~{!E}S`>a9U4S%wS{4 zTk=NyBUK^*IIs&JNUYSBe0g-F?6E=8mO%vOaHMEMs3qAi9agOzGy;ny_ufuUhy)|K z*PqM>Q4$P(E|5yHt zkm%aGBTk?hjz8tvM+acS(sc(=^Cm7nBS)b$Z5tR~;flz%)uFFc6{$qDhc_a5f zp`am4uTzM9kDW)!JhZ|(br&W)&`)wQ*)QP4Rm1({iF-O7UD<-k(dVG z-~P|)fY5h1(&)qw1|u|)GC57IWE&>hBxpMp0`w51A&gQ71{uRd+QJ^3HdI~qRQ=_! zG-1Zo^-WY8EW#I=gqf*HLHnidEy-HkDz;z5Qe4XK80FgUU68aloowO(XvQCy6zGi7 zk{JcaiqLI!HYkA(>ixf##5)2t!HoE+i8jwGj7}=;7NbpnhEMoAj9IOT>0Q(M|^V$f231qRQslAX7|J5n0S_DSCgQHS`H{fn+eO6u%=ZEj$+IP}sal>qUD}xf#<8MN?IqZ6y|W^?Cmq2{ zAJUCGr>Q>wax~rIbeyuMO+zSVi_3}416~OffU6HrhL^qO%%{8HxnA#E-c_#R?oTs+ zSObjrgHMEOulqpnsjs@Q3x}`fOQG%b8zgB>N*1m^-@a9lnBK`c3~P8;2b{5=Bc`Np za4-K|i*r8%(oMu9K!$?!79v3XF`14D=!R6g7T^Q1|EdWomvKR;dsm2a_09y@_Cs!+ zzwdGSCS}e61`vQ>-S}(x?hfP{%&0uZBs66ySp>BKVDM2?(Pz8zMwNu%y zRtDJm+^P&+aWS7xh;be)-pV^3qhGoh+xJ2ajvQqrE)Q; zD`R3PL#@BTdh$pi^f_)GQXK1SDB2LB9WwBVcg+dVf8uzhih zvRAQb@OeL^FXz;2+-bDewwe^jL8(T@ucg1BcM<4VRc7mgvwJ~g@`tdn^X}qhzNHYs z9ar}B;;j2Bi9yvzqEH(0OyH0f$$`;(4bPkcz@9hz$x}FoK%jcrpaEkJqV#y)Ai6 zD3v$*UzWUxvHqmm;mDY!g^Y{al4X?vf2}H}ID!U*ORT&m(#EL~v>b8){w8|y-bIv$ zZ+bEF@o;nT5MoHkrZUlZ*lrRSpv`)149A2RzF9M{!OX`rCM%;>iox6hAM5|d$craj z-ga|2ij<=6m#uu#jZ<86VsJ8W18*}=d0Vd#YWvV1{_PWZd5~7x$bX5@z~C968y3RK z2xZHlfk6n#S3E=0jryM$eTQ~U{v)Rr>1;l2?$e>3j|F)2AkhdEOgEJgbf1FWf^x73 z({&s5=dF(`tisd{^BnNNb%)EJ4D&2~%@Gxeb_&CU4`_1lFx#pNM@N~pkT*6(f z-PA(dL6;JgLm;=P@01ig1);gw8hqHOeT&}$Tmj5+NCQho5Jd825lSlVCzA(UMbbf%} zXuJ-I(Y7b<0I6CZ8*N9#u||3|)a($M*8(IVZiGg**(s~4Szll;%tMP&E+* z;1n!$oW>EqH@%s#>@vm-P<<^x|L>w)!_1SIJVs@*H_FahF`lA5ycSIDwqxC5jk5qK zE26+^B|zN0sJ4RmbQ_0)Kv^KrkJHD6cFjSr75u!ZyI_Ggi!|Y90iBb87-TO42`5nY) z%OC!o>-hN1ss8=-tfM#kvKAwoJ=}ZW1x*aLP@9hR5W;>v)9fndLi}@^r0-)2oIXA8 zSM02!n8l29l*t&_uMuw{C_|u)ysC~y23IKewx!P%gFlSfNOp>VGjQ1?keTv_^UIb= za&bObdN-_wPeTr~e-idcuN!L3WpgH>N|h+<1tsmLGP|FEGl)mm9Sy#Oq6U;rm9XPn zx4fzZx*{B6(#@kv2v6kvX^l**|505j1zjaDeQ$8Gn)O&P0H5YW5`++_O*n&F9o_g0 zJvOJBLFCDTMx<*~hOpu?I;U0`F|wjVvDp}?#6pE1*4 zEypGKIgD_Xw_^}_-@*QFlm02SA%x(Toy~?*kUP;O2#)z^3@`~hCkXzB!2a4JoqCj6 z;O9-UArc0APrZy{m$68gSWWGO+(^y?aE%%Wc?6s%jyUW)m&U;0zF?p$WEj(?(0T~* zT;L^n?rXBrCBsWXk;F?`m=dI@P7dx0qWrg;!X_THb+3_DzQQ6PyQr{&7_j34(g3=l z3o;_jm)Y7Um&2e&wb4^FY1{KNxrZ2KPGM=)V3(@!&k8dWe*1Fb8NSZE@ObL$l~ql?%i)1? zOFi%if~RUz;-xE&%XoXzLS?zydIx`Ak)+V}D*C3($oEyT%+1KVk8QnR*~@dvl12+G z705bE!1a4R)YtoS!s{@x)wYac4oTP=Z7VD4o;Sxn8Ur|Im|9G}6lp)%Zv4M>Nm$x= zgFJ&4bnv6+*jMJzK}R3#uA4$`flvg*Th|MHAofE#A-)qBL)my8F274&OSu?zdWy%v z!4b>+NlAG{r3N3**S{#+O?4Em2><>5HdoGhbFjFkx*3yGUjSuO#IY}C!q@pnYt^+D zh5~X`{KB`66-V38*XzZhk2)JN@kvP?pJ#noCNOmomF|oUZwA885+Emfa+&^8zmwdl ztr1l*#-$>CKf^e+{JJWge+7kZGUWn4cTr9W8RPLd;cRrQB++|06m?!?hN?K@oLe+j zQL0~Puy%fQudeyR@zn|Zyce5cbv)O5ZXnYac7~?6l={M)^JiYW`F^1E{XKjz`g_Te zG%uxUl$$R^j&!lh(PFOn+a2_p@(c1nvU$87_ZfQ_$anKyY(*NerlNMk6TbYC(!+sS+7_()*ItsQ&9x`!^HpQHQki>`>yN4pr_6{c%bWt$4t* zgR-kx*i_|?GDL|8L9PZ%BUH(>c=txTRC-AE>C2^6q|BE)snPSLi-H_&WF9Jy1Y1tr zFIwCrPblgfhJHkat`^J{?<~u{(vH{J_l~dnS_8M}IhrOjB~}6_QdW$U3LneTaL;ls zTH+V@eSO6l2O|Wf(KDh9v*ViIZ#e#e7IP6_WC{nZB2XcbMF>=tk$hk zouY%TBWnt;*RjE*8tHjc(o6;C!(W!J7+9`oTsIK`(ZFT~aYdH+%o%oR_%*2HAvMms zzH?m6PkvT7Hvz2Z`rUi{RU2Y|=t1L8QHDMDNf9AM)j@*ZN&G_<+PgFSALID3ha`$W z>1JOR+68(kQ}?x1{vO688~@Byanu{zSROsq5hL3>A;>E^ybR^%g-5f`ejHs*vPT#- z2rfs?Lz7QH9O(CoxsSCHvNAah22HIwekPQywo0!tb#p&teH^>RI;YkPxX@rm>~ubN z&xI9;t{LTedl8@q6-i#mHuV&J<`%k!)TxsKPZyiixg?& z4f~mG@ARb<+Pklr(z2PF7it&JmAi+p%A$>%)KYdL-=D`? zxa;D~n$_w)Fy(5Ua(8sCuNUm%3=?~WK%=A;bzyX_7hRo>D`U4-ds7R9lFGluH{Vqt zyW`j$;-Cjz;GK9?G9uNn9e)JYt}(zs^X$gXEX{k~%3j;=CAf-+u0dzR zzR{LQSShTTs|14qNLX$R=BIi#;cKy`d9(tH#E<+@ZQ>|=2;=1Umqv-l&LGHZvJ^+_ zb?p$oMV}^M@5@r!3NEq>iGcJ^VDcYx9z|)s(uRdYa}dK=+PY+Lh%oARX^aWbWSsSB z*5AT*ffIvW;=yVR{wuTPX{($XD)iZmO+CS%akF5*#|Q|UzBdbsGB6kb+1n43)2KJJ z;lHq)1owC{=Hy>|?%|nz>ZS5mIuCYP%>(tWl;>QZK}D`}1Ihhw#Rfcbn_z$Qi&>nS zRFL48(Wn@P1h*1g*T~e|6$uAzoVdfd1}r6Z9@T-1BYR1H)se3^2z<`U$%}MfQ`@00 zJ0seCJ?uriJzY7ykEq#P){5I%l!_X!7E$VGZyzHYa!z(ctoE|LYw482!`-ALB>Po zTt98LLZReum=DX|7fw_*Pvq3OdG@Jyi)$uBv;;_^m?j(!&Tc=BJy&tv8F$oJ!@H0^qb7wJGvHzGCTA094TYky?42^s(F2*?KC~(y@@O`87O|W?p_^{K)Ve6? zg@$%&r24E|I=W053G3~^;&M99bY`-`0rTRJb7@-|HWePk;sR_CQTZpX-2I_n&MHLv zY;ps2CJ{WZ`1A)nTcj2IF2P_s+-^Ba&BdKxkPPN32fxABFLNi z|2e398imfZHc1ylNJH4b^1QeQ@#G_l?KOhCx2s_}D0@Si(aYHID9Z>|wFJEOhWS!b z@HOW#jz?%IOq7W94G-A_L@+RWNvfX72)DqJ`OnW6a+cmAiq?`;klHwj_ZO4lTks6p zwPT#<;2P(F;^<5Bk;W(nrH?vk==Xq;lEYKUwQqwT4JB`DchLx`vaK{Z{cyLO%`CJ4 zEFOe1e8!c&BQ) zkB6C@cH9mA_>{A4S_or_UnW4LM|{Fo1BTr2=&z?I6v+q|Ek&!qr% zzarA?St}zf$F7SZI3-Wh7#Q9zT+_Wh>_-1#4<y#-n`3dJzO;h%K0fkh z_!dIe zU^RkU2r{I)02W_d$JNZXz8AUCY*o)sSMtb!XJq%_PR$zb)I-eLL&d|JF1)U2$BYkV@gC&YV4NJkYkG=4mAA{e4w1hF z&LBJIP9syXjLCX)4CLP)J3`*~rtySAQ%gm^Zh|V_to)>0nYHey98-SqG!9eFsJ~}k zvkZ0L&p_fr>Br%;^T`O+LD>*+uSJ4){Krz?>dmyGextVoqJL@d=-i5rZ6CEW7C7n| zz6(LvlfS-3cGERQLHT{yn+)fXl$-%AS%wVl7IpTAsnt-F%}PNlPxJ-T*1MKik$@aT#6 tF1mJn0Wh$NR$po73X!FHOebXYV0i!&S~Q|M^F1s~Ovqm#Q2t!l{{adj);jKtYKVL{VDsK`01EhFz8POWUx6yB!HUIJ zfInVaU76HLlN~BAf7{J=<`6Md+rkFJEcyAGfhN>^{Z%OrPDF}>(~=uUQ<`0Q*|wVG zrXNSxZzIG7#Pd7_*OBO1Gpa~+XF5!LyhWQ>hBl5>6kaDKLxWhKgH8l)M>XJE`t|gK zS*~Hr3AH&;!>S{*MUSKJxF(j_O20)9-6uytuuuA#T-+xae-P}Gw8N#+nPj+B%Ec)H zuCE1dNWf(ouN!*4VW`l=1XUBpopijt#-&2Il#7g$r>vAG`Vf1`nPO<6$5gy(3I44?s;5?>vy6J+yL;tQ*Zvhv;FVqAC69Z@X6^vFKzg3lJ!9;2`G-cc@y5>BnQuqAosTxI?mPL_ncbxEoO|H)YqRIxEl~Vo1ioLw z9|4?liq{@iE?%JYTfyU}m9x+Mu#r1^o$-g1PUcAgx8BDC0xrw=iu*muuknxf?c5)6 z{eciJew<0xGpBa_?Im1&D8Qv89OZL@oa%oKZmpk@fApjBo(5uEX_vVZxNeS%(_Wb0 zp3m1E!ck#6<5Jr2L*I4uo%eE%zHzNW&81%od(lp}=eJwm^-gh%5#thZo%p#Dv5v&= zw0zEJ_1(N%(9be{o}Yj7bB4WK*O6CVi1i)5OR`7#@*1w9yj91QmDqNMB|F2uouY9H znQ$2;e?Q-kVU^xY^D_p)^j6!c9Uf7fe2++WMg%+IYC5u+9SV%l3&WtZsgqpj_Z`!skiA@JpZ@yyI=B4`FX73 zilKY&l?Z?GI!okls^qS)PVjVPb%LK@{<}S|f34mRLH*8M%tw3S_n_pL@}-%XqE|~h z@jSQF?fDh$WEt<4#-MKP1$?*nPn18U&HUc1eK^7nknHqYe=QT}$EpAGeXt2weHa8J z)vv|+wA;_>*nz%OrKE==QpOBkav^T%IS9~ zfBnk(4=7yEYp0bEe)D*k2M;Mx^_EPFxafINu6yzJkNQtrJO5p7YLlMZJ^G%-3zVdG z9xdK~?Z+qY{gkzd?-7-!f8KibeYEc6RT1t>CSb_X~0EV#DEkqem3CeP6Quw+*8ApS*vf_M5yv<^3z~ zKleY-X{fQkb3FbyRBaU8Cr<3Y`TL09WkUC+i1Totq~GoPPm*(ot>c<$0` delta 1435 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