From 9f1c0ab40edd9ac1ec72fc595cb9179d804172e8 Mon Sep 17 00:00:00 2001 From: aadhavan valli Date: Mon, 2 Sep 2024 14:46:49 +0530 Subject: [PATCH 1/9] CHANGE_LOAN_LEAVE_SLIP_LEAVE_REPORT --- app/Controllers/Emppaydate.php | 29 +- app/Models/Emppaydate_model.php | 117 ++-- app/Views/addemppaydate.php | 529 ++++++++--------- app/Views/editOldemppay.php | 872 +++++++++++++--------------- app/Views/emppayListing.php | 138 ++--- app/Views/includes/new_footer.php | 162 +++--- app/Views/leavereports.php | 266 +++++---- app/Views/leavereportsmonthwise.php | 252 ++++---- app/Views/payslipgenerate.php | 463 +++++++-------- app/Views/paysliplist.php | 199 +++---- app/Views/publicholidays.php | 400 ++++++------- app/Views/rawmaterialListing.php | 293 +++++----- app/Views/userListing.php | 242 ++++---- 13 files changed, 1903 insertions(+), 2059 deletions(-) diff --git a/app/Controllers/Emppaydate.php b/app/Controllers/Emppaydate.php index 98423449..d71c129b 100644 --- a/app/Controllers/Emppaydate.php +++ b/app/Controllers/Emppaydate.php @@ -78,12 +78,6 @@ class Emppaydate extends BaseController function addNewemppay() { - - - - - - $EmpID = $this->request->getPost('EmpID'); $Loan_Amount = $this->request->getPost('Loan_Amount'); $Load_Issued_date = $this->request->getPost('loan_issued_date'); @@ -96,13 +90,9 @@ class Emppaydate extends BaseController $Remaining_Due = $this->request->getPost('remaining_due'); $Paid_Amount = $this->request->getPost('Paid_Amount'); $CreateBy = $this->session->get('userId'); - - $loandetails = array('EmpID' => $EmpID, 'Loan_Amount' => $Loan_Amount, 'Loan_Issued_Date' => $Load_Issued_date, 'Monthly_Due' => $Due_Amount, 'Due_Start_Date' => $Due_Started, 'No_of_Dues' => $No_Of_Dues, 'Paid_Due' => $Paid_due, 'Remaining_Due' => $Remaining_Due, 'Paid_Amount' => $Paid_Amount, 'is_Active' => 1, 'Created_By' => $CreateBy); - - if ($Loan_Amount != 0) { $result2 = $this->emppaydate_model->addLoanInfo($loandetails, 'add'); if ($result2 > 0) { @@ -111,8 +101,8 @@ class Emppaydate extends BaseController echo ""; } } - + return redirect()->to('/emppayListings'); } /** @@ -123,6 +113,7 @@ class Emppaydate extends BaseController $data['emppay'] = $this->emppaydate_model->getUserInfo($paydataid); + // print_r($data);die; $this->global['pageTitle'] = 'Edit Employee Pay Monthly Details '; @@ -151,16 +142,9 @@ class Emppaydate extends BaseController $Remaining_Due = $this->request->getPost('remaining_due'); $Paid_Amount = $this->request->getPost('Paid_Amount'); $Last_Mod_By = $this->session->get('userId'); - - - - - - $loandetails = array('Loan_ID' => $loan_ID, 'EmpID' => $EmpID, 'Loan_Amount' => $Loan_Amount, 'Loan_Issued_Date' => $Load_Issued_date, 'Monthly_Due' => $Due_Amount, 'Due_Start_Date' => $Due_Started, 'No_of_Dues' => $No_Of_Dues, 'Paid_Due' => $Paid_due, 'Remaining_Due' => $Remaining_Due, 'Paid_Amount' => $Paid_Amount, 'is_Active' => 1, 'Last_Mod_By' => $Last_Mod_By); - if ($Loan_Amount != 0 and $loan_ID != '') { $result2 = $this->emppaydate_model->addLoanInfo($loandetails, 'update'); if ($result2 > 0) { @@ -177,19 +161,16 @@ class Emppaydate extends BaseController echo ""; } } - - - - + return redirect()->to('/emppayListings'); } function deleteEmpPay() { - $EmpID = $this->request->getPost('id'); + $LoanID = $this->request->getPost('id'); //echo $EmpID; - $result = $this->emppaydate_model->deleteEmployeePay($EmpID); + $result = $this->emppaydate_model->deleteEmployeePay($LoanID); if ($result == 1) { echo "Deleted Sucessfully..!"; } else { diff --git a/app/Models/Emppaydate_model.php b/app/Models/Emppaydate_model.php index 17bdf4ba..5d65ce5b 100644 --- a/app/Models/Emppaydate_model.php +++ b/app/Models/Emppaydate_model.php @@ -1,11 +1,12 @@ -db->table('t_loan_master') - ->select('t_loan_master.*,t_emp_pay_data.*,t_employee_details.FirstName') - ->join('t_employee_details','t_loan_master.EmpID = t_employee_details.EmpID','LEFT') - ->join('t_emp_pay_data','t_loan_master.EmpID = t_emp_pay_data.EmpID','LEFT'); - $query =$builder->get(); - $result = $query->getResult(); + ->select('t_loan_master.*,t_emp_pay_data.*,t_employee_details.FirstName') + ->join('t_employee_details', 't_loan_master.EmpID = t_employee_details.EmpID', 'LEFT') + ->join('t_emp_pay_data', 't_loan_master.EmpID = t_emp_pay_data.EmpID', 'LEFT'); + $query = $builder->get(); + $result = $query->getResult(); return $result; } - - function deleteEmployeePay($EmpID) + + function deleteEmployeePay($Loan_ID) { - $query = $this->db->table('t_emp_pay_data')->delete(['EmpID' => $EmpID]); + $query = $this->db->table('t_loan_master')->delete(['Loan_ID' => $Loan_ID]); return $query; - } - - - - + + + + function addNewemppay($emppay) { $this->db->transStart(); $builder = $this->db->table('t_emp_pay_data'); - $builder->insert($emppay); - + $builder->insert($emppay); + $paydataid = $this->db->insertId(); - + $this->db->transComplete(); - + return $emppay; } - - function addLoanInfo($dataarray,$string) - { - if($string == 'add'){ - $builder = $this->db->table('t_loan_master'); - $builder->insert($dataarray); - $loanid = $this->db->affectedRows(); - return $loanid; - } - else if($string == 'update') - { - $loanid = $dataarray['Loan_ID']; - - $this->db->table('t_loan_master') - ->where('Loan_ID',$loanid) - ->update($dataarray); - - $loanid = $this->db->affectedRows(); - return $loanid; - } - } - function getUserInfo($paydataid) + function addLoanInfo($dataarray, $string) { - $sql = 'select t_emp_pay_data.Pay_Data_ID,t_emp_pay_data.EmpID as PAYEMPID,t_emp_pay_data.Basic_Pay,t_emp_pay_data.HRA_Rate,t_emp_pay_data.Allowances,t_emp_pay_data.Food_Allowances,t_emp_pay_data.Incentives,t_emp_pay_data.PF_Rate,t_emp_pay_data.ESI_Rate,t_emp_pay_data.HRA_Amount,t_emp_pay_data.TotalSalary,t_employee_details.FirstName,t_employee_details.LastName,t_loan_master.*from t_emp_pay_data + if ($string == 'add') { + $builder = $this->db->table('t_loan_master'); + $builder->insert($dataarray); + + $loanid = $this->db->affectedRows(); + return $loanid; + } else if ($string == 'update') { + $loanid = $dataarray['Loan_ID']; + + $this->db->table('t_loan_master') + ->where('Loan_ID', $loanid) + ->update($dataarray); + + $loanid = $this->db->affectedRows(); + return $loanid; + } + } + function getUserInfo($paydataid) + { + $sql = 'select t_emp_pay_data.Pay_Data_ID,t_emp_pay_data.EmpID as PAYEMPID,t_emp_pay_data.Basic_Pay,t_emp_pay_data.HRA_Rate,t_emp_pay_data.Allowances,t_emp_pay_data.Food_Allowances,t_emp_pay_data.Incentives,t_emp_pay_data.PF_Rate,t_emp_pay_data.ESI_Rate,t_emp_pay_data.HRA_Amount,t_emp_pay_data.TotalSalary,t_employee_details.FirstName,t_employee_details.LastName,t_loan_master.*from t_emp_pay_data join t_employee_details on t_emp_pay_data.EmpID=t_employee_details.EmpID left join t_loan_master on t_emp_pay_data.EmpID=t_loan_master.EmpID and t_loan_master.is_Active = 1 where t_emp_pay_data.Pay_Data_ID = ?;'; - $query = $this->db->query($sql,array($paydataid)); - + $query = $this->db->query($sql, array($paydataid)); + return $query->getResult(); } function getEmpPayData($EmpID) { - $sql = 'select t_emp_pay_data.Pay_Data_ID,t_emp_pay_data.EmpID,t_emp_pay_data.Basic_Pay,t_emp_pay_data.HRA_Rate,t_emp_pay_data.Allowances,t_emp_pay_data.Food_Allowances,t_emp_pay_data.Incentives,t_emp_pay_data.PF_Rate,t_emp_pay_data.ESI_Rate,t_emp_pay_data.HRA_Amount,t_emp_pay_data.TotalSalary from t_emp_pay_data + $sql = 'select t_emp_pay_data.Pay_Data_ID,t_emp_pay_data.EmpID,t_emp_pay_data.Basic_Pay,t_emp_pay_data.HRA_Rate,t_emp_pay_data.Allowances,t_emp_pay_data.Food_Allowances,t_emp_pay_data.Incentives,t_emp_pay_data.PF_Rate,t_emp_pay_data.ESI_Rate,t_emp_pay_data.HRA_Amount,t_emp_pay_data.TotalSalary from t_emp_pay_data where t_emp_pay_data.EmpID = ?;'; - $query = $this->db->query($sql,array($EmpID)); - + $query = $this->db->query($sql, array($EmpID)); + return $query->getRow(); } - - - function editemppay($emppaydatas) + + + function editemppay($emppaydatas) { - $EmpID=$emppaydatas['EmpID']; - //echo $paydateid; - //print_r($emppaydatas);die(); + $EmpID = $emppaydatas['EmpID']; + //echo $paydateid; + //print_r($emppaydatas);die(); $this->db->table('t_emp_pay_data') ->where('EmpID', $EmpID) ->update($emppaydatas); return TRUE; } - - - function viewemppay($emppaydata, $paydateid) + + + function viewemppay($emppaydata, $paydateid) { $this->db->table('t_emp_pay_data') ->where('Pay_Data_ID', $paydateid) ->update($emppaydata); - - + + return TRUE; } - - } -?> diff --git a/app/Views/addemppaydate.php b/app/Views/addemppaydate.php index 835df076..a7b11127 100644 --- a/app/Views/addemppaydate.php +++ b/app/Views/addemppaydate.php @@ -1,303 +1,290 @@ - -
- -
-
-

Add Employee Pay

-
-
- -
-
- Back -
-
-
- -
- - -
- - - -
- - -
- - - - - - -
- Loan Details -
- -
- -
-
- Employee ID - * -
- - 'Select Employee'); - - if(!empty($empdetails)){ - foreach($empdetails as $emp){ - $EmpID=$emp->EmpID; - $Employee+= array($EmpID => $emp->EmpID . "-" . $emp->FirstName); - - } - } - - $js = array('id'=> 'emp'); - echo form_dropdown('EmpID', $Employee,set_value('EmpID'),'class="form-control"',$js); - - ?> -
-
-
- - -
-
-
- - - Loan Amount - -
-
-
- - - - -
-
-
- Loan Issue(d) Date - -
-
-
- - -
-
-
- Monthly Due - -
-
-
-
-
-
- Due Started - -
-
-
-
-
-
- No Of Due(s) - -
-
-
-
-
-
- Paid Amount - -
-
-
- - -
- - - -
- - -
- - -
-
-
- getFlashdata('error'); - if($error) - { - ?> -
- - getFlashdata('error'); ?> -
- - getFlashdata('success'); - if($success) - { - ?> -
- - getFlashdata('success'); ?> -
- - -
-
- listErrors('
', '
'); ?> +
+
+ +
+ +
+
+
+

Add Employee Pay

+
+ Back +
-
-
+ +
+
+
+
+

Loan Details

+
+
+
+
+
+ +
+
+
+
+ Employee ID + * +
+ + 'Select Employee'); + + if (!empty($empdetails)) { + foreach ($empdetails as $emp) { + $EmpID = $emp->EmpID; + $Employee += array($EmpID => $emp->EmpID . "-" . $emp->FirstName); + } + } + + $js = array('id' => 'emp'); + echo form_dropdown('EmpID', $Employee, set_value('EmpID'), 'class="form-control"', $js); + + ?> +
+
+
+
+
+
+ Loan Amount + +
+
+
+
+
+
+ Loan Issue(d) Date + +
+
+
+
+
+
+ Monthly Due + +
+
+
+
+
+
+
+
+ Due Started + +
+
+
+
+
+
+ No Of Due(s) + +
+
+
+
+
+
+ Paid Amount + +
+
+
+
+ + +
+
+
+ + +
+
+ +
+
+ getFlashdata('listErrors'); + if ($listErrors) { + ?> +
+
+
+ + getFlashdata('listErrors'); ?> +
+
+
+ + +
+ getFlashdata('error'); + if ($error) { + ?> +
+ + getFlashdata('error'); ?> +
+ + + getFlashdata('success'); + if ($success) { + ?> +
+ + getFlashdata('success'); ?> +
+ + +
+
+
+
+ + + + - \ No newline at end of file diff --git a/app/Views/editOldemppay.php b/app/Views/editOldemppay.php index c6f39ee9..07906209 100644 --- a/app/Views/editOldemppay.php +++ b/app/Views/editOldemppay.php @@ -1,133 +1,151 @@ - - Pay_Data_ID; - $EmpID=$ep->PAYEMPID; - $Empname=$ep->FirstName ." ". $ep->LastName ; - $TotalSalary=$ep->TotalSalary; - $Basic_Pay=$ep->Basic_Pay; - $HRA_Rate=$ep->HRA_Rate; - $HRA_Amount=$ep->HRA_Amount; - - $Allowances=$ep->Allowances; - $PF_Rate=$ep->PF_Rate; - $ESI_Rate=$ep->ESI_Rate; - $is_Active=$ep->is_Active; - $Food_Allowances=$ep->Food_Allowances; - $Incentives=$ep->Incentives; - $Loan_Amount=$ep->Loan_Amount; - if(empty($Loan_Amount)){$Loan_Amount = 0.00;} - if( !empty($ep->Loan_Issued_Date) ){ - $Loan_issued_date=new DateTime( $ep->Loan_Issued_Date, new DateTimeZone('Asia/Kolkata')); - $Loan_issued_date=$Loan_issued_date->format('d-m-Y');} - else{$Loan_issued_date=null;} - - $Monthly_due=$ep->Monthly_Due; - if(empty($Monthly_due)){$Monthly_due = 0.00;} - if(!empty($ep->Due_Start_Date)){ - $Due_start_date=new DateTime( $ep->Due_Start_Date, new DateTimeZone('Asia/Kolkata')); - $Due_start_date=$Due_start_date->format('d-m-Y');} - else{$Due_start_date=null;} - $No_of_dues=$ep->No_of_Dues; - if(empty($No_of_dues)){$No_of_dues = 0.00;} - $Paid_Due=$ep->Paid_Due; - if(empty($Paid_Due)){$Paid_Due = 0.00;} - $Remaining_Due=$ep->Remaining_Due; - if(empty($Remaining_Due)){$Remaining_Due = 0.00;} - $Paid_Amount=$ep->Paid_Amount; - if(empty($Paid_Amount)){$Paid_Amount = 0.00;} - $Created_By=$ep->Created_By; - $Created_Time=$ep->Created_Time; - $Last_Mod_By=$ep->Last_Mod_By; - $Last_Mod_Time=$ep->Last_Mod_Time; - $loanid = $ep->Loan_ID; +$Pay_Data_ID = ''; +$EmpID = ''; +$Empname = ""; +$Basic_Pay = ''; +$HRA_Rate = ''; - +$Allowances = ''; +$PF_Rate = ''; +$ESI_Rate = ''; +$is_Active = ''; +$Food_Allowances = ''; +$Incentives = ''; +$Created_By = ''; +$Created_Time = ''; +$Last_Mod_By = ''; +$Last_Mod_Time = ''; +$HRA_Amount = 0.0; +$TotalSalary = 0.0; +$Loan_Amount = ''; +$Loan_issued_date = ''; +$Monthly_due = ''; +$Due_start_date = ''; +$No_of_dues = ''; +$Remaining_Due = ''; +$Paid_Due = ''; +$Paid_Amount = 0; +$loanid = ''; + + +if (!empty($emppay)) { + // print_r($emppay); + // die(); + foreach ($emppay as $ep) { + + + + $Pay_Data_ID = $ep->Pay_Data_ID; + $EmpID = $ep->PAYEMPID; + $Empname = $ep->FirstName . " " . $ep->LastName; + $TotalSalary = $ep->TotalSalary; + $Basic_Pay = $ep->Basic_Pay; + $HRA_Rate = $ep->HRA_Rate; + $HRA_Amount = $ep->HRA_Amount; + + $Allowances = $ep->Allowances; + $PF_Rate = $ep->PF_Rate; + $ESI_Rate = $ep->ESI_Rate; + $is_Active = $ep->is_Active; + $Food_Allowances = $ep->Food_Allowances; + $Incentives = $ep->Incentives; + $Loan_Amount = $ep->Loan_Amount; + if (empty($Loan_Amount)) { + $Loan_Amount = 0.00; + } + if (!empty($ep->Loan_Issued_Date)) { + $Loan_issued_date = new DateTime($ep->Loan_Issued_Date, new DateTimeZone('Asia/Kolkata')); + $Loan_issued_date = $Loan_issued_date->format('d-m-Y'); + } else { + $Loan_issued_date = null; + } + + $Monthly_due = $ep->Monthly_Due; + if (empty($Monthly_due)) { + $Monthly_due = 0.00; + } + if (!empty($ep->Due_Start_Date)) { + $Due_start_date = new DateTime($ep->Due_Start_Date, new DateTimeZone('Asia/Kolkata')); + $Due_start_date = $Due_start_date->format('d-m-Y'); + } else { + $Due_start_date = null; + } + $No_of_dues = $ep->No_of_Dues; + if (empty($No_of_dues)) { + $No_of_dues = 0.00; + } + $Paid_Due = $ep->Paid_Due; + if (empty($Paid_Due)) { + $Paid_Due = 0.00; + } + $Remaining_Due = $ep->Remaining_Due; + if (empty($Remaining_Due)) { + $Remaining_Due = 0.00; + } + $Paid_Amount = $ep->Paid_Amount; + if (empty($Paid_Amount)) { + $Paid_Amount = 0.00; + } + $Created_By = $ep->Created_By; + $Created_Time = $ep->Created_Time; + $Last_Mod_By = $ep->Last_Mod_By; + $Last_Mod_Time = $ep->Last_Mod_Time; + $loanid = $ep->Loan_ID; } } @@ -135,365 +153,289 @@ if(!empty($emppay)) ?> -
- -
-

- -
Edit Loan Details
- -

-
- -
-
- Back -
-
-
- -
- -
- - - -
-
- - -
- Loan Details -
- -
- - -
-
-
- Employee ID - -
-
-
- -
-
-
- - - Loan Amount - -
-
-
- - - - -
-
-
- Loan Issue(d) Date - -
-
-
- - -
-
-
- Monthly Due - -
-
-
-
-
-
- Due Started - -
-
-
-
-
-
- No Of Due(s) - -
-
-
- -
-
-
- Paid Amount - -
-
-
- - -
- - - - - -
-
-
-
- - -
-
-
- - -
-
-
- - -
-
-
-
- - -
-
-
-
- - -
-
-
- - -
-
-
- - -
-
-
-
- - - - - -
- -
- - -
- - - -
-
-
- - - - - -
- - - -
- getFlashdata('error'); - if($error) - { - ?> -
- - getFlashdata('error'); ?> -
- - getFlashdata('success'); - if($success) - { - ?> -
- - getFlashdata('success'); ?> -
- - -
-
- ', '
'); ?> +
+
+ +
+ +
+
+
+

Edit Loan Details

+
+ Back +
- - -
+ +
+
+
+
+

Loan Details

+
+
+
+
+
+ +
+ + + + + +
+
+
+
+ Employee ID + +
+
+
+
+
+
+ + + Loan Amount + +
+
+
+
+
+
+ Loan Issue(d) Date + +
+
+
+
+
+
+ Monthly Due + +
+
+
+
+
+
+
+
+ Due Started + +
+
+
+
+
+
+ No Of Due(s) + +
+
+
+
+
+
+ Paid Amount + +
+
+
+
+ + +
+
+
+ + +
+
+ +
+
+ getFlashdata('listErrors'); + if ($listErrors) { + ?> +
+
+
+ + getFlashdata('listErrors'); ?> +
+
+
+ + +
+ getFlashdata('error'); + if ($error) { + ?> +
+ + getFlashdata('error'); ?> +
+ + + getFlashdata('success'); + if ($success) { + ?> +
+ + getFlashdata('success'); ?> +
+ + +
+
+
+
+ +
+
+ + - \ No newline at end of file + dateCalulation(); + + + } + + function dateCalulation() { + //alert('j'); + var loanamount = document.getElementById('Loan_Amount').value; + if (loanamount == 0.00 || loanamount == "") { + $('#loan_issued_date').val(""); + $('#due_started').val(""); + $('#monthly_due').val("0.00"); + $('#remaining_due').val(0); + $('#no_of_due').val(0); + $('#Loan_Amount').val("0.00"); + $('#paid_due').val(0); + $('#Paid_Amount').val("0.00"); + + + } + + } + + function finalCheck() { + //alert("final check"); + + + + var loanamount = document.getElementById('Loan_Amount').value; + if (loanamount != "" && loanamount != 0.00) { + var idate = document.getElementById('loan_issued_date').value; + var due = document.getElementById('monthly_due').value; + var dsdate = document.getElementById('due_started').value; + if (idate == "" || due == "" || due == 0.00 || dsdate == "") { + alert("Enter All Loan Information Correctly...!"); + return false; + } + } + + if ($('#Total_Salary').val() == '' || $('#HRA_Rate').val() == '' || $('#Allowances').val() == '' || $('#PF_Rate').val() == '' || $('#ESI_Rate').val() == '' || $('#Food_Allowances').val() == '' || $('#Incentives').val() == '') { + + alert("Please Enter All Information Correctly..!"); + return false; + } + } + + $("#deleteemp").click(function() { + var loanid = "Loan_ID; + } ?>"; + var i = confirm("Do You want to delete " + loanid + " from Loan Master?"); + // alert(i);s + if (i) { + // $('#content').loader('show'); + $.ajax({ + data: { + id: loanid + }, + type: "POST", + url: "emppaydate/deleteEmpPay", + success: function(result) { + if (result) { + + alert(result); + // $('#content').loader('hide'); + window.location.href = "emppayListings"; + + } + + } + }); + } + + }); + + \ No newline at end of file diff --git a/app/Views/emppayListing.php b/app/Views/emppayListing.php index c0c3e68e..4f236708 100644 --- a/app/Views/emppayListing.php +++ b/app/Views/emppayListing.php @@ -1,88 +1,66 @@ - - -
- -
-

-
Employee Loan Details
-

-
-
+
+
+ +
+ +
-
- +
+
+

Employee Loan Details

+
+
-
-
-
- -
-
- - - - - - - - - - - - - +
+
+
+
Employee Total Sal in ₹ Loan Amt in ₹ Loan Issued Date Monthly Due Amt in ₹ No Of Dues Paid Dues Remaining Dues Paid Amt in ₹Action
+ + + + + + + + + + + + - - - + + - - - - - - - - - - - - - - - -
Employee Total Sal in ₹ Loan Amt in ₹ Loan Issued Date Monthly Due Amt in ₹ No Of Dues Paid Dues Remaining Dues Paid Amt in ₹Action
EmpID ?>-FirstName;?>TotalSalary; ?>Loan_Amount; ?>Loan_Issued_Date; ?>Monthly_Due; ?>No_of_Dues; ?>Paid_Due; ?>Remaining_Due; ?>Paid_Amount; ?> - EDIT -
- -
- -
-
+ if (!empty($userRecords)) { + foreach ($userRecords as $record) { ?> + + EmpID ?>-FirstName; ?> + TotalSalary; ?> + Loan_Amount; ?> + Loan_Issued_Date; ?> + Monthly_Due; ?> + No_of_Dues; ?> + Paid_Due; ?> + Remaining_Due; ?> + Paid_Amount; ?> + + + + + + + +
+
+
-
+
+
+ - - \ No newline at end of file + \ No newline at end of file diff --git a/app/Views/includes/new_footer.php b/app/Views/includes/new_footer.php index 5e0753ce..176c30fb 100644 --- a/app/Views/includes/new_footer.php +++ b/app/Views/includes/new_footer.php @@ -1,76 +1,100 @@ + + + + + + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/Views/leavereports.php b/app/Views/leavereports.php index 65b8294c..19ae4f81 100644 --- a/app/Views/leavereports.php +++ b/app/Views/leavereports.php @@ -1,142 +1,158 @@ - - + - - - - + + + + -
- -
-

-
Leave Report
-

-
-
-
-
-
-
-
-
- -
- +
+
+ +
+ +
+
+
+
+

+
Leave Report
+

- -
- - -
- -
- -
- - - - - - - - - - - - - - - NoofAbsentDays != 0){ ?> - - - - +
+
+
+
+
+
+ +
- -
- - - - + + + + + + + + + NoofAbsentDays != 0) { ?> + + + + + + + + + + + - - -
S.NoEmployee NameLeave TakenPaid Leave Taken
EmpID.'/'.$selectedfiscalyears.'">'.$rec->EmpID.'-'.$rec->FullName.''; ?>EmpID.'-'.$rec->FullName ; ?>NoofAbsentDays)) { echo number_format((int)$rec->NoofAbsentDays, 0, '.', ''); } else { echo "0"; } ?>NoofPaidLeaveDays)) { echo number_format((int)$rec->NoofPaidLeaveDays, 0, '.', ''); } else { echo "0"; } ?>
Leave TakenPaid Leave Taken
EmpID . '/' . $selectedfiscalyears . '">' . $rec->EmpID . '-' . $rec->FullName . ''; ?>EmpID . '-' . $rec->FullName; ?>NoofAbsentDays)) { + echo number_format((int)$rec->NoofAbsentDays, 0, '.', ''); + } else { + echo "0"; + } ?>NoofPaidLeaveDays)) { + echo number_format((int)$rec->NoofPaidLeaveDays, 0, '.', ''); + } else { + echo "0"; + } ?>
-
-
-
-
-
+ + + +
+ + + + + + - \ No newline at end of file + // var name = ""; + // $("#leavelistings").tableExport({ + // bootstrap: true, + // separator: ",", + // headings: true, + // buttonContent: "Export", + // addClass: "", + // defaultClass: "btn", + // defaultTheme: "btn-default", + // type: "csv", + // fileName: name, + // position: "bottom", + // stripQuotes: true + // }); + \ No newline at end of file diff --git a/app/Views/leavereportsmonthwise.php b/app/Views/leavereportsmonthwise.php index a219006d..8ac1c1eb 100644 --- a/app/Views/leavereportsmonthwise.php +++ b/app/Views/leavereportsmonthwise.php @@ -1,11 +1,10 @@ - - - - + + + -
- -
-

-
Employee Monthly Payslip
-

-
-
- - -
- -
- 'paylist'); - echo form_open('paysliplist', $attributes); - $today = date('m-Y'); - $data = array('type' => 'text','name' => 'month','id' => 'month','value' => $today,'class' => 'form-control select2'); - echo form_input($data); - ?> -
-
- -
- -
-
-
- -
- - -
- -
-
- - +
+
+ +
+ +
+
+
+
+

Employee Monthly Payslip

+
+
+
+
+
+
+
+
+ 'paylist'); + echo form_open('paysliplist', $attributes); + $today = date('m-Y'); + $data = array('type' => 'text', 'name' => 'month', 'id' => 'month', 'value' => $today, 'class' => 'form-control select2', ' data-provide' => 'datepicker', 'data-date-format' => 'M-yyyy', 'data-date-min-view-mode' => '1'); + echo form_input($data); + ?> +
+ +
+ +
+
+
+
+ + - + - + - - + + - - - + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + - -
Month Year Employee IdEmployee NameEmployee Name Paid Days Salary in ₹Company Contribution in ₹Company Contribution in ₹ Loan Recoverd in ₹Loan Balance in ₹ActionLoan Balance in ₹Action
PayOn ?>EmpID ?>FName ." ". $record->Lname ?>NoofDaysWorked + $record->Paid_Leave) ?>LessAdvance ?>TotalCompCon ?>Advance)){echo number_format($record->Advance,2,'.','');}else {echo $record->Advance;} ?>BalanceAdvance ?> - - EDIT - -
PayOn ?>EmpID ?>FName . " " . $record->Lname ?>NoofDaysWorked + $record->Paid_Leave) ?>LessAdvance ?>TotalCompCon ?>Advance)) { + echo number_format($record->Advance, 2, '.', ''); + } else { + echo $record->Advance; + } ?>BalanceAdvance ?> + EDIT +
- -
- -
-
+ + +
+
+ - + + + + \ No newline at end of file diff --git a/app/Views/publicholidays.php b/app/Views/publicholidays.php index e1fe3cf8..29ecb08a 100644 --- a/app/Views/publicholidays.php +++ b/app/Views/publicholidays.php @@ -1,244 +1,186 @@ - - - - - - - - - + + + + -
- -
-

-
Public Holiday Information -
-

-
-
- - + +
+
+ +
+ +
-
-
-
- -
- - -
- -
-
-
- Holiday Name : - -
-
- Date : - -
-
- -
-
-

 

-
- - - - - - - - - - - - - - H_Date); - $date = date_format($date,'d-m-Y'); - ?> - - - - - - - - - - - - - -
Holiday_NameDateAction
H_Name)){echo $day->H_Name;}else{echo "NO DATA";}?>
-

 

-
-
- - -
- -
-
- -
+
+
+

Public Holiday Information -

+
-
+
+
+
+
+
+ Holiday Name : + +
+
+ Date : + +
+
+ +
+
+
+ + + + + + + + + + + H_Date); + $date = date_format($date, 'd-m-Y'); + ?> + + + + + + + + +
Holiday_NameDateAction
H_Name)) { + echo $day->H_Name; + } else { + echo "NO DATA"; + } ?>
+

 

+
+
+ +
+
+
+
+
+
+
+ + - - - - - + + + - - - - - \ No newline at end of file + }); + \ No newline at end of file diff --git a/app/Views/rawmaterialListing.php b/app/Views/rawmaterialListing.php index 68485e34..7dc352f5 100644 --- a/app/Views/rawmaterialListing.php +++ b/app/Views/rawmaterialListing.php @@ -39,104 +39,104 @@
-
- -
- -
-
-
-
-

Material Master Details

-
-
- -
- getFlashdata('error'); - if ($error) { - $type = "error"; - echo show_alert($type, $error); - } - $success = session()->getFlashdata('success'); - if ($success) { - $type = "success"; - echo show_alert($type, $success); +
+ +
+ +
+
+
+
+

Material Master Details

+
+
+ +
+ getFlashdata('error'); + if ($error) { + $type = "error"; + echo show_alert($type, $error); + } + $success = session()->getFlashdata('success'); + if ($success) { + $type = "success"; + echo show_alert($type, $success); + } + ?> +
+
+
+
+ + + + + + + + + +
+
+
+ + + + + + + + + + + + + + + + + + CreatedDate)) == "30-11--0001") { + $cdate = '00-00-0000'; + } else { + $cdate = date('d-m-Y', strtotime($record->CreatedDate)); + } ?> + + + + + + stock != null || '') { ?> + + + + + + + + -
-
-
-
- - - - - - - - -
- -
-
Created DateMaterial CodeMaterial DescriptionType of MaterialUOMOpening StockMaterial CategoryHSN Code
MaterialCode ?> MaterialName ?>MaterialType ?>UOM ?>stock ?>0Category ?>HSNCODE ?>
- - - - - - - - - - - - - - - - - CreatedDate)) == "30-11--0001") { - $cdate = '00-00-0000'; - } else { - $cdate = date('d-m-Y', strtotime($record->CreatedDate)); - } ?> - - - - - - stock != null || '') { ?> - - - - - - - - - - -
Created DateMaterial CodeMaterial DescriptionType of MaterialUOMOpening StockMaterial CategoryHSN Code
MaterialCode ?> MaterialName ?>MaterialType ?>UOM ?>stock ?>0Category ?>HSNCODE ?>
-
-
-
-
-
-
-
+ + +
+
+
+
+ + + @@ -165,75 +165,78 @@ $(document).ready(function() { // Initialize the DataTable var table = $('#raw_material_list_table').DataTable({ - dom: 'Blfrtip', // Buttons, length menu, filter, table, information, pagination - buttons: [ - 'copy', 'csv', 'excel', 'pdf', 'print' // Export buttons - ], - pageLength: 10, // Default rows per page - lengthMenu: [ [10, 20, 30, 50, -1], [10, 20, 30, 50, "All"] ], // Rows per page options - responsive: true, // Responsive table - order: [], // Default ordering (column index 0, descending) - language: { - paginate: { - next: '', // Next button icon - previous: '' // Previous button icon - } + dom: 'Blfrtip', // Buttons, length menu, filter, table, information, pagination + buttons: [ + 'copy', 'csv', 'excel', 'pdf', 'print' // Export buttons + ], + pageLength: 10, // Default rows per page + lengthMenu: [ + [10, 20, 30, 50, -1], + [10, 20, 30, 50, "All"] + ], // Rows per page options + responsive: true, // Responsive table + order: [], // Default ordering (column index 0, descending) + language: { + paginate: { + next: '', // Next button icon + previous: '' // Previous button icon } + } }); // Date range filter function $.fn.dataTable.ext.search.push( - function(settings, data, dataIndex) { - var fromDate = $('#fromDate').val(); - var toDate = $('#toDate').val(); - - if (!fromDate || !toDate) { - return true; // If no dates selected, don't filter - } - - var dateStr = data[0]; // Assuming the date is in the first column - var dateParts = dateStr.split("-"); - var date = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]); // Convert dd-mm-yyyy to Date object - - var startDate = new Date(fromDate); - var endDate = new Date(toDate); - - // Adjust startDate to include the day before the selected fromDate - startDate.setDate(startDate.getDate() - 1); - - // Ensure endDate includes the entire end date by setting time to the end of the day - endDate.setHours(23, 59, 59, 999); + function(settings, data, dataIndex) { + var fromDate = $('#fromDate').val(); + var toDate = $('#toDate').val(); - // Return true if the date is within the range - return date >= startDate && date <= endDate; + if (!fromDate || !toDate) { + return true; // If no dates selected, don't filter } + + var dateStr = data[0]; // Assuming the date is in the first column + var dateParts = dateStr.split("-"); + var date = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]); // Convert dd-mm-yyyy to Date object + + var startDate = new Date(fromDate); + var endDate = new Date(toDate); + + // Adjust startDate to include the day before the selected fromDate + startDate.setDate(startDate.getDate() - 1); + + // Ensure endDate includes the entire end date by setting time to the end of the day + endDate.setHours(23, 59, 59, 999); + + // Return true if the date is within the range + return date >= startDate && date <= endDate; + } ); // Handle form submission for the date range filter $("#DateRangeFilter").submit(function(e) { - e.preventDefault(); - table.draw(); // Redraw the table to apply the filter + e.preventDefault(); + table.draw(); // Redraw the table to apply the filter }); // Reset button functionality $("#resetButton").click(function() { - $("#fromDate").val(''); - $("#toDate").val(''); - table.draw(); // Redraw the table to clear the filter + $("#fromDate").val(''); + $("#toDate").val(''); + table.draw(); // Redraw the table to clear the filter }); // Automatically focus and open the To Date picker when From Date is selected document.getElementById('fromDate').addEventListener('change', function() { - var fromDate = this.value; - var toDateInput = document.getElementById('toDate'); - - // Set the min attribute of the To Date input to the selected From Date - toDateInput.min = fromDate; + var fromDate = this.value; + var toDateInput = document.getElementById('toDate'); - // Optionally reset the To Date input if the current value is before the new min date - if (toDateInput.value < fromDate) { - toDateInput.value = fromDate; - } + // Set the min attribute of the To Date input to the selected From Date + toDateInput.min = fromDate; + + // Optionally reset the To Date input if the current value is before the new min date + if (toDateInput.value < fromDate) { + toDateInput.value = fromDate; + } }); -}); + }); \ No newline at end of file diff --git a/app/Views/userListing.php b/app/Views/userListing.php index 871e2f99..a4d87552 100644 --- a/app/Views/userListing.php +++ b/app/Views/userListing.php @@ -50,9 +50,9 @@
- Add New User + Add New User
- + getFlashdata('error'); @@ -69,62 +69,63 @@
-
- - - + + + + - - + + - - -
-
+ + +
+
- - - - - - - - - - - - - - createdDtm)) == "30-11--0001") { - $cdate = '00-00-0000'; - } else { - $cdate = date('d-m-Y', strtotime($record->createdDtm)); - } ?> - - - - - - - - - + + + + + + + + + - - + + + + + createdDtm)) == "30-11--0001") { + $cdate = '00-00-0000'; + } else { + $cdate = date('d-m-Y', strtotime($record->createdDtm)); + } ?> + + + + + + + + + + + +
Created DateUser NameEmailContact NumberDesignationDepartmentRole NameActions
FirstName ?>EmailId ?>ContactNumber ?>Designation ?>DepartmentName ?>role ?> -     - -     - Created DateUser NameEmailContact NumberDesignationDepartmentRole NameActions
FirstName ?>EmailId ?>ContactNumber ?>Designation ?>DepartmentName ?>role ?> +     + +     +
@@ -184,78 +185,81 @@ var dateSplit = date.split('-'); return (dateSplit[2] + dateSplit[1] + dateSplit[0]) * 1; }; -$(document).ready(function() { - // Initialize the DataTable - var table = $('#user_list_table').DataTable({ - dom: 'Blfrtip', // Buttons, length menu, filter, table, information, pagination - buttons: [ - 'copy', 'csv', 'excel', 'pdf', 'print' // Export buttons - ], - pageLength: 10, // Default rows per page - lengthMenu: [ [10, 20, 30, 50, -1], [10, 20, 30, 50, "All"] ], // Rows per page options - responsive: true, // Responsive table - order: [], // Default ordering (column index 0, descending) - language: { - paginate: { - next: '', // Next button icon - previous: '' // Previous button icon + $(document).ready(function() { + // Initialize the DataTable + var table = $('#user_list_table').DataTable({ + dom: 'Blfrtip', // Buttons, length menu, filter, table, information, pagination + buttons: [ + 'copy', 'csv', 'excel', 'pdf', 'print' // Export buttons + ], + pageLength: 10, // Default rows per page + lengthMenu: [ + [10, 20, 30, 50, -1], + [10, 20, 30, 50, "All"] + ], // Rows per page options + responsive: true, // Responsive table + order: [], // Default ordering (column index 0, descending) + language: { + paginate: { + next: '', // Next button icon + previous: '' // Previous button icon + } } - } - }); + }); - // Date range filter function - $.fn.dataTable.ext.search.push( - function(settings, data, dataIndex) { - var fromDate = $('#fromDate').val(); - var toDate = $('#toDate').val(); - - if (!fromDate || !toDate) { - return true; // If no dates selected, don't filter + // Date range filter function + $.fn.dataTable.ext.search.push( + function(settings, data, dataIndex) { + var fromDate = $('#fromDate').val(); + var toDate = $('#toDate').val(); + + if (!fromDate || !toDate) { + return true; // If no dates selected, don't filter + } + + var dateStr = data[0]; // Assuming the date is in the first column + var dateParts = dateStr.split("-"); + var date = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]); // Convert dd-mm-yyyy to Date object + + var startDate = new Date(fromDate); + var endDate = new Date(toDate); + + // Adjust startDate to include the day before the selected fromDate + startDate.setDate(startDate.getDate() - 1); + + // Ensure endDate includes the entire end date by setting time to the end of the day + endDate.setHours(23, 59, 59, 999); + + // Return true if the date is within the range + return date >= startDate && date <= endDate; } - - var dateStr = data[0]; // Assuming the date is in the first column - var dateParts = dateStr.split("-"); - var date = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]); // Convert dd-mm-yyyy to Date object - - var startDate = new Date(fromDate); - var endDate = new Date(toDate); - - // Adjust startDate to include the day before the selected fromDate - startDate.setDate(startDate.getDate() - 1); - - // Ensure endDate includes the entire end date by setting time to the end of the day - endDate.setHours(23, 59, 59, 999); + ); - // Return true if the date is within the range - return date >= startDate && date <= endDate; - } - ); + // Handle form submission for the date range filter + $("#DateRangeFilter").submit(function(e) { + e.preventDefault(); + table.draw(); // Redraw the table to apply the filter + }); - // Handle form submission for the date range filter - $("#DateRangeFilter").submit(function(e) { - e.preventDefault(); - table.draw(); // Redraw the table to apply the filter + // Reset button functionality + $("#resetButton").click(function() { + $("#fromDate").val(''); + $("#toDate").val(''); + table.draw(); // Redraw the table to clear the filter + }); + + // Automatically focus and open the To Date picker when From Date is selected + document.getElementById('fromDate').addEventListener('change', function() { + var fromDate = this.value; + var toDateInput = document.getElementById('toDate'); + + // Set the min attribute of the To Date input to the selected From Date + toDateInput.min = fromDate; + + // Optionally reset the To Date input if the current value is before the new min date + if (toDateInput.value < fromDate) { + toDateInput.value = fromDate; + } + }); }); - - // Reset button functionality - $("#resetButton").click(function() { - $("#fromDate").val(''); - $("#toDate").val(''); - table.draw(); // Redraw the table to clear the filter - }); - - // Automatically focus and open the To Date picker when From Date is selected - document.getElementById('fromDate').addEventListener('change', function() { - var fromDate = this.value; - var toDateInput = document.getElementById('toDate'); - - // Set the min attribute of the To Date input to the selected From Date - toDateInput.min = fromDate; - - // Optionally reset the To Date input if the current value is before the new min date - if (toDateInput.value < fromDate) { - toDateInput.value = fromDate; - } - }); -}); \ No newline at end of file From 0cb9a8ffe4850ca8a9b961d61a83d90649e7e054 Mon Sep 17 00:00:00 2001 From: bitbucket Date: Mon, 2 Sep 2024 15:55:28 +0530 Subject: [PATCH 2/9] HR module : GWM --- app/Models/Inwardgateregister_model.php | 15 +++++- app/Views/attendance.php | 30 ++++++------ app/Views/includes/new_footer.php | 1 + app/Views/includes/new_header.php | 62 ++++++++++++++----------- app/Views/monthlypayinputs.php | 7 ++- app/Views/viewinwardgateregister.php | 12 ++++- 6 files changed, 78 insertions(+), 49 deletions(-) diff --git a/app/Models/Inwardgateregister_model.php b/app/Models/Inwardgateregister_model.php index 79c5ccb1..1e9534d1 100755 --- a/app/Models/Inwardgateregister_model.php +++ b/app/Models/Inwardgateregister_model.php @@ -342,10 +342,21 @@ class Inwardgateregister_model extends Model function ViewigrListing() { - $builder = $this->db->table('t_igr_master igr') - ->select('igr.*,PO.IsOpenOrder,PO.DeliveryDate,sup.SupplierName,PO.POType') + // $builder = $this->db->table('t_igr_master igr') + // ->select('igr.*,PO.IsOpenOrder,PO.DeliveryDate,sup.SupplierName,PO.POType,trans.name as TransporterName') + // ->join('t_purchaseorder_master PO', 'igr.PONO = PO.PONO') + // ->join('t_supplierdetailsn` sup', 'PO.SupplierID = sup.SupplierID') + // ->join('t_transporter` trans', 'igr.TransporterId = trans.id' , 'left') + // ->where('igr.IGRStatus !=', MRIR_CREATED) + // ->orderBy('igr.CreatedDate', 'desc'); + + $builder = $this->db->table('t_igr_details igr_details') + ->select('igr.*,PO.IsOpenOrder,PO.DeliveryDate,sup.SupplierName,PO.POType,trans.name as TransporterName,item.MaterialName, igr_details.QuantityAsPerInvoice as ReceivedQuantity , igr_details.NetWeight as NetWeight') + ->join('t_igr_master igr', 'igr_details.IGRNo = igr.IGRNo') ->join('t_purchaseorder_master PO', 'igr.PONO = PO.PONO') ->join('t_supplierdetailsn` sup', 'PO.SupplierID = sup.SupplierID') + ->join('t_transporter` trans', 'igr.TransporterId = trans.id' , 'left') + ->join('t_materialmaster` item', 'igr_details.MaterialCode = item.MaterialCode' , 'left') ->where('igr.IGRStatus !=', MRIR_CREATED) ->orderBy('igr.CreatedDate', 'desc'); $query = $builder->get(); diff --git a/app/Views/attendance.php b/app/Views/attendance.php index b2639110..46b797b0 100644 --- a/app/Views/attendance.php +++ b/app/Views/attendance.php @@ -1,9 +1,11 @@ - - + + +
+ ">
@@ -488,13 +490,11 @@ $currentday = date('d'); @@ -554,9 +554,9 @@ $currentday = date('d'); $(document).ready(function() { - $("#attendance").CongelarFilaColumna({ - lboHoverTr: true - }); + // $("#attendance").CongelarFilaColumna({ + // lboHoverTr: true + // }); $('html').bind('keypress', function(e) { diff --git a/app/Views/includes/new_footer.php b/app/Views/includes/new_footer.php index 5e0753ce..6a24dc58 100644 --- a/app/Views/includes/new_footer.php +++ b/app/Views/includes/new_footer.php @@ -45,6 +45,7 @@ + diff --git a/app/Views/includes/new_header.php b/app/Views/includes/new_header.php index c9114af6..a3c907ff 100644 --- a/app/Views/includes/new_header.php +++ b/app/Views/includes/new_header.php @@ -11,8 +11,7 @@ - - + @@ -31,36 +30,42 @@ - - + + + + + + + - - + + - - - - + - + + + + + @@ -128,21 +133,21 @@ color: red; background-color: #fff; } - .btn-cancel { - background-color: grey; /* Red color */ - color: white; - padding: 10px 20px; - text-align: center; - text-decoration: none; - display: inline-block; - margin: 4px 2px; - cursor: pointer; -} + .btn-cancel { + background-color: grey; /* Red color */ + color: white; + padding: 10px 20px; + text-align: center; + text-decoration: none; + display: inline-block; + margin: 4px 2px; + cursor: pointer; + } -.btn-cancel:hover { - background-color: #02a8b5; /* Darker red on hover */ - color: white; -} + .btn-cancel:hover { + background-color: #02a8b5; /* Darker red on hover */ + color: white; + } - - + diff --git a/app/Views/monthlypayinputs.php b/app/Views/monthlypayinputs.php index a8d63dd3..dd282299 100644 --- a/app/Views/monthlypayinputs.php +++ b/app/Views/monthlypayinputs.php @@ -27,8 +27,7 @@ ?> - - + --> "; if (!empty($ErrorEmpId)) { echo $ErrorEmpId . "- are have Invalid Data!"; @@ -1018,63 +1113,55 @@ class Payslip extends BaseController public function PrintPdf() { + + // $EmpID = 'RIPL056'; + // $Payon = '08-2024'; + // $m = date("M", mktime(0, 0, 0, (int)$Payon, 10)); + // $y = substr((string)$Payon, 3); + // //echo "EmpID" . $EmpID; + // $Data['PayDetails'] = $this->payroll_model->GetPayslipdata($Payon, $EmpID); + + // $fname = $Data['PayDetails'][0]->FName; + // $filename = 'PayslipFor-' . $EmpID . ' ' . $fname . ' ' . $m . ' ' . $y; + + // $totalsalary = $Data['PayDetails'][0]->TotalSalary; + // $totalsalaryinwords = $this->convertNumber(round($totalsalary)); + // $Data['amtinwords'] = $totalsalaryinwords; + // // dd ($Data); + // echo view("payslipgenerateprint", $Data); + // die; + $filename = " "; $html = ""; $All = $this->request->getPost('All'); - // if ($All == '') { - // $this->validator->setRules([ - // 'Employee' => [ - // 'label' => 'Employee', - // 'rules' => 'trim|callback_Employee_validate', - // ] - // ]); - // } - // $this->validator->setRules([ - // 'PayOn' => [ - // 'label' => 'PayOn', - // 'rules' => 'trim|callback_PayOn_validate', - // ] - // ]); - - // if ($this->validator->run() == FALSE) { - // $this->viewGenerator(); - // } else { $Payon = $this->request->getPost('PayOn'); $m = date("M", mktime(0, 0, 0, (int)$Payon, 10)); - //$y =date("Y",mktime(0, 0, 0, $Payon, 10)); - //$m=date("M-Y",mktime(0,0,0,$month,1,$year)); + $y = substr((string)$Payon, 3); - //echo "Payon" . $Payon; + if ($All != '') { $filename = 'PayslipFor-' . $m . '-' . $y; $result = $this->payroll_model->getEmpAll($Payon); - // print_r($result); - // die(); - + if ($result > 0) { for ($i = 0; $i < count($result); $i++) { $EmpID = $result[$i]['EmpId']; - //print_r( - //$EmpID ); - // die(); + $Data['PayDetails'] = $this->payroll_model->GetPayslipdata($Payon, $EmpID); - // + $totalsalary = $Data['PayDetails'][0]->LessAdvance; $totalsalaryinwords = $this->convertNumber(round($totalsalary)); $Data['amtinwords'] = $totalsalaryinwords; - // print_r ($Data); - // exit(); - //$Data['Count'] = $i; + $html .= view("payslipgenerateprint", $Data); - // print_r ($Data); - // exit(); + } } } else { @@ -1088,45 +1175,12 @@ class Payslip extends BaseController $totalsalary = $Data['PayDetails'][0]->LessAdvance; $totalsalaryinwords = $this->convertNumber(round($totalsalary)); $Data['amtinwords'] = $totalsalaryinwords; - //print_r ($Data); - //exit(); + // print_r ($Data); + // exit(); $html = view("payslipgenerateprint", $Data); } - // $php = $this->output->get_output(); - - // // Load library - // $this->load->library('dompdf_gen'); - - // if($All != '') - // { - // $filename = 'Payslip-'.$Payon.'.pdf' ; - // } - // else - // { - // $filename = 'Payslip-'.$EmpID . '-' .$Payon.'.pdf' ; - // } - - // require_once(APPPATH .'third_party/dompdf/dompdf_config.inc.php'); - // $dompdf = new DOMPDF(); - // $dompdf->set_paper('A4', 'portrait'); - // $dompdf->load_html($php); - - // $dompdf->render(); - - // // add the header - // $canvas = $dompdf->get_canvas(); - // $font = Font_Metrics::get_font("helvetica", "bold"); - - // // the same call as in my previous example - // $canvas->page_text(72, 18, "Page: {PAGE_NUM} of {PAGE_COUNT}", - // $font, 6, array(0,0,0)); - - // $dompdf->stream($filename); - // } - - // $mpdf = new mPDF('utf-8', 'A4-P', 10, 10, 10, 10, 10, 24, 4, 6); $mpdf = new Mpdf([ 'mode' => 'utf-8', 'format' => 'A4-P', @@ -1147,7 +1201,7 @@ class Payslip extends BaseController $mpdf->SetTitle('Resico:Payslip'); $mpdf->Output("Payslip-" . $filename . ".pdf", 'D'); - // } + } function updatePayslip() diff --git a/app/Models/Monthlypay_model.php b/app/Models/Monthlypay_model.php index 98c3665a..82fa5014 100644 --- a/app/Models/Monthlypay_model.php +++ b/app/Models/Monthlypay_model.php @@ -84,7 +84,7 @@ class Monthlypay_model extends Model $month = '0' . $month; } - //echo $month; + $current = '01-' . $current; //echo $current; @@ -100,7 +100,7 @@ class Monthlypay_model extends Model //echo $lastdate; //left join t_payroll on t_employee_details.EmpID = t_payroll.EmpID and month(t_payroll.PayOn) = month(?) and year(t_payroll.PayOn) = year(?) - $sql = "select t_emp_pay_data.EmpID,t_emp_pay_data.*,t_employee_details.FirstName,t_employee_details.DateofJoining,t_employee_details.Designation,t_employee_details.esi_applicable,t_employee_details.pf_applicable,t_employee_details.is_management_team,t_attendance.Days_Worked as Days_worked,t_attendance.Absent as LOP_Days,t_attendance.Paid_Leave as Paid_leave,t_attendance.Total_OTHrs as OT_Hrs_Worked,t_attendance.NoofDays,t_attendance.sunday_count,t_loan_master.Loan_ID,t_loan_master.Monthly_Due,t_loan_master.Due_Start_Date as DueDate,t_loan_master.Loan_Amount,t_loan_master.Paid_Amount,t_payroll.Key,t_monthly_pay_inputs.Incentives as MonthlyIncentives,t_monthly_pay_inputs.Loan_Recovered,t_monthly_pay_inputs.Estimate,t_monthly_pay_inputs.Festival_Bonus,t_monthly_pay_inputs.Other_Deductions,t_loan_history .Balance_Amount + $sql = "select t_emp_pay_data.EmpID,t_emp_pay_data.*,t_employee_details.FirstName,t_employee_details.DateofJoining,t_employee_details.Designation,t_employee_details.esi_applicable,t_employee_details.pf_applicable,t_employee_details.is_management_team,t_attendance.Days_Worked as Days_worked,t_attendance.Absent as LOP_Days,t_attendance.Paid_Leave as Paid_leave,t_attendance.Total_OTHrs as OT_Hrs_Worked,t_attendance.NoofDays,t_attendance.sunday_count,t_loan_master.Loan_ID,t_loan_master.Monthly_Due,t_loan_master.Due_Start_Date as DueDate,t_loan_master.Loan_Amount,t_loan_master.Paid_Amount,t_payroll.Key,t_monthly_pay_inputs.Loan_Recovered,t_monthly_pay_inputs.Estimate,t_monthly_pay_inputs.Festival_Bonus,t_monthly_pay_inputs.Other_Deductions,t_loan_history .Balance_Amount from t_emp_pay_data left join t_employee_details on t_employee_details.EmpID = t_emp_pay_data.EmpID left join t_payroll on t_employee_details.EmpID = t_payroll.EmpID and t_payroll.PayOn = ? @@ -113,6 +113,9 @@ class Monthlypay_model extends Model order by t_employee_details.EmpID"; $query = $this->db->query($sql, array($month, $month, $lastdate, $current, $current)); + // Get the last executed query + // $last_query = $this->db->getLastQuery(); + // echo $last_query; return $query->getResult(); } @@ -371,7 +374,7 @@ join t_departmentdetails as Dep on Dep.DEPCode=Emp.Departmentcode where Emp.IsA $pre_year = $curr_split[0]; $curr_year = $curr_split[1]; - $sql = "select t_monthly_pay_inputs.EmpID,t_employee_details.FirstName,t_employee_details.LastName,sum(Incentives) as Incentives,sum(Festival_Bonus) as Bonus + $sql = "select t_monthly_pay_inputs.EmpID,t_employee_details.FirstName,t_employee_details.LastName,sum(Festival_Bonus) as Bonus from t_monthly_pay_inputs join t_employee_details on t_monthly_pay_inputs.EmpID = t_employee_details.EmpID where @@ -393,7 +396,7 @@ join t_departmentdetails as Dep on Dep.DEPCode=Emp.Departmentcode where Emp.IsA $pre_year = $curr_split[0]; $curr_year = $curr_split[1]; - $sql = "select t_monthly_pay_inputs.EmpID,t_monthly_pay_inputs.Month_Year,t_employee_details.FirstName,t_employee_details.LastName,sum(Incentives) as Incentives,sum(Festival_Bonus) as Bonus + $sql = "select t_monthly_pay_inputs.EmpID,t_monthly_pay_inputs.Month_Year,t_employee_details.FirstName,t_employee_details.LastName,sum(Festival_Bonus) as Bonus from t_monthly_pay_inputs join t_employee_details on t_monthly_pay_inputs.EmpID = t_employee_details.EmpID and t_monthly_pay_inputs.EmpID = ? diff --git a/app/Models/Payroll_model.php b/app/Models/Payroll_model.php index 84001a78..aebe4db9 100644 --- a/app/Models/Payroll_model.php +++ b/app/Models/Payroll_model.php @@ -376,8 +376,10 @@ class Payroll_model extends Model function getEmpID() { - $builder = $this->db->table('t_employee_details') - ->select('EmpID,FirstName,LastName'); + $builder = $this->db->table('t_employee_details E') + ->select('E.EmpID, E.FirstName, E.LastName') + ->join('t_loan_master LM', 'LM.EmpID = E.EmpID', 'left') + ->where('LM.Loan_ID IS NULL'); $query = $builder->get(); return $query->getResult(); @@ -487,4 +489,42 @@ class Payroll_model extends Model //return $query_count; return $query->getResult(); } + + + function getMonthlyPayDetails($EmpId, $PayOn) + { + $builder = $this->db->table('t_monthly_pay_inputs MonthlyPay ') + ->select('MonthlyPay.*, E.BankAccountNo , E.PFNO , E.ESI as ESINO , L.*') + ->join('t_employee_details as E', 'MonthlyPay.EmpID = E.EmpID', 'left') + ->join('t_loan_master as L', 'MonthlyPay.EmpID = L.EmpID and L.is_Active = 1', 'left') + ->where('MonthlyPay.EmpID', $EmpId) + ->where('MonthlyPay.Month_Year', $PayOn); + + $query = $builder->get(); + return $query->getResult(); + } + + function insertPayroll($data) + { + $builder = $this->db->table('t_payroll'); + $builder->insert($data); + $count = $this->db->affectedRows(); + return $count; + } + function insertLoanHistory($data) + { + $builder = $this->db->table('t_loan_history'); + $builder->insert($data); + $count = $this->db->affectedRows(); + return $count; + } + function updateLoan($LoanID,$EmpID,$data) + { + $builder = $this->db->table('t_loan_master') + ->where('Loan_ID', $LoanID) + ->where('EmpID', $EmpID) + ->update($data); + $count = $this->db->affectedRows(); + return $count; + } } \ No newline at end of file diff --git a/app/Views/addemppaydate.php b/app/Views/addemppaydate.php index a7b11127..3b78043a 100644 --- a/app/Views/addemppaydate.php +++ b/app/Views/addemppaydate.php @@ -36,7 +36,7 @@
-

Add Employee Pay

+

Create Loan

diff --git a/app/Views/includes/new_footer.php b/app/Views/includes/new_footer.php index 31ec9b10..8f5a5b56 100644 --- a/app/Views/includes/new_footer.php +++ b/app/Views/includes/new_footer.php @@ -3,58 +3,13 @@
-
RESICO Version 2.0 | .
- +
@@ -63,12 +18,43 @@
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/Views/includes/new_header.php b/app/Views/includes/new_header.php index a3c907ff..d8962bc1 100644 --- a/app/Views/includes/new_header.php +++ b/app/Views/includes/new_header.php @@ -481,8 +481,8 @@ --> -if(!empty($Count)) -{ - $RecCount = $Count; -} - - -//echo $RecCount; -if(!empty($PayDetails)) -{ - foreach ($PayDetails as $Pay) - { - $Paydt = $Pay->PayOn; - $dt = '01-'.$Paydt; - $PayOn = date('M-Y',strtotime($dt)); - - $EmpID = $Pay->EmpID; - $FirstName = $Pay->FName; - $LastName = $Pay->Lname; - - $DoB = $Pay->Dob; - $DoJ = $Pay->DOJ; - - $from = new DateTime($DoB); - $dt = new DateTime($DoJ); - $DateofBirth = $from ->format('d-m-Y'); - $DateofJoining = $dt ->format('d-m-Y'); - - $Designation = $Pay->Designation; - $PANNo =$Pay->Pan; - $AadharNo=$Pay->AadharNo; - $BankAccountNo = $Pay->BankAccountNumber; - $IFSCCode =$Pay->IFSCCode; - $BankBranchName = $Pay->BankName; - $PFnumber = $Pay->PFNumber; - $ESInumber = $Pay->ESINumber; - $TotalNoofDays = $Pay->TotalCalDays; - $NoOfWorkingdays =$Pay->NoofDaysWorked; - $paidleave = $Pay->Paid_Leave; - $NoOfWorkingdays = $NoOfWorkingdays + $paidleave; - $ActualSalary = $Pay->ActualSalary; - $LOP=$Pay->LOP; - $PerDaySalary = $Pay->PerDaySalary; - $WorkedSalary = $Pay->WorkedSalary; - $BasicAndDA = $Pay->BasicPlusDA; - $HRA = $Pay->HRA; - $OTWage = $Pay->OTWages; - $OtherDeductions=$Pay->OtherDeductions; - $LoanAdvance=$Pay->Advance; - $TotalComapanyContribution=$Pay->TotalCompCon; - - if($OTWage == '') - { - $OTWages = '0.00'; - } - else - { - $OTWages = $OTWage; - } - $OTPerHours =$Pay->OTperHours; - $OTSal = $Pay->OTSalary; - if($OTSal == '') - { - $OTSalary = '0.00'; - } - else - { - $OTSalary = $OTSal; - } - $GrosssSalary = $Pay->ESIGrossSalary; - $ESI = $Pay->EmployeeESI; - $PF = $Pay->PF; - $ESIAndPF = $PF+$ESI+$OtherDeductions+$LoanAdvance; - $SalaryAsPerPF = $Pay->SalaryAsPerPF; - $Food =$Pay->FoodAllowance; - $Otherallowances=$Pay->Other_allowances; - if($Food == '') - { - $FoodAllowance = '0.00'; - } - else - { - $FoodAllowance = $Food; - } - $IncenAmt = $Pay->Incentive; - if($IncenAmt == '') - { - $Incentive = '0.00'; - } - else - { - $Incentive = $IncenAmt; - } - $festbonus = $Pay->Festival_Bonus; - if($festbonus == '') - { - $Festival_bonus = '0.00'; - } - else - { - $Festival_bonus = $festbonus; - } - $TotalSalary = $WorkedSalary+$HRA+$Food+$IncenAmt+$OTSal+$Otherallowances+$Festival_bonus; - $Adv = $Pay->Advance; - if($Adv == '') - { - $Advance = '0.00'; - } - else - { - $Advance = $Adv; - } - $BalanceAdv = $Pay->BalanceAdvance; - if($BalanceAdv == '') - { - $BalanceAdvance = '0.00'; - } - else - { - $BalanceAdvance = $BalanceAdv; - } - $LessAdv = $Pay->LessAdvance; - if($LessAdv == '') - { - $LessAdvance = '0.00'; - } - else - { - $LessAdvance = $LessAdv; - } - $DeptName = $Pay->DeptName; - - } -} - -if($RecCount > 0) -{ -?> - -
- @@ -200,7 +10,7 @@ if($RecCount > 0) -
RESICO
Survey No: 168/1C3,Pennalur Pet Road,Goonipalyam village,
Uthukottai Taluk,Tiruvallur Dist, Chennai,Tamilnadu,Pin code : 602026.
PaySlip for the Month of
+
RESICO
Survey No: 168/1C3,Pennalur Pet Road,Goonipalyam village,
Uthukottai Taluk,Tiruvallur Dist, Chennai,Tamilnadu,Pin code : 602026.
PaySlip for the Month of PayOn ?>
@@ -209,58 +19,58 @@ if($RecCount > 0) Name - +FName; ?> Employee ID - +EmpID ?> Designation - + Designation ?> Department - +DeptName ?> Date Of Joining - + DOJ)) ?> Available Calender Days - + TotalCalDays ?> Date Of Birth - +Dob)) ?> Loss Of Pay Days - + LOP,2,'.',''); ?> PF Account Number - +PFNumber ?> Paid Days - +NoofDaysWorked,2,'.',''); ?> Bank Name - +BankName ?> Loan Balance - +BalanceAdvance ?> Bank Account Number - + BankAccountNumber ?> OT In Hours - +OT_Hrs_Worked ?> Bank IFSC - +IFSCCode ?> ESI Account Number - + ESINumber ?> PAN Number - +Pan;?> Aadhar Number - +AadharNo);?> @@ -270,59 +80,55 @@ if($RecCount > 0) - - + + - + - + - - - - - - - - - - - - - - - - - - - - + - - - + + + - - - + + + - - - - + + + + + + + + + - - - - - + + + From 2a8db81a1518a860f145a674faf02caa31a4271e Mon Sep 17 00:00:00 2001 From: aadhavan valli Date: Tue, 3 Sep 2024 16:39:10 +0530 Subject: [PATCH 7/9] CHANGE_EMP_CURD --- app/Controllers/Employeedetails.php | 1008 ++++++++-------- app/Views/addEmployeenew.php | 1420 ++++++++++++++++++++++ app/Views/editEmployee.php | 45 +- app/Views/editEmployeenew.php | 1693 +++++++++++++++++++++++++++ app/Views/includes/new_footer.php | 77 +- 5 files changed, 3715 insertions(+), 528 deletions(-) create mode 100644 app/Views/addEmployeenew.php create mode 100644 app/Views/editEmployeenew.php diff --git a/app/Controllers/Employeedetails.php b/app/Controllers/Employeedetails.php index 33c68cc4..0ab265e6 100644 --- a/app/Controllers/Employeedetails.php +++ b/app/Controllers/Employeedetails.php @@ -35,8 +35,8 @@ class Employeedetails extends BaseController protected $appConfig; protected $emppaydate_model; protected $session; - - + + /** * This is default constructor of the class */ @@ -51,7 +51,6 @@ class Employeedetails extends BaseController $this->session = session(); helper('form'); //$this->load->library('form_validation'); $this->isLoggedIn(); - } /** * This function is used to load the Employee details @@ -202,176 +201,209 @@ class Employeedetails extends BaseController function AddNewEmployee() { + // print_r($this->request->getPost());die; - - $photo = $this->request->getFile('photo'); - $Picture = ""; + $photo = $this->request->getFile('photo'); + $Picture = ""; + if(isset($photoan)){ if ($photo->isValid() && !$photo->hasMoved()) { - $uploadDir = ROOTPATH . 'public/uploads/images/'; - $allowedTypes = ['jpg', 'jpeg', 'png', 'gif']; - if (in_array($photo->getExtension(), $allowedTypes)) { - $newName = $photo->getRandomName(); - if(!is_dir($uploadDir)) { mkdir($uploadDir, 0777, true); } - $photo->move($uploadDir, $newName); - $Picture = $newName; - } + $uploadDir = ROOTPATH . 'public/uploads/images/'; + $allowedTypes = ['jpg', 'jpeg', 'png', 'gif']; + if (in_array($photo->getExtension(), $allowedTypes)) { + $newName = $photo->getRandomName(); + if (!is_dir($uploadDir)) { + mkdir($uploadDir, 0777, true); + } + $photo->move($uploadDir, $newName); + $Picture = $newName; + } } - // $Profile = $this->request->getPost('photo'); - $FirstName = $this->request->getPost('FirstName'); - $FatherName = $this->request->getPost('FatherName'); - $DateofBirth = $this->request->getPost('DateofBirth'); - $ContactNumber = $this->request->getPost('ContactNumber'); - $EmailId = $this->request->getPost('emailid'); - $comEmailId = $this->request->getPost('comemailid'); - $Gender = $this->request->getPost('gender'); - $MartialStatus = $this->request->getPost('MartialStatus'); - $BloodGroup = $this->request->getPost('bloodgroup'); - $CurrentAddress = $this->request->getPost('currentaddress'); - $permanentaddress = $this->request->getPost('permanentaddress'); - $emergencycontactname = $this->request->getPost('emergencycontactname'); - $emergencycontactnumber = $this->request->getPost('emergencycontactnumber'); - $desigination = $this->request->getPost('desigination'); - $departmentCode = $this->request->getPost('departmentname'); - $dateofjoining = $this->request->getPost('dateofjoining'); - $pre_experience = $this->request->getPost('Previousexperience'); + } + // $Profile = $this->request->getPost('photo'); + $FirstName = $this->request->getPost('FirstName'); + $FatherName = $this->request->getPost('FatherName'); + $DateofBirth = $this->request->getPost('DateofBirth'); + $ContactNumber = $this->request->getPost('ContactNumber'); + $EmailId = $this->request->getPost('emailid'); + $comEmailId = $this->request->getPost('comemailid'); + $Gender = $this->request->getPost('gender'); + $MartialStatus = $this->request->getPost('MartialStatus'); + $BloodGroup = $this->request->getPost('bloodgroup'); + $CurrentAddress = $this->request->getPost('currentaddress'); + $permanentaddress = $this->request->getPost('permanentaddress'); + $emergencycontactname = $this->request->getPost('emergencycontactname'); + $emergencycontactnumber = $this->request->getPost('emergencycontactnumber'); + $desigination = $this->request->getPost('desigination'); + $departmentCode = $this->request->getPost('departmentname'); + $dateofjoining = $this->request->getPost('dateofjoining'); + $pre_experience = $this->request->getPost('Previousexperience'); - if ($pre_experience == '') { - $Previousexperience = null; - } else { - $Previousexperience = $pre_experience; - } + if ($pre_experience == '') { + $Previousexperience = null; + } else { + $Previousexperience = $pre_experience; + } - $eduqualifaction = $this->request->getPost('eduqualifaction'); - $addqualification = $this->request->getPost('addqualification'); - $referredby = $this->request->getPost('referredby'); - $referrercontno = $this->request->getPost('referrercontno'); - $accountno = $this->request->getPost('accountno'); - $ifsccode = $this->request->getPost('ifsccode'); - $bankbranchname = $this->request->getPost('bankbranchname'); - $bankaddress = $this->request->getPost('bankaddress'); - $aadharno = $this->request->getPost('aadharno'); - $panno = $this->request->getPost('panno'); - $panno = $panno !== null && is_string($panno) ? strtoupper($panno) : null; - $passportno = $this->request->getPost('passportno'); - $passportno = $passportno !== null && is_string($passportno) ? strtoupper($passportno) : null; - $ValidTill = $this->request->getPost('ValidTill'); - $addinfo = $this->request->getPost('addinfo'); - $IsActive = '1'; - $driverlicense = $this->request->getPost('driverlicense'); - $driverlicense = $driverlicense !== null && is_string($driverlicense) ? strtoupper($driverlicense) : null; - $licenseExpiryDate = $this->request->getPost('licenseExpiryDate'); - $VoterID = $this->request->getPost('voterID'); - $VoterID = $VoterID !== null && is_string($VoterID) ? strtoupper($VoterID) : null; - $PFno = $this->request->getPost('pfno'); - $ESIno = $this->request->getPost('esino'); - $Nominee = $this->request->getPost('nomineename'); - $createdby = $this->session->get('userId'); - $is_management_team = $this->request->getPost('is_management_team'); - $esi_applicable = $this->request->getPost('esi_applicable'); - $pf_applicable = $this->request->getPost('pf_applicable'); - $work_location = $this->request->getPost('work_location'); + $eduqualifaction = $this->request->getPost('eduqualifaction'); + $addqualification = $this->request->getPost('addqualification'); + $referredby = $this->request->getPost('referredby'); + $referrercontno = $this->request->getPost('referrercontno'); + $accountno = $this->request->getPost('accountno'); + $ifsccode = $this->request->getPost('ifsccode'); + $bankbranchname = $this->request->getPost('bankbranchname'); + $bankaddress = $this->request->getPost('bankaddress'); + $aadharno = $this->request->getPost('aadharno'); + $panno = $this->request->getPost('panno'); + $panno = $panno !== null && is_string($panno) ? strtoupper($panno) : null; + $passportno = $this->request->getPost('passportno'); + $passportno = $passportno !== null && is_string($passportno) ? strtoupper($passportno) : null; + $ValidTill = $this->request->getPost('ValidTill'); + $addinfo = $this->request->getPost('addinfo'); + $IsActive = '1'; + $driverlicense = $this->request->getPost('driverlicense'); + $driverlicense = $driverlicense !== null && is_string($driverlicense) ? strtoupper($driverlicense) : null; + $licenseExpiryDate = $this->request->getPost('licenseExpiryDate'); + $VoterID = $this->request->getPost('voterID'); + $VoterID = $VoterID !== null && is_string($VoterID) ? strtoupper($VoterID) : null; + $PFno = $this->request->getPost('pfno'); + $ESIno = $this->request->getPost('esino'); + $Nominee = $this->request->getPost('nomineename'); + $createdby = $this->session->get('userId'); + $is_management_team = $this->request->getPost('is_management_team'); + $esi_applicable = $this->request->getPost('esi_applicable'); + $pf_applicable = $this->request->getPost('pf_applicable'); + $work_location = $this->request->getPost('work_location'); - if ($licenseExpiryDate != '') { - //$License_ExpiryDate = get_date_format($licenseExpiryDate); - $License_ExpiryDate = get_date_time_format($licenseExpiryDate); - } else { - $License_ExpiryDate = null; - } + if ($licenseExpiryDate != '') { + //$License_ExpiryDate = get_date_format($licenseExpiryDate); + $License_ExpiryDate = get_date_time_format($licenseExpiryDate); + } else { + $License_ExpiryDate = null; + } - $DOB = get_date_time_format($DateofBirth); - $DOJ = get_date_time_format($dateofjoining); + $DOB = get_date_time_format($DateofBirth); + $DOJ = get_date_time_format($dateofjoining); - if ($ValidTill != '') { + if ($ValidTill != '') { - $Valid = get_date_time_format($ValidTill); - } else { - $Valid = null; - } + $Valid = get_date_time_format($ValidTill); + } else { + $Valid = null; + } - //echo $DOB; - $Employee = array( - 'FirstName' => $FirstName, 'FatherName' => $FatherName, - 'Gender' => $Gender, 'DateofBirth' => $DOB, 'ContactNumber' => $ContactNumber, 'EmailId' => $EmailId, - 'BloodGroup' => $BloodGroup, 'MartialStatus' => $MartialStatus, 'DateofJoining' => $DOJ, - 'PreviousYearsOfExp' => $Previousexperience, 'Designation' => $desigination, - 'Departmentcode' => $departmentCode, 'PresentAddress' => $CurrentAddress, - 'PermanentAddress' => $permanentaddress, 'EmergencyContactName' => $emergencycontactname, - 'EmergencyContactNumber' => $emergencycontactnumber, 'Edu_Qualification' => $eduqualifaction, - 'Additional_Qualification' => $addqualification, 'AadharNo' => $aadharno, 'PANNo' => $panno, - 'BankAccountNo' => $accountno, 'IFSCCode' => $ifsccode, 'BankBranchName' => $bankbranchname, - 'BankAddress' => $bankaddress, 'PassportNo' => $passportno, 'Passport_Valid_till' => $Valid, - 'IsActive' => $IsActive, 'ProfilePic' => $Picture, 'Reference_Name' => $referredby, - 'Reference_ContactNumber' => $referrercontno, 'Remarks' => $addinfo, 'CreatedBy' => $createdby, - 'personalEmailId' => $comEmailId, 'DriverLicense' => $driverlicense, - 'LicenseValidtill' => $License_ExpiryDate, 'VoterID' => $VoterID, 'PFNO' => $PFno, 'ESI' => $ESIno, - 'NomineeDetails' => $Nominee , 'is_management_team' => $is_management_team , 'esi_applicable'=>$esi_applicable, - 'pf_applicable'=>$pf_applicable,'work_location'=>$work_location - ); + //echo $DOB; + $Employee = array( + 'FirstName' => $FirstName, + 'FatherName' => $FatherName, + 'Gender' => $Gender, + 'DateofBirth' => $DOB, + 'ContactNumber' => $ContactNumber, + 'EmailId' => $EmailId, + 'BloodGroup' => $BloodGroup, + 'MartialStatus' => $MartialStatus, + 'DateofJoining' => $DOJ, + 'PreviousYearsOfExp' => $Previousexperience, + 'Designation' => $desigination, + 'Departmentcode' => $departmentCode, + 'PresentAddress' => $CurrentAddress, + 'PermanentAddress' => $permanentaddress, + 'EmergencyContactName' => $emergencycontactname, + 'EmergencyContactNumber' => $emergencycontactnumber, + 'Edu_Qualification' => $eduqualifaction, + 'Additional_Qualification' => $addqualification, + 'AadharNo' => $aadharno, + 'PANNo' => $panno, + 'BankAccountNo' => $accountno, + 'IFSCCode' => $ifsccode, + 'BankBranchName' => $bankbranchname, + 'BankAddress' => $bankaddress, + 'PassportNo' => $passportno, + 'Passport_Valid_till' => $Valid, + 'IsActive' => $IsActive, + 'ProfilePic' => $Picture, + 'Reference_Name' => $referredby, + 'Reference_ContactNumber' => $referrercontno, + 'Remarks' => $addinfo, + 'CreatedBy' => $createdby, + 'personalEmailId' => $comEmailId, + 'DriverLicense' => $driverlicense, + 'LicenseValidtill' => $License_ExpiryDate, + 'VoterID' => $VoterID, + 'PFNO' => $PFno, + 'ESI' => $ESIno, + 'NomineeDetails' => $Nominee, + 'is_management_team' => $is_management_team, + 'esi_applicable' => $esi_applicable, + 'pf_applicable' => $pf_applicable, + 'work_location' => $work_location + ); - //print_r($Employee);die(); - $result = $this->employeedetails_model->addNewemployee($Employee); + //print_r($Employee);die(); + $result = $this->employeedetails_model->addNewemployee($Employee); - if ($result) { + if ($result) { - // Get the uploaded files - $files = $this->request->getFiles(); - $fileNames = $this->request->getPost('file_name'); // Get user-entered file names - if(isset($files['emp_file'])) - { + // Get the uploaded files + $files = $this->request->getFiles(); + $fileNames = $this->request->getPost('file_name'); // Get user-entered file names + if (isset($files['emp_file'])) { foreach ($files['emp_file'] as $index => $file) { - if ($file->isValid() && !$file->hasMoved()) { - // Move the file to the desired directory - $newName = $file->getRandomName(); - $file->move(ROOTPATH . 'public/uploads/images/emp_files', $newName); - $path = ROOTPATH . 'public/uploads/images/emp_files/'.$newName; - // Store the file information in the database - $this->empFiles->save([ - 'file_name' => $fileNames[$index], // User-entered file name - 'emp_file' => $newName, // New file name - 'emp_id' => $result, - 'path' => $path - - ]); - } + if ($file->isValid() && !$file->hasMoved()) { + // Move the file to the desired directory + $newName = $file->getRandomName(); + $file->move(ROOTPATH . 'public/uploads/images/emp_files', $newName); + $path = ROOTPATH . 'public/uploads/images/emp_files/' . $newName; + // Store the file information in the database + $this->empFiles->save([ + 'file_name' => $fileNames[$index], // User-entered file name + 'emp_file' => $newName, // New file name + 'emp_id' => $result, + 'path' => $path + + ]); + } } } - $EmpID = $result; - $Total_Salary = $this->request->getPost('Total_salary'); - $Basic_Pay = $this->request->getPost('Basic_Pay'); - $HRA_Rate = $this->request->getPost('HRA_Rate'); - $HRA_Amount = $this->request->getPost('HRA_Amount'); - $PF_Rate = $this->request->getPost('PF_Rate'); - $ESI_Rate = $this->request->getPost('ESI_Rate'); - $CreateBy = $this->session->get('userId'); + $EmpID = $result; + $Total_Salary = $this->request->getPost('Total_salary'); + $Basic_Pay = $this->request->getPost('Basic_Pay'); + $HRA_Rate = $this->request->getPost('HRA_Rate'); + $HRA_Amount = $this->request->getPost('HRA_Amount'); + $PF_Rate = $this->request->getPost('PF_Rate'); + $ESI_Rate = $this->request->getPost('ESI_Rate'); + $CreateBy = $this->session->get('userId'); - $emppay = array('EmpID' => $EmpID, 'TotalSalary' => $Total_Salary, 'Basic_Pay' => $Basic_Pay, 'HRA_Rate' => $HRA_Rate, 'HRA_Amount' => $HRA_Amount, 'PF_Rate' => $PF_Rate, 'ESI_Rate' => $ESI_Rate, 'Created_By' => $CreateBy); - + $emppay = array('EmpID' => $EmpID, 'TotalSalary' => $Total_Salary, 'Basic_Pay' => $Basic_Pay, 'HRA_Rate' => $HRA_Rate, 'HRA_Amount' => $HRA_Amount, 'PF_Rate' => $PF_Rate, 'ESI_Rate' => $ESI_Rate, 'Created_By' => $CreateBy); - $this->emppaydate_model->addNewemppay($emppay); - // $this->session->set_flashdata('Success', 'New Employee created successfully!'); - $this->session->setFlashdata('success', 'New Employee created successfully!'); - // echo ""; - } else { + $this->emppaydate_model->addNewemppay($emppay); - // $this->session->set_flashdata('Error', 'New Employee details not saved'); - $this->session->setFlashdata('error', 'Record Not Saved!'); - // echo ""; - // redirect('employeeListing', 'refresh'); - } - return redirect()->route('employeeListing'); + // $this->session->set_flashdata('Success', 'New Employee created successfully!'); + $this->session->setFlashdata('success', 'New Employee created successfully!'); + return json_encode('true'); + // echo ""; + } else { + + // $this->session->set_flashdata('Error', 'New Employee details not saved'); + $this->session->setFlashdata('error', 'Record Not Saved!'); + return json_encode('false'); + // echo ""; + // redirect('employeeListing', 'refresh'); + } + // return redirect()->route('employeeListing'); // } } - function deleteEmployeeFile(){ + function deleteEmployeeFile() + { $id = $this->request->getPost('id'); - $update = $this->empFiles->set(['is_active' => 0])->where('id',$id)->update(); - if($update){ + $update = $this->empFiles->set(['is_active' => 0])->where('id', $id)->update(); + if ($update) { return true; - }else{ + } else { return false; } } @@ -379,8 +411,6 @@ class Employeedetails extends BaseController * This function is used to load the add new Employee form with dropdown values */ function addemployee() { - - $GenderConfigID = 'C013'; $MartialConfigID = 'C012'; $QualificationConfigID = 'C014'; @@ -396,16 +426,17 @@ class Employeedetails extends BaseController $data['BloodGroup'] = $this->employeedetails_model->getConfigValue($BloodGroupConfigID); $data['Location'] = $this->employeedetails_model->getConfigValue($LocationConfigID); $data['Department'] = $this->employeedetails_model->getDepartment(); - $data['hra_rate'] = $this->appConfig->where('config_key',1)->get()->getRow()->config_value; - $data['pf_rate'] = $this->appConfig->where('config_key',2)->get()->getRow()->config_value; - $data['esi_rate'] = $this->appConfig->where('config_key',3)->get()->getRow()->config_value; + $data['hra_rate'] = $this->appConfig->where('config_key', 1)->get()->getRow()->config_value; + $data['pf_rate'] = $this->appConfig->where('config_key', 2)->get()->getRow()->config_value; + $data['esi_rate'] = $this->appConfig->where('config_key', 3)->get()->getRow()->config_value; $this->global['pageTitle'] = 'Add New Employee'; // if($this->role == ROLE_ADMIN || $this->DEPCode == HR) // { - $this->loadViews("addEmployee", $this->global, $data, NULL); + // $this->loadViews("addEmployee", $this->global, $data, NULL); + $this->loadViews("addEmployeenew", $this->global, $data, NULL); // } @@ -422,7 +453,7 @@ class Employeedetails extends BaseController { $id = $this->request->getPost('id'); //print_r($id); - + $query = $this->employeedetails_model->checkMailExists($id); $response = ($query !== null && !empty($query)) ? $query[0]['EmailId'] : null; return $this->response->setJSON($response); @@ -433,7 +464,7 @@ class Employeedetails extends BaseController $id = $this->request->getPost('id'); //print_r($id); - + $query = $this->employeedetails_model->checkPANExists($id); $response = ($query !== null && !empty($query)) ? $query[0]['PANNo'] : null; return $this->response->setJSON($response); @@ -445,11 +476,10 @@ class Employeedetails extends BaseController $id = $this->request->getPost('id'); //print_r($id); - + $query = $this->employeedetails_model->checkAadharExists($id); $response = ($query !== null && !empty($query)) ? $query[0]['AadharNo'] : null; return $this->response->setJSON($response); - } @@ -460,7 +490,7 @@ class Employeedetails extends BaseController $Empid = $this->request->getPost('employeeid'); $PanNo = $this->request->getPost('panno'); - + $query = $this->employeedetails_model->checkPANExists($PanNo, $Empid); if (count($query) > 0) { // $this->validator->setMessage('Pan_validate_emp', 'The Entered PAN Number is already exists in the Database.'); @@ -476,7 +506,7 @@ class Employeedetails extends BaseController { $Empid = $this->request->getPost('employeeid'); $AadharNo = $this->request->getPost('aadharno'); - + $query = $this->employeedetails_model->checkAadharExists($AadharNo, $Empid); if (count($query) > 0) { // $this->validator->setMessage('Aadhar_validate_emp', 'The Entered Aadhar Number is exists in the Database.'); @@ -487,36 +517,38 @@ class Employeedetails extends BaseController } } - + public function add($photo) - { - $picture = ''; + { + $picture = ''; - - if ($photo->isValid() && !$photo->hasMoved()) { - // Define upload directory and allowed file types - $uploadDir = ROOTPATH . 'public/uploads/images/'; - $allowedTypes = ['jpg', 'jpeg', 'png', 'gif']; - // Validate file type - if (in_array($photo->getExtension(), $allowedTypes)) { - // Generate unique file name - $newName = $photo->getRandomName(); - if(!is_dir($uploadDir)) { mkdir($uploadDir, 0777, true); } - // Move the uploaded file to the upload directory - $photo->move($uploadDir, $newName); + if ($photo->isValid() && !$photo->hasMoved()) { + // Define upload directory and allowed file types + $uploadDir = ROOTPATH . 'public/uploads/images/'; + $allowedTypes = ['jpg', 'jpeg', 'png', 'gif']; - $picture = $newName; - } else { - // Handle invalid file type - $picture = ''; - } + // Validate file type + if (in_array($photo->getExtension(), $allowedTypes)) { + // Generate unique file name + $newName = $photo->getRandomName(); + if (!is_dir($uploadDir)) { + mkdir($uploadDir, 0777, true); } + // Move the uploaded file to the upload directory + $photo->move($uploadDir, $newName); - return $picture; + $picture = $newName; + } else { + // Handle invalid file type + $picture = ''; + } } + return $picture; + } + function ViewEmployee($EmpNO = '') { @@ -533,7 +565,7 @@ class Employeedetails extends BaseController $DesignationConfigID = 'C010'; $BloodGroupConfigID = 'C011'; $LocationConfigID = 'C031'; - + //print_r('hai'); $data['GenderList'] = $this->employeedetails_model->getConfigValue($GenderConfigID); $data['MartialList'] = $this->employeedetails_model->getConfigValue($MartialConfigID); @@ -544,12 +576,12 @@ class Employeedetails extends BaseController $data['Location'] = $this->employeedetails_model->getConfigValue($LocationConfigID); $data['DepartmentList'] = $this->employeedetails_model->getDepartment(); $data['EmpDetails'] = $this->employeedetails_model->viewemployee($EmpID); - $data['emp_data'] = $this->empFiles->where('emp_id',$EmpID)->where('is_active',1)->findAll(); + $data['emp_data'] = $this->empFiles->where('emp_id', $EmpID)->where('is_active', 1)->findAll(); $data['empPay'] = $this->emppaydate_model->getEmpPayData($EmpID); $this->global['pageTitle'] = 'View Employee'; - $this->loadViews("editEmployee", $this->global, $data, NULL); + $this->loadViews("editEmployeenew", $this->global, $data, NULL); } /* To Check the email exists in the database or not for the employee*/ function checkMailEmp() @@ -571,9 +603,10 @@ class Employeedetails extends BaseController /* To Update the employee details*/ function UpdateEmployee() { - + // echo "
";
+    // print_r($this->request->getPost());die;
     $EmpId =  $this->request->getPost('employeeid');
-    
+
     //$mail = $this->this->.post('emailid');
     // $this->validator->setRules([
     //   'ContactNumber'=> 'trim|required|min_length[10]|max_length[10]',
@@ -598,174 +631,208 @@ class Employeedetails extends BaseController
     //   $this->ViewEmployee($EmpId);
     // } else {
 
-      
-      $EmpId =  $this->request->getPost('employeeid');
-      $PictureName = $this->request->getPost('Image');
-      $ModifyPictureName = $this->request->getPost('ModifyImage');
-      $Picture = "";
-      if ($PictureName != '') {
-        //echo  'Exists';
-        //$Picture = $PictureName; 
-        if (strlen((string)$ModifyPictureName) == 0) {
-          //echo  'Exists But Not replace';
-          $Picture = $PictureName;
-        } else {
-          //echo  'Exists But Replace';
-          //$Picture = $ModifyPictureName;
-          //$Picture = $this->editimage($ModifyPictureName);  
-          $photo = $this->request->getFile('ModifyImage');
-          if ($photo->isValid() && !$photo->hasMoved()) {
-            $uploadDir = ROOTPATH . 'public/uploads/images/';
-            $allowedTypes = ['jpg', 'jpeg', 'png', 'gif'];
-            if (in_array($photo->getExtension(), $allowedTypes)) {
-                $newName = $photo->getRandomName();
-                if(!is_dir($uploadDir)) { mkdir($uploadDir, 0777, true); }
-                $photo->move($uploadDir, $newName);
-                $Picture = $newName;
-            } 
-          }
-        }
+
+    $EmpId =  $this->request->getPost('employeeid');
+    $PictureName = $this->request->getPost('Image');
+    $ModifyPictureName = $this->request->getPost('ModifyImage');
+    $Picture = "";
+    if ($PictureName != '') {
+      //echo  'Exists';
+      //$Picture = $PictureName; 
+      if (strlen((string)$ModifyPictureName) == 0) {
+        //echo  'Exists But Not replace';
+        $Picture = $PictureName;
       } else {
-        //echo  'Not Exists';
-        $photo = $this->request->getFile('photo');
+        //echo  'Exists But Replace';
+        //$Picture = $ModifyPictureName;
+        //$Picture = $this->editimage($ModifyPictureName);  
+        $photo = $this->request->getFile('ModifyImage');
         if ($photo->isValid() && !$photo->hasMoved()) {
           $uploadDir = ROOTPATH . 'public/uploads/images/';
           $allowedTypes = ['jpg', 'jpeg', 'png', 'gif'];
           if (in_array($photo->getExtension(), $allowedTypes)) {
-              $newName = $photo->getRandomName();
-              if(!is_dir($uploadDir)) { mkdir($uploadDir, 0777, true); }
-              $photo->move($uploadDir, $newName);
-              $Picture = $newName;
-          } 
+            $newName = $photo->getRandomName();
+            if (!is_dir($uploadDir)) {
+              mkdir($uploadDir, 0777, true);
+            }
+            $photo->move($uploadDir, $newName);
+            $Picture = $newName;
+          }
         }
       }
-      //echo  $Picture;         
-
-      $FirstName = $this->request->getPost('FirstName');
-      $LastName = $this->request->getPost('LastName');
-      $FatherName = $this->request->getPost('FatherName');
-      $DateofBirth = $this->request->getPost('DateofBirth');
-      $ContactNumber = $this->request->getPost('ContactNumber');
-      $EmailId = $this->request->getPost('emailid');
-      $comEmailId = $this->request->getPost('comemailid');
-      $Gender =  $this->request->getPost('gender');
-      $MartialStatus =  $this->request->getPost('MartialStatus');
-      $BloodGroup =  $this->request->getPost('bloodgroup');
-      $CurrentAddress =  $this->request->getPost('currentaddress');
-      $permanentaddress =  $this->request->getPost('permanentaddress');
-      $emergencycontactname =  $this->request->getPost('emergencycontactname');
-      $emergencycontactnumber =  $this->request->getPost('emergencycontactnumber');
-      $desigination =  $this->request->getPost('desigination');
-      $departmentCode =  $this->request->getPost('departmentname');
-      $dateofjoining =  $this->request->getPost('dateofjoining');
-      //$Previousexperience =  $this->request->getPost('Previousexperience');
-      $pre_experience =  $this->request->getPost('Previousexperience');
-
-      if ($pre_experience == '') {
-        $Previousexperience = null;
-      } else {
-        $Previousexperience = $pre_experience;
-      }
-      $eduqualifaction =  $this->request->getPost('eduqualifaction');
-      $addqualification = $this->request->getPost('addqualification');
-      $referredby = $this->request->getPost('referredby');
-      $referrercontno = $this->request->getPost('referrercontno');
-      $accountno = $this->request->getPost('accountno');
-      $ifsccode = $this->request->getPost('ifsccode');
-      $bankbranchname = $this->request->getPost('bankbranchname');
-      $bankaddress = $this->request->getPost('bankaddress');
-      $aadharno = $this->request->getPost('aadharno');
-      $panno = $this->request->getPost('panno');
-      $panno = $panno !== null && is_string($panno) ? strtoupper($panno) : null;
-      $passportno = $this->request->getPost('passportno');
-      $passportno = $passportno !== null && is_string($passportno) ? strtoupper($passportno) : null;
-      $ValidTill = $this->request->getPost('ValidTill');
-      $addinfo = $this->request->getPost('addinfo');
-      $driverlicense = $this->request->getPost('driverlicense');
-      $driverlicense = $driverlicense !== null && is_string($driverlicense) ? strtoupper($driverlicense) : null;
-      $licenseExpiryDate = $this->request->getPost('LicenseExpiryDate');
-      $VoterID = $this->request->getPost('voterID');
-      $VoterID = $VoterID !== null && is_string($VoterID) ? strtoupper($VoterID) : null;
-      $pfno = $this->request->getPost('pfno');
-      $pfno = $pfno !== null && is_string($pfno) ? strtoupper($pfno) : null;
-      //$uano = $this->request->getPost('uano'); 
-      $esino = $this->request->getPost('esino');
-      $Nominee = $this->request->getPost('nomineename');
-      $chked =  $this->request->getPost('isactive');
-      $is_management_team = $this->request->getPost('is_management_team');
-      $esi_applicable = $this->request->getPost('esi_applicable');
-      $pf_applicable = $this->request->getPost('pf_applicable');
-      $work_location = $this->request->getPost('work_location');
-      // echo 'chkvalue'.  $chked ;
-      if ($chked != '') {
-        $IsActive = '1';
-      } else {
-        $IsActive = '0';
-      }
-      // echo 'chkvalue'. $IsActive ;
-      $UpdatedBY = $this->session->get('userId');
-
-      //$licenseExpiryDate =  get_date_time_format($licenseExpiryDate);
-      $DOB = get_date_format($DateofBirth);
-      $DOJ =  get_date_format($dateofjoining);
-      if ($ValidTill != '') {
-        $Valid =  get_date_format($ValidTill);
-      } else {
-        $Valid = null;
-      }
-
-      if ($licenseExpiryDate != '') {
-        $License_ExpiryDate =  get_date_format($licenseExpiryDate);
-      } else {
-        $License_ExpiryDate = null;
-      }
-
-      //echo $DOB;
-      $Employee = array(
-        'FirstName' => $FirstName, 'LastName' => $LastName, 'FatherName' => $FatherName, 'Gender' => $Gender,
-        'DateofBirth' => $DOB, 'ContactNumber' => $ContactNumber, 'EmailId' => $EmailId,
-        'BloodGroup' => $BloodGroup, 'MartialStatus' => $MartialStatus, 'DateofJoining' => $DOJ,
-        'PreviousYearsOfExp' => $Previousexperience, 'Designation' => $desigination,
-        'Departmentcode' => $departmentCode, 'PresentAddress' => $CurrentAddress,
-        'PermanentAddress' => $permanentaddress, 'EmergencyContactName' => $emergencycontactname,
-        'EmergencyContactNumber' => $emergencycontactnumber, 'Edu_Qualification' => $eduqualifaction,
-        'Additional_Qualification' => $addqualification, 'AadharNo' => $aadharno, 'PANNo' => $panno,
-        'BankAccountNo' => $accountno, 'IFSCCode' => $ifsccode, 'BankBranchName' => $bankbranchname,
-        'BankAddress' => $bankaddress, 'PassportNo' => $passportno, 'Passport_Valid_till' => $Valid,
-        'IsActive' => $IsActive, 'ProfilePic' => $Picture, 'Reference_Name' => $referredby,
-        'Reference_ContactNumber' => $referrercontno, 'Remarks' => $addinfo, 'UpdatedBY' => $UpdatedBY,
-        'personalEmailId' => $comEmailId, 'DriverLicense' => $driverlicense, 'LicenseValidtill' => $License_ExpiryDate,
-        'VoterID' => $VoterID, 'PFNO' => $pfno, 'ESI' => $esino, 'NomineeDetails' => $Nominee,'is_management_team' => $is_management_team ,
-        'esi_applicable'=>$esi_applicable,'pf_applicable'=>$pf_applicable,'work_location'=>$work_location
-      );
-      //print_r($Employee);die();
-      $result = $this->employeedetails_model->UpdateEmployee($Employee, $EmpId);
-
-      // Get the uploaded files
-      $files = $this->request->getFiles();
-      $fileNames = $this->request->getPost('file_name'); // Get user-entered file names
-      if(isset($files['emp_file']))
-      {
-      foreach ($files['emp_file'] as $index => $file) {
-          if ($file->isValid() && !$file->hasMoved()) {
-              // Move the file to the desired directory
-              $newName = $file->getRandomName();
-              $file->move(ROOTPATH . 'public/uploads/images/emp_files', $newName);
-              $path = ROOTPATH . 'public/uploads/images/emp_files/'.$newName;
-              // Store the file information in the database
-              $this->empFiles->save([
-                  'file_name' => $fileNames[$index], // User-entered file name
-                  'emp_file' => $newName, // New file name
-                  'emp_id' => $EmpId,
-                  'path' => $path
-                  
-              ]);
+    } else {
+      //echo  'Not Exists';
+      $photo = $this->request->getFile('photo');
+      if(isset($photo)){
+        if ($photo->isValid() && !$photo->hasMoved()) {
+          $uploadDir = ROOTPATH . 'public/uploads/images/';
+          $allowedTypes = ['jpg', 'jpeg', 'png', 'gif'];
+          if (in_array($photo->getExtension(), $allowedTypes)) {
+            $newName = $photo->getRandomName();
+            if (!is_dir($uploadDir)) {
+              mkdir($uploadDir, 0777, true);
+            }
+            $photo->move($uploadDir, $newName);
+            $Picture = $newName;
           }
+        }
+      }
+    }
+    //echo  $Picture;         
+
+    $FirstName = $this->request->getPost('FirstName');
+    $LastName = $this->request->getPost('LastName');
+    $FatherName = $this->request->getPost('FatherName');
+    $DateofBirth = $this->request->getPost('DateofBirth');
+    $ContactNumber = $this->request->getPost('ContactNumber');
+    $EmailId = $this->request->getPost('emailid');
+    $comEmailId = $this->request->getPost('comemailid');
+    $Gender =  $this->request->getPost('gender');
+    $MartialStatus =  $this->request->getPost('MartialStatus');
+    $BloodGroup =  $this->request->getPost('bloodgroup');
+    $CurrentAddress =  $this->request->getPost('currentaddress');
+    $permanentaddress =  $this->request->getPost('permanentaddress');
+    $emergencycontactname =  $this->request->getPost('emergencycontactname');
+    $emergencycontactnumber =  $this->request->getPost('emergencycontactnumber');
+    $desigination =  $this->request->getPost('desigination');
+    $departmentCode =  $this->request->getPost('departmentname');
+    $dateofjoining =  $this->request->getPost('dateofjoining');
+    //$Previousexperience =  $this->request->getPost('Previousexperience');
+    $pre_experience =  $this->request->getPost('Previousexperience');
+
+    if ($pre_experience == '') {
+      $Previousexperience = null;
+    } else {
+      $Previousexperience = $pre_experience;
+    }
+    $eduqualifaction =  $this->request->getPost('eduqualifaction');
+    $addqualification = $this->request->getPost('addqualification');
+    $referredby = $this->request->getPost('referredby');
+    $referrercontno = $this->request->getPost('referrercontno');
+    $accountno = $this->request->getPost('accountno');
+    $ifsccode = $this->request->getPost('ifsccode');
+    $bankbranchname = $this->request->getPost('bankbranchname');
+    $bankaddress = $this->request->getPost('bankaddress');
+    $aadharno = $this->request->getPost('aadharno');
+    $panno = $this->request->getPost('panno');
+    $panno = $panno !== null && is_string($panno) ? strtoupper($panno) : null;
+    $passportno = $this->request->getPost('passportno');
+    $passportno = $passportno !== null && is_string($passportno) ? strtoupper($passportno) : null;
+    $ValidTill = $this->request->getPost('ValidTill');
+    $addinfo = $this->request->getPost('addinfo');
+    $driverlicense = $this->request->getPost('driverlicense');
+    $driverlicense = $driverlicense !== null && is_string($driverlicense) ? strtoupper($driverlicense) : null;
+    $licenseExpiryDate = $this->request->getPost('LicenseExpiryDate');
+    $VoterID = $this->request->getPost('voterID');
+    $VoterID = $VoterID !== null && is_string($VoterID) ? strtoupper($VoterID) : null;
+    $pfno = $this->request->getPost('pfno');
+    $pfno = $pfno !== null && is_string($pfno) ? strtoupper($pfno) : null;
+    //$uano = $this->request->getPost('uano'); 
+    $esino = $this->request->getPost('esino');
+    $Nominee = $this->request->getPost('nomineename');
+    $chked =  $this->request->getPost('isactive');
+    $is_management_team = $this->request->getPost('is_management_team');
+    $esi_applicable = $this->request->getPost('esi_applicable');
+    $pf_applicable = $this->request->getPost('pf_applicable');
+    $work_location = $this->request->getPost('work_location');
+    // echo 'chkvalue'.  $chked ;
+    if ($chked != '') {
+      $IsActive = '1';
+    } else {
+      $IsActive = '0';
+    }
+    // echo 'chkvalue'. $IsActive ;
+    $UpdatedBY = $this->session->get('userId');
+
+    //$licenseExpiryDate =  get_date_time_format($licenseExpiryDate);
+    $DOB = get_date_format($DateofBirth);
+    $DOJ =  get_date_format($dateofjoining);
+    if ($ValidTill != '') {
+      $Valid =  get_date_format($ValidTill);
+    } else {
+      $Valid = null;
+    }
+
+    if ($licenseExpiryDate != '') {
+      $License_ExpiryDate =  get_date_format($licenseExpiryDate);
+    } else {
+      $License_ExpiryDate = null;
+    }
+
+    // echo $DOB;die;
+    $Employee = array(
+      'FirstName' => $FirstName,
+      'LastName' => $LastName,
+      'FatherName' => $FatherName,
+      'Gender' => $Gender,
+      'DateofBirth' => $DOB,
+      'ContactNumber' => $ContactNumber,
+      'EmailId' => $EmailId,
+      'BloodGroup' => $BloodGroup,
+      'MartialStatus' => $MartialStatus,
+      'DateofJoining' => $DOJ,
+      'PreviousYearsOfExp' => $Previousexperience,
+      'Designation' => $desigination,
+      'Departmentcode' => $departmentCode,
+      'PresentAddress' => $CurrentAddress,
+      'PermanentAddress' => $permanentaddress,
+      'EmergencyContactName' => $emergencycontactname,
+      'EmergencyContactNumber' => $emergencycontactnumber,
+      'Edu_Qualification' => $eduqualifaction,
+      'Additional_Qualification' => $addqualification,
+      'AadharNo' => $aadharno,
+      'PANNo' => $panno,
+      'BankAccountNo' => $accountno,
+      'IFSCCode' => $ifsccode,
+      'BankBranchName' => $bankbranchname,
+      'BankAddress' => $bankaddress,
+      'PassportNo' => $passportno,
+      'Passport_Valid_till' => $Valid,
+      'IsActive' => $IsActive,
+      'ProfilePic' => $Picture,
+      'Reference_Name' => $referredby,
+      'Reference_ContactNumber' => $referrercontno,
+      'Remarks' => $addinfo,
+      'UpdatedBY' => $UpdatedBY,
+      'personalEmailId' => $comEmailId,
+      'DriverLicense' => $driverlicense,
+      'LicenseValidtill' => $License_ExpiryDate,
+      'VoterID' => $VoterID,
+      'PFNO' => $pfno,
+      'ESI' => $esino,
+      'NomineeDetails' => $Nominee,
+      'is_management_team' => $is_management_team,
+      'esi_applicable' => $esi_applicable,
+      'pf_applicable' => $pf_applicable,
+      'work_location' => $work_location
+    );
+    //print_r($Employee);die();
+    $result = $this->employeedetails_model->UpdateEmployee($Employee, $EmpId);
+
+    // Get the uploaded files
+    $files = $this->request->getFiles();
+    $fileNames = $this->request->getPost('file_name'); // Get user-entered file names
+    if (isset($files['emp_file'])) {
+      foreach ($files['emp_file'] as $index => $file) {
+        if ($file->isValid() && !$file->hasMoved()) {
+          // Move the file to the desired directory
+          $newName = $file->getRandomName();
+          $file->move(ROOTPATH . 'public/uploads/images/emp_files', $newName);
+          $path = ROOTPATH . 'public/uploads/images/emp_files/' . $newName;
+          // Store the file information in the database
+          $this->empFiles->save([
+            'file_name' => $fileNames[$index], // User-entered file name
+            'emp_file' => $newName, // New file name
+            'emp_id' => $EmpId,
+            'path' => $path
+
+          ]);
+        }
       }
     }
 
 
-   
+
     $Total_Salary = $this->request->getPost('Total_salary');
     $Basic_Pay = $this->request->getPost('Basic_Pay');
     $HRA_Rate = $this->request->getPost('HRA_Rate');
@@ -774,160 +841,159 @@ class Employeedetails extends BaseController
     $ESI_Rate = $this->request->getPost('ESI_Rate');
     $CreateBy =   $this->session->get('userId');
     $emppay = array('EmpID' => $EmpId, 'TotalSalary' => $Total_Salary, 'Basic_Pay' => $Basic_Pay, 'HRA_Rate' => $HRA_Rate, 'HRA_Amount' => $HRA_Amount,  'PF_Rate' => $PF_Rate, 'ESI_Rate' => $ESI_Rate, 'Created_By' => $CreateBy);
-  
+
 
     $empPayUpdate = $this->emppaydate_model->editemppay($emppay);
 
-      if ($result + $empPayUpdate > 0) {
-        $this->session->setFlashdata('success', 'You Have Successfully updated the Employee Record!');
-      } else {
-        $this->session->setFlashdata('error', 'Record Not Updated!');
-      }
-      return redirect()->route('employeeListing');
-
+    if ($result + $empPayUpdate > 0) {
+      $this->session->setFlashdata('success', 'You Have Successfully updated the Employee Record!');
+      return json_encode(true);
+    } else {
+      $this->session->setFlashdata('error', 'Record Not Updated!');
+      return json_encode(false);
+    }
+    // return redirect()->route('employeeListing');
   }
 
   function exportemployee()
-	{
-		
+  {
     $exportData = $this->employeedetails_model->export_excel();
 
-    $file_name = 'Employee_Details' .' '.  '.xls'; //save our workbook as this file name
-		$spreadsheet = new Spreadsheet();
-		$sheet = $spreadsheet->getActiveSheet();
-        $sheet->mergeCells('L3:S3');
-        $sheet->getStyle('L3')->getAlignment()->setHorizontal('center');    
-        $sheet->setTitle('Employee details');
+    $file_name = 'Employee_Details' . ' ' .  '.xls'; //save our workbook as this file name
+    $spreadsheet = new Spreadsheet();
+    $sheet = $spreadsheet->getActiveSheet();
+    $sheet->mergeCells('L3:S3');
+    $sheet->getStyle('L3')->getAlignment()->setHorizontal('center');
+    $sheet->setTitle('Employee details');
 
-        $headers = [
-          'L3'=>'RESICO Employee Details',
-          'A5'=>'EmpID',
-          'B5'=>'FirstName-LastName',
-          'C5'=>'FatherName',
-          'D5'=>'Gender',
-          'E5'=>'Date of Birth',
-          'F5'=>'ContactNumber',
-          'G5'=>'EmailId',
-          'H5'=>'BloodGroup',
-          'I5'=>'MartialStatus',
-          'J5'=>'DateofJoining',
-          'K5'=>'PreviousYearsOfExp',
-          'L5'=>'Designation',
-          'M5'=>'DepartmentName',
-          'N5'=>'PresentAddress',
-          'O5'=>'PermanentAddress',
-          'P5'=>'EmergencyContactName',
-          'Q5'=>'EmergencyContactNumber',
-          'R5'=>'Edu_Qualification',
-          'S5'=>'Additional_Qualification',
-          'T5'=>'Reference_Name',
-          'U5'=>'Reference_ContactNumber',
-          'V5'=>'BankStatemant',
-          'W5'=>'AadharNo',
-          'X5'=>'PANNo',
-          'Y5'=>'PassportNo',
-          'Z5'=>'Passport_Valid_till',
-          'AA5'=>'Voter ID',
-          'AB5'=>'Driving License',
-          'AC5'=>'Driving License Expiry Date',
-          'AD5'=>'Official Email ID',
-          'AE5'=>'IsActive',
-          'AF5'=>'PFNO',
-          'AG5'=>'ESI',
-          'AH5'=>'Nominee Details',
-          // 'AI5'=>'PF_Balance',
-          // 'AJ5'=>'PF_Bal_On',
-          'AI5'=>'Remarks',
-          'AJ5'=>'CreatedBy',
-          'AK5'=>'UpdatedBY'
+    $headers = [
+      'L3' => 'RESICO Employee Details',
+      'A5' => 'EmpID',
+      'B5' => 'FirstName-LastName',
+      'C5' => 'FatherName',
+      'D5' => 'Gender',
+      'E5' => 'Date of Birth',
+      'F5' => 'ContactNumber',
+      'G5' => 'EmailId',
+      'H5' => 'BloodGroup',
+      'I5' => 'MartialStatus',
+      'J5' => 'DateofJoining',
+      'K5' => 'PreviousYearsOfExp',
+      'L5' => 'Designation',
+      'M5' => 'DepartmentName',
+      'N5' => 'PresentAddress',
+      'O5' => 'PermanentAddress',
+      'P5' => 'EmergencyContactName',
+      'Q5' => 'EmergencyContactNumber',
+      'R5' => 'Edu_Qualification',
+      'S5' => 'Additional_Qualification',
+      'T5' => 'Reference_Name',
+      'U5' => 'Reference_ContactNumber',
+      'V5' => 'BankStatemant',
+      'W5' => 'AadharNo',
+      'X5' => 'PANNo',
+      'Y5' => 'PassportNo',
+      'Z5' => 'Passport_Valid_till',
+      'AA5' => 'Voter ID',
+      'AB5' => 'Driving License',
+      'AC5' => 'Driving License Expiry Date',
+      'AD5' => 'Official Email ID',
+      'AE5' => 'IsActive',
+      'AF5' => 'PFNO',
+      'AG5' => 'ESI',
+      'AH5' => 'Nominee Details',
+      // 'AI5'=>'PF_Balance',
+      // 'AJ5'=>'PF_Bal_On',
+      'AI5' => 'Remarks',
+      'AJ5' => 'CreatedBy',
+      'AK5' => 'UpdatedBY'
+    ];
+
+    foreach ($headers as $cell => $value) {
+      $sheet->setCellValue($cell, $value);
+      $sheet->getStyle($cell)->getFont()->setSize($cell == 'L3' ? 14 : 12);
+      $sheet->getStyle($cell)->getFont()->setBold(true);
+    }
+
+    if ($exportData) {
+      $i = 6;
+      $s = 1;
+      foreach ($exportData as $data) {
+        $rowData = [
+          'A' . $i,
+          $data['EmpID'],
+          'B' . $i => $data['FirstName'] . '-' . $data['LastName'],
+          'C' . $i => $data['FatherName'],
+          'D' . $i => $data['Gender'],
+          'E' . $i => $data['DateofBirth'],
+          'F' . $i => $data['ContactNumber'],
+          'G' . $i => $data['EmailId'],
+          'H' . $i => $data['BloodGroup'],
+          'I' . $i => $data['MartialStatus'],
+          'J' . $i => $data['DateofJoining'],
+          'K' . $i => $data['PreviousYearsOfExp'],
+          'L' . $i => $data['Designation'],
+          'M' . $i => $data['DepartmentName'],
+          'N' . $i => $data['PresentAddress'],
+          'O' . $i => $data['PermanentAddress'],
+          'P' . $i => $data['EmergencyContactName'],
+          'Q' . $i => $data['EmergencyContactNumber'],
+          'R' . $i => $data['Edu_Qualification'],
+          'S' . $i => $data['Additional_Qualification'],
+          'T' . $i => $data['Reference_Name'],
+          'U' . $i => $data['Reference_ContactNumber'],
+          'V' . $i => $data['BankAccountNo'] . '-' . $data['IFSCCode'] . '-' . $data['BankBranchName'] . $data['BankAddress'],
+          'W' . $i => $data['AadharNo'],
+          'X' . $i => $data['PANNo'],
+          'Y' . $i => $data['PassportNo'],
+          'Z' . $i => $data['Passport_Valid_till'],
+          'AA' . $i => $data['VoterID'],
+          'AB' . $i => $data['DriverLicense'],
+          'AC' . $i => $data['LicenseValidtill'],
+          'AD' . $i => $data['personalEmailId'],
+          'AE' . $i => $data['IsActive'],
+          'AF' . $i => $data['PFNO'],
+          'AG' . $i => $data['ESI'],
+          'AH' . $i => $data['NomineeDetails'],
+          // 'AI'. $i=>$data['PF_Balance'],
+          // 'AJ'. $i=>$data['PF_Bal_On'],
+          'AI' . $i => $data['Remarks'],
+          'AJ' . $i => $data['CreatedByName'],
+          'AK' . $i => $data['UpdatedByName'],
         ];
-        
-        foreach ($headers as $cell => $value) {
-            $sheet->setCellValue($cell, $value);
-            $sheet->getStyle($cell)->getFont()->setSize($cell == 'L3' ? 14 : 12);
-            $sheet->getStyle($cell)->getFont()->setBold(true);
+
+        foreach ($rowData as $cell => $value) {
+          $sheet->setCellValue($cell, $value);
         }
 
-        if($exportData){
-            $i = 6;$s = 1;
-            foreach ($exportData as $data) {
-                $rowData = [
-                  'A'. $i,$data['EmpID'],
-                  'B'. $i=>$data['FirstName'].'-'.$data['LastName'],
-                  'C'. $i=>$data['FatherName'],
-                  'D'. $i=>$data['Gender'],
-                  'E'. $i=>$data['DateofBirth'],
-                  'F'. $i=>$data['ContactNumber'],
-                  'G'. $i=>$data['EmailId'],
-                  'H'. $i=>$data['BloodGroup'],
-                  'I'. $i=>$data['MartialStatus'],
-                  'J'. $i=>$data['DateofJoining'],
-                  'K'. $i=>$data['PreviousYearsOfExp'],
-                  'L'. $i=>$data['Designation'],
-                  'M'. $i=>$data['DepartmentName'],
-                  'N'. $i=>$data['PresentAddress'],
-                  'O'. $i=>$data['PermanentAddress'],
-                  'P'. $i=>$data['EmergencyContactName'],
-                  'Q'. $i=>$data['EmergencyContactNumber'],
-                  'R'. $i=>$data['Edu_Qualification'],
-                  'S'. $i=>$data['Additional_Qualification'],
-                  'T'. $i=>$data['Reference_Name'],
-                  'U'. $i=>$data['Reference_ContactNumber'],
-                  'V'. $i=>$data['BankAccountNo'].'-'.$data['IFSCCode'].'-'.$data['BankBranchName'].$data['BankAddress'],
-                  'W'. $i=>$data['AadharNo'],
-                  'X'. $i=>$data['PANNo'],
-                  'Y'. $i=>$data['PassportNo'],
-                  'Z'. $i=>$data['Passport_Valid_till'],
-                  'AA'. $i=>$data['VoterID'],
-                  'AB'. $i=>$data['DriverLicense'],
-                  'AC'. $i=>$data['LicenseValidtill'],
-                  'AD'. $i=>$data['personalEmailId'],
-                  'AE'. $i=>$data['IsActive'],
-                  'AF'. $i=>$data['PFNO'],
-                  'AG'. $i=>$data['ESI'],
-                  'AH'. $i=>$data['NomineeDetails'],
-                  // 'AI'. $i=>$data['PF_Balance'],
-                  // 'AJ'. $i=>$data['PF_Bal_On'],
-                  'AI'. $i=>$data['Remarks'],
-                  'AJ'. $i=>$data['CreatedByName'],
-                  'AK'. $i=>$data['UpdatedByName'],
-                ];
-
-                foreach ($rowData as $cell => $value) {
-                    $sheet->setCellValue($cell, $value);
-                }
-
-                $i++;
-                $s++;
-            }
-
-        }
-		// $writer = new Xlsx($spreadsheet);
-		// $writer->save($file_name);
-		// header("Content-Type: application/vnd.ms-excel");
-		// header('Content-Disposition: attachment; filename="' . basename($file_name) . '"');
-		// header('Expires: 0');
-		// header('Cache-Control: must-revalidate');
-		// header('Pragma: public');
-		// header('Content-Length:' . filesize($file_name));
-		// flush();
-		// readfile($file_name);
-		// exit;
+        $i++;
+        $s++;
+      }
+    }
+    // $writer = new Xlsx($spreadsheet);
+    // $writer->save($file_name);
+    // header("Content-Type: application/vnd.ms-excel");
+    // header('Content-Disposition: attachment; filename="' . basename($file_name) . '"');
+    // header('Expires: 0');
+    // header('Cache-Control: must-revalidate');
+    // header('Pragma: public');
+    // header('Content-Length:' . filesize($file_name));
+    // flush();
+    // readfile($file_name);
+    // exit;
     // Clear the output buffer to prevent any other output
     ob_clean();
 
     $writer = new Xlsx($spreadsheet);
-    
+
 
     header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
-    header('Content-Disposition: attachment;filename="'. $file_name .'"');
+    header('Content-Disposition: attachment;filename="' . $file_name . '"');
     header('Cache-Control: max-age=0');
     header('Expires: 0');
     header('Pragma: public');
 
     $writer->save('php://output');
     exit;
-	}
-
-
   }
+}
diff --git a/app/Views/addEmployeenew.php b/app/Views/addEmployeenew.php
new file mode 100644
index 00000000..a48c2f4c
--- /dev/null
+++ b/app/Views/addEmployeenew.php
@@ -0,0 +1,1420 @@
+
+
+
+
+
+
+
+
+
+
+
+

Add Employee

+
+
+
+ Back +
+
+
+ + +
+ +
+ +
+
+ +
+
+ your image
+ + +
+
+
+
+
+ Full Name* + +
+ +
Father / Husband Name* + +
+ +
Contact Number* + +
+ +
Gender* + +
+
Date Of Birth* + +
+
+
+
Age + +
+
Personal Email ID + +
+
Official Email ID + +
+
+ + Blood group* + +
+ +
+ Marital Status* + +
+
+
+
+ Current Address* + +
+
+ Current address same as permanent address +
+
+ Permanent Address* + +
+
+
+
+ Emergency Contact Name + +
+ +
+ Emergency Contact Number + +
+
+
+
+ + + +
+ +
+
+
+
+
+
+
+
Designation* + + +
+
Department* + + +
+
Date Of Joining* + +
+
Previous Years of Experience + +
+
+
+ +
Qualification* + + +
+ + + +
+
+ +
Work Location* + + +
+
+
+ Management + Team + +
+
+
+
+
+
+ + + +
+ +
+
+
+
+
+
+
+
Bank Name* + +
+
Account Number* + +
+
IFSC Code* + +
+
Bank Address + +
+
+
+ + +
+
+
+
+
+
+
+
+ Total Salary + * + + + +
+
+
+
+ Basic Pay + * + + +
+
+
+
+ HRA Rate(%) + * + + +
+
+
+
+ HRA Amount + * + + +
+
+
+
+ ESI + Applicable + +
+
+
+
ESI Number + +
+
+
+
+ ESI Rate(%) + * + + +
+
+
+
+
+ PF + Applicable + +
+
+
+
UAN + +
+
+ +
+
+ PF Rate(%) + * + + +
+
+
+
+ +
+ + + +
+ +
+
+
+
+
+
+
+
Aadhar Number * + +
+
PAN Number + +
+
Passport Number + +
+
Passport Expiry Date + +
+ +
Voter ID + +
+
Driving License + +
+ +
Driving License Expiry Date + +
+ +
+
+
+
+
+
+
+
+
Nominee reference + +
+ +
+
+
+ + +
+ +
+
+
+
+
+
+
+ +
+ File Name + +
+
+ File + +
+
+ +
+
+ +
+
+
+ + + +
+
+
+
+
+
+
+
+
+ + + + + \ No newline at end of file diff --git a/app/Views/editEmployee.php b/app/Views/editEmployee.php index 4826c3d1..f4b6b9b3 100644 --- a/app/Views/editEmployee.php +++ b/app/Views/editEmployee.php @@ -814,12 +814,14 @@ legend {
-
Personal Email ID +
+ Personal Email ID
-
Official Email ID +
+ Official Email ID
-
Current Address + Current Address*
-
Permanent Address + Permanent Address*
-
Emergency Contact Name +
+ Emergency Contact Name
-
Emergency Contact Number +
+ Emergency Contact Number
-
Designation + Designation*
-
Department + Department*
-
Date Of Joining + Date Of Joining*
- `; $('#filesContainer').append(newRowHtml); - $('.a1').hide(); - $('#filesContainer .pad:last .a1').show(); + // $('.a1').hide(); + // $('#filesContainer .pad:last .a1').show(); } function removeContact(button) { diff --git a/app/Views/editEmployeenew.php b/app/Views/editEmployeenew.php new file mode 100644 index 00000000..46dc8e0c --- /dev/null +++ b/app/Views/editEmployeenew.php @@ -0,0 +1,1693 @@ + +EmpID; + $FirstName = $Emp->FirstName; + $LastName = $Emp->LastName; + $FatherName = $Emp->FatherName; + $Gender = $Emp->Gender; + $DateofBirth = $Emp->DateofBirth; + $from = new DateTime($DateofBirth); + $to = new DateTime('today'); + $Age = $from->diff($to)->y; + $DOB = $from->format('d-m-Y'); + $ContactNumber = $Emp->ContactNumber; + $EmailId = $Emp->EmailId; + $BloodGroup = $Emp->BloodGroup; + $MartialStatus = $Emp->MartialStatus; + $DateofJoining = $Emp->DateofJoining; + $dtDOJ = new DateTime($DateofJoining); + $DOJ = $dtDOJ->format('d-m-Y'); + $PreviousYearsOfExp = $Emp->PreviousYearsOfExp; + $Designation = $Emp->Designation; + $work_location = $Emp->work_location; + $Departmentcode = $Emp->Departmentcode; + $DepartmentName = $Emp->DepartmentName; + $PresentAddress = $Emp->PresentAddress; + $PermanentAddress = $Emp->PermanentAddress; + $EmergencyContactName = $Emp->EmergencyContactName; + $EmergencyContactNumber = $Emp->EmergencyContactNumber; + $Edu_Qualification = $Emp->Edu_Qualification; + $Additional_Qualification = $Emp->Additional_Qualification; + $AadharNo = $Emp->AadharNo; + $PANNo = $Emp->PANNo; + $BankAccountNo = $Emp->BankAccountNo; + $IFSCCode = $Emp->IFSCCode; + $BankBranchName = $Emp->BankBranchName; + $BankAddress = $Emp->BankAddress; + $PassportNo = $Emp->PassportNo; + $Passport_Valid_till = $Emp->Passport_Valid_till; + if ($Passport_Valid_till != '' && $Passport_Valid_till != '0000-00-00 00:00:00') { + $dtpassport = new DateTime($Passport_Valid_till); + $DOPassport = $dtpassport->format('d-m-Y'); + } else { + + $DOPassport = ''; + } + + $isactive = $Emp->IsActive; + if (!empty($Emp->ProfilePic)) { + $ProfilePic = 'public/uploads/images/' . $Emp->ProfilePic; + } else { + $ProfilePic = 'public/assets/dist/img/avatar.png'; + } + $Reference_Name = $Emp->Reference_Name; + $Reference_ContactNumber = $Emp->Reference_ContactNumber; + $Remarks = $Emp->Remarks; + $personalEmailId = $Emp->personalEmailId; + $DriverLicense = $Emp->DriverLicense; + $VoterID = $Emp->VoterID; + $pfno = $Emp->PFNO; + $esino = $Emp->ESI; + $nominee = $Emp->NomineeDetails; + + + if ($Emp->LicenseValidtill != '' && $Emp->LicenseValidtill != '0000-00-00 00:00:00') { + $License = new DateTime($Emp->LicenseValidtill); + $LicenseValidtill = $License->format('d-m-Y'); + } else { + $LicenseValidtill = ''; + } + //$chk = $uf->IsActive; + if ($isactive == 1) { + $IsActive = 'checked'; + } else { + $IsActive = ''; + } + + $is_management_team = $Emp->is_management_team; + $esi_applicable = $Emp->esi_applicable; + $pf_applicable = $Emp->pf_applicable; + } +} +?> + +
+
+
+
+
+
+
+
+
+

Edit Employee

+
+
+
+ Back +
+
+
+ + +
+ +
+ +
+
+ +
+
+ your image
+ + + + + + + + + name="isactive" value="1"> IS ACTIVE + +
+
+
+
+
+ Full Name* + +
+ +
+ Father / Husband Name* + +
+ +
+ Date Of Birth* + +
+ +
+ Age* + +
+
+ Contact Number* + +
+
+
+
+ Gender* + +
+
+ Personal Email ID + +
+
+ Official Email ID + +
+
+ + Blood group* + +
+ +
+ Marital Status* + +
+
+
+
+ Current Address* + +
+
+ Current address same as permanent + address +
+
+ Permanent Address* + +
+
+
+
+ Emergency Contact Name + +
+ +
+ Emergency Contact Number + +
+
+
+
+ + + +
+ +
+
+
+
+
+
+
+
+ Designation* + + + +
+
+ Department* + + +
+
+ Date Of Joining* + +
+
+ Previous Years of Experience + +
+
+
+ +
+ Qualification* + +
+ + + +
+
+ +
+ Work Location* + + +
+
+
+ Management + Team + +
+
+
+
+
+
+ + + +
+ +
+
+
+
+
+
+
+
+ Bank Name + + +
+
+ Account Number + +
+
+ IFSC Code + +
+
+ Bank Address + +
+
+
+ + +
+
+
+
+
+
+
+
+ + Total Salary + * + + + +
+
+
+
+ Basic Pay + * + + +
+
+
+
+ HRA Rate(%) + * + + + +
+
+
+
+ HRA Amount + * + + + +
+
+
+
+ ESI + Applicable + +
+
+
+
+ ESI Number + +
+
+
+
+ ESI Rate(%) + * + + + +
+
+
+
+
+ PF + Applicable + +
+
+
+
+ UAN + +
+
+ +
+
+ PF Rate(%) + * + + +
+
+
+
+ +
+ + + +
+ +
+
+
+
+
+
+
+
+ Aadhar Number * + +
+
+ PAN Number + +
+
+ Passport Number + +
+
+ Passport Expiry Date + +
+ +
+ Voter ID + +
+
+ Driving License + + +
+ +
+ Driving License Expiry Date + +
+ +
+
+
+
+
+
+
+
+
+ Nominee reference + +
+ +
+
+
+ + +
+ +
+
+
+
+
+
+
+ + + 0) { + foreach ($emp_data as $key => $value) { ?> + +
+
+ File Name + +
+
+ + + +
+
+ +
+
+ + +
+ File Name + +
+
+ File + +
+
+ +
+ + +
+ +
+
+
+ + + +
+
+
+
+
+
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/app/Views/includes/new_footer.php b/app/Views/includes/new_footer.php index 31ec9b10..7a90c9d0 100644 --- a/app/Views/includes/new_footer.php +++ b/app/Views/includes/new_footer.php @@ -13,46 +13,46 @@
@@ -135,6 +135,13 @@ + + + + + + + From a1be08cf7fd6abc95b6105686888f831ece198ae Mon Sep 17 00:00:00 2001 From: aadhavan valli Date: Tue, 3 Sep 2024 18:09:14 +0530 Subject: [PATCH 8/9] CHANGE_DATE_PICKER_CHECK_FULL --- app/Views/Report_pending_purchase.php | 4 +- app/Views/addEmployeenew.php | 2 +- app/Views/addasset.php | 4 +- app/Views/alterpurchaseorder.php | 436 +++++++-------- app/Views/companyview.php | 44 +- app/Views/editRevenueAmendPO.php | 2 +- app/Views/editServiceAmendPO.php | 2 +- app/Views/employeeListing.php | 15 +- app/Views/inwardgateregister.php | 4 +- app/Views/requisitionlist.php | 735 +++++++++++++------------- app/Views/viewinwardgateregister.php | 54 ++ 11 files changed, 690 insertions(+), 612 deletions(-) diff --git a/app/Views/Report_pending_purchase.php b/app/Views/Report_pending_purchase.php index 321afeac..03bc0e6f 100644 --- a/app/Views/Report_pending_purchase.php +++ b/app/Views/Report_pending_purchase.php @@ -129,7 +129,7 @@
- +
@@ -138,7 +138,7 @@
- +
diff --git a/app/Views/addEmployeenew.php b/app/Views/addEmployeenew.php index a48c2f4c..d0e47df9 100644 --- a/app/Views/addEmployeenew.php +++ b/app/Views/addEmployeenew.php @@ -999,7 +999,7 @@ - +
diff --git a/app/Views/addasset.php b/app/Views/addasset.php index fc84c896..d22c5c4c 100644 --- a/app/Views/addasset.php +++ b/app/Views/addasset.php @@ -414,8 +414,8 @@ - }); - + }) +; }); diff --git a/app/Views/alterpurchaseorder.php b/app/Views/alterpurchaseorder.php index 094ae7bb..f10c9456 100644 --- a/app/Views/alterpurchaseorder.php +++ b/app/Views/alterpurchaseorder.php @@ -3277,129 +3277,129 @@ if (!empty($INRSYMBOL)) {
-
-
+
+
- CGST In % -
+ CGST In % +
-
-
- - 'EditCgst', 'value' => set_value('EditCgst', 0), 'id' => 'EditCgst', 'class' => 'form-control num', 'placeholder' => 'CGST TAX PERCENTAGE', 'onchange' => 'EditRatechange();ChangeEditSgst();', 'onkeypress' => 'return isNumberKey(event);'); - echo form_input($data); - ?> -
- -
-
-
- - 'EditAfterCgst', 'value' => set_value('EditAfterCgst', 0), 'id' => 'EditAfterCgst', 'class' => 'form-control num', 'placeholder' => 'After CGST', 'readonly' => 'true'); - echo form_input($data); - ?> -
+
+
+ 'EditCgst', 'value' => set_value('EditCgst', 0), 'id' => 'EditCgst', 'class' => 'form-control num', 'placeholder' => 'CGST TAX PERCENTAGE', 'onchange' => 'EditRatechange();ChangeEditSgst();', 'onkeypress' => 'return isNumberKey(event);'); + echo form_input($data); + ?>
-
-
- - SGST In % -
- -
-
- - 'EditSgst', 'value' => set_value('EditSgst', 0), 'id' => 'EditSgst', 'class' => 'form-control num', 'placeholder' => 'SGST TAX PERCENTAGE', 'onchange' => 'EditRatechange()', 'onkeypress' => 'return isNumberKey(event);'); - echo form_input($data); - ?> -
- -
-
-
- - 'EditAfterSgst', 'value' => set_value('EditAfterSgst', 0), 'id' => 'EditAfterSgst', 'class' => 'form-control num', 'placeholder' => 'After SGST', 'readonly' => 'true'); - echo form_input($data); - ?> -
+
+
+ 'EditAfterCgst', 'value' => set_value('EditAfterCgst', 0), 'id' => 'EditAfterCgst', 'class' => 'form-control num', 'placeholder' => 'After CGST', 'readonly' => 'true'); + echo form_input($data); + ?>
-
-
- IGST In % -
+
+
+
-
-
+ SGST In % +
- 'EditIgst', 'value' => set_value('EditIgst', 0), 'id' => 'EditIgst', 'class' => 'form-control num', 'placeholder' => 'IGST TAX PERCENTAGE', 'onchange' => 'EditRatechange()', 'onkeypress' => 'return isNumberKey(event);'); - echo form_input($data); - ?> -
- -
-
-
- - 'EditAfterIgst', 'value' => set_value('EditAfterIgst', 0), 'id' => 'EditAfterIgst', 'class' => 'form-control num', 'placeholder' => 'After IGST', 'readonly' => 'true'); - echo form_input($data); - ?> - -
+
+
+ 'EditSgst', 'value' => set_value('EditSgst', 0), 'id' => 'EditSgst', 'class' => 'form-control num', 'placeholder' => 'SGST TAX PERCENTAGE', 'onchange' => 'EditRatechange()', 'onkeypress' => 'return isNumberKey(event);'); + echo form_input($data); + ?>
-
-
- +
+
+ + 'EditAfterSgst', 'value' => set_value('EditAfterSgst', 0), 'id' => 'EditAfterSgst', 'class' => 'form-control num', 'placeholder' => 'After SGST', 'readonly' => 'true'); + echo form_input($data); + ?>
-
-
- 'EditOtherAllowances', 'value' => set_value('EditOtherAllowances', 0), 'id' => 'EditOtherAllowances', 'class' => 'form-control num', 'onchange' => 'EditRatechange()', 'onkeypress' => 'return isNumberKey(event);'); - echo form_input($data); - ?> -
+ +
+ +
+
+
+ + IGST In % +
+ +
+
+ + 'EditIgst', 'value' => set_value('EditIgst', 0), 'id' => 'EditIgst', 'class' => 'form-control num', 'placeholder' => 'IGST TAX PERCENTAGE', 'onchange' => 'EditRatechange()', 'onkeypress' => 'return isNumberKey(event);'); + echo form_input($data); + ?> +
+ +
+
+
+ + 'EditAfterIgst', 'value' => set_value('EditAfterIgst', 0), 'id' => 'EditAfterIgst', 'class' => 'form-control num', 'placeholder' => 'After IGST', 'readonly' => 'true'); + echo form_input($data); + ?> + +
+ +
+ +
+
+
+ +
+
+
+ 'EditOtherAllowances', 'value' => set_value('EditOtherAllowances', 0), 'id' => 'EditOtherAllowances', 'class' => 'form-control num', 'onchange' => 'EditRatechange()', 'onkeypress' => 'return isNumberKey(event);'); + echo form_input($data); + ?>
-
-
- -
-
-
- 'EditTotalOrderValue', 'value' => set_value('EditTotalOrderValue'), 'id' => 'EditTotalOrderValue', 'class' => 'form-control num', 'readonly' => 'true'); - echo form_input($data); - ?> -
+
+
+
+ +
+
+
+ 'EditTotalOrderValue', 'value' => set_value('EditTotalOrderValue'), 'id' => 'EditTotalOrderValue', 'class' => 'form-control num', 'readonly' => 'true'); + echo form_input($data); + ?>
-
-
+
+
+
'EdittxtSpcialInstructionSingle', 'value' => set_value('EdittxtSpcialInstructionSingle'), 'id' => 'EdittxtSpcialInstructionSingle', 'class' => 'form-control', 'rows' => '3', 'cols' => '40'); echo form_textarea($data); ?> -
- +
+ + - -
- -
- 'EditRevenueQuantity', 'value' => set_value('EditQuantity'), 'id' => 'EditRevenueQuantity', 'class' => 'form-control num', 'onkeypress' => 'return isNumberKey(event);', 'onchange' => 'Editchange()', 'style' => 'text-align:right;'); - echo form_input($data); - ?> -
+
+ +
+ 'EditRevenueQuantity', 'value' => set_value('EditQuantity'), 'id' => 'EditRevenueQuantity', 'class' => 'form-control num', 'onkeypress' => 'return isNumberKey(event);', 'onchange' => 'Editchange()', 'style' => 'text-align:right;'); + echo form_input($data); + ?>
-
- -
- 'EditRevenueRate', 'value' => set_value('EditRate'), 'id' => 'EditRevenueRate', 'class' => 'form-control num', 'onkeypress' => 'return isNumberKey(event);', 'onchange' => 'Editchange()', 'style' => 'text-align:right;'); - echo form_input($data); - ?> -
+
+
+ +
+ 'EditRevenueRate', 'value' => set_value('EditRate'), 'id' => 'EditRevenueRate', 'class' => 'form-control num', 'onkeypress' => 'return isNumberKey(event);', 'onchange' => 'Editchange()', 'style' => 'text-align:right;'); + echo form_input($data); + ?>
-
- 'editrevenueEmergPer', 'value' => set_value('editrevenueEmergPer'), 'id' => 'editrevenueEmergPer', 'class' => 'form-control'); - echo form_input($data); ?> -
-
- -
- 'txtEditRevenueBasicValue', 'value' => set_value('txtEditBasicValue'), 'id' => 'txtEditRevenueBasicValue', 'class' => 'form-control num', 'readonly' => 'true', 'style' => 'text-align:right;'); - echo form_input($data); - ?> -
+
+
+ 'editrevenueEmergPer', 'value' => set_value('editrevenueEmergPer'), 'id' => 'editrevenueEmergPer', 'class' => 'form-control'); + echo form_input($data); ?> +
+
+ +
+ 'txtEditRevenueBasicValue', 'value' => set_value('txtEditBasicValue'), 'id' => 'txtEditRevenueBasicValue', 'class' => 'form-control num', 'readonly' => 'true', 'style' => 'text-align:right;'); + echo form_input($data); + ?>
+
@@ -3763,16 +3763,16 @@ if (!empty($INRSYMBOL)) {
-
- +
+ 'Edit_Service_Description', 'value' => set_value('Edit_Service_Description'), 'id' => 'Edit_Service_Description', 'class' => 'form-control', 'rows' => '2', 'cols' => '100'); echo form_textarea($data);; ?>
-
+
- +
-
- -
- 'Quantity', 'value' => set_value('Quantity'), 'id' => 'Quantity', 'class' => 'form-control num', 'onkeypress' => 'return isNumberKey(event);', 'onchange' => 'change()'); - echo form_input($data); - ?> -
+
+ +
+ 'Quantity', 'value' => set_value('Quantity'), 'id' => 'Quantity', 'class' => 'form-control num', 'onkeypress' => 'return isNumberKey(event);', 'onchange' => 'change()'); + echo form_input($data); + ?>
-
- -
- 'Rate', 'value' => set_value('Rate'), 'id' => 'Rate', 'class' => 'form-control num', 'onkeypress' => 'return isNumberKey(event);', 'onchange' => 'change()'); - echo form_input($data); - ?> -
+
+
+ +
+ 'Rate', 'value' => set_value('Rate'), 'id' => 'Rate', 'class' => 'form-control num', 'onkeypress' => 'return isNumberKey(event);', 'onchange' => 'change()'); + echo form_input($data); + ?>
-
- 'addrevenueEmergPer', 'value' => set_value('addrevenueEmergPer'), 'id' => 'addrevenueEmergPer', 'class' => 'form-control'); - echo form_input($data); ?> -
-
- -
- 'txtBasicValue', 'value' => set_value('txtBasicValue'), 'id' => 'txtBasicValue', 'class' => 'form-control num', 'readonly' => 'true'); - echo form_input($data); - ?> -
+
+
+ 'addrevenueEmergPer', 'value' => set_value('addrevenueEmergPer'), 'id' => 'addrevenueEmergPer', 'class' => 'form-control'); + echo form_input($data); ?> +
+
+ +
+ 'txtBasicValue', 'value' => set_value('txtBasicValue'), 'id' => 'txtBasicValue', 'class' => 'form-control num', 'readonly' => 'true'); + echo form_input($data); + ?>
+
@@ -4104,8 +4104,8 @@ if (!empty($INRSYMBOL)) {
-
- +
+ 'Add_Service_Description', 'value' => set_value('Add_Service_Description'), 'id' => 'Add_Service_Description', 'class' => 'form-control', 'rows' => '2', 'cols' => '100'); echo form_textarea($data);; @@ -5765,7 +5765,7 @@ if (!empty($INRSYMBOL)) { addHidden(theForm, "RevenueIgst" + temp, Igst); addHidden(theForm, "RevenueAfterIgst" + temp, AfterIgst); $('#txtRowCount1').val(temp); - + $('#hiddenRevenueuserid').val(temp); clearRevenueModalFields(); @@ -5925,6 +5925,10 @@ if (!empty($INRSYMBOL)) { $(document).ready(function() { + $('#Deliverydt').attr({ + 'data-provide': 'datepicker', + 'data-date-format': 'dd-mm-yyyy' + }); // Initialize the DataTable var table = $('#serviceTax').DataTable({ @@ -6753,7 +6757,7 @@ if (!empty($INRSYMBOL)) { populateValueMainFormForEditServiceTax(); - }else{ + } else { console.log("in else part..."); } @@ -7178,79 +7182,79 @@ if (!empty($INRSYMBOL)) { }); }); $(document).ready(function() { - $("#EDITREVENUE").on("shown.bs.modal", function(e) { - var userid = $(e.relatedTarget).data('userid'); + $("#EDITREVENUE").on("shown.bs.modal", function(e) { + var userid = $(e.relatedTarget).data('userid'); - var CheckLocalInter = $('#CheckLocalInter' + userid).val(); - if (CheckLocalInter == "0") { + var CheckLocalInter = $('#CheckLocalInter' + userid).val(); + if (CheckLocalInter == "0") { - $('#SGSTEditModel').show(); - $('#IGSTEditModel').hide(); + $('#SGSTEditModel').show(); + $('#IGSTEditModel').hide(); - } else { + } else { - $('#SGSTEditModel').hide(); - $('#IGSTEditModel').show(); + $('#SGSTEditModel').hide(); + $('#IGSTEditModel').show(); - } + } - $('#isEdit').val(1); - //alert(userid); - var tr = document.getElementById(userid); + $('#isEdit').val(1); + //alert(userid); + var tr = document.getElementById(userid); - var cellval = tr.cells; + var cellval = tr.cells; - var id = $('#Reqnumber' + userid).val(); + var id = $('#Reqnumber' + userid).val(); - $('#EditRevenueReqNo').val($('#Reqnumber' + userid).val()); - $('#EditRevenuedeptName').val($('#departmentName' + userid).val()); - $("#EditRevenueCostCenter").val($('#costCode' + userid).val()); - $('#EditRevenueAvlBudAmt').val($('#AvilBudget' + userid).val() ? $('#AvilBudget' + userid).val() : 0); - $('#EditRevenueItemName').val($('#materialName' + userid).val()); - $('#EditRevenueUOM').val($('#uom' + userid).val()); - $('#EditRevenueQuantity').val($('#quantity' + userid).val()); - $('#EditRevenueRate').val($('#itemRate' + userid).val()); - $('#editrevenueEmergPer').val($('#per' + userid).val()); - $('#txtEditRevenueBasicValue').val(cellval[7].innerHTML); - RequistQuantity = $('#quantity' + userid).val(); - $('#txtEditDiscount').val($('#DisVal' + userid).val()); - $('#txtEditAfterDiscount').val($('#AfterDisVal' + userid).val()); + $('#EditRevenueReqNo').val($('#Reqnumber' + userid).val()); + $('#EditRevenuedeptName').val($('#departmentName' + userid).val()); + $("#EditRevenueCostCenter").val($('#costCode' + userid).val()); + $('#EditRevenueAvlBudAmt').val($('#AvilBudget' + userid).val() ? $('#AvilBudget' + userid).val() : 0); + $('#EditRevenueItemName').val($('#materialName' + userid).val()); + $('#EditRevenueUOM').val($('#uom' + userid).val()); + $('#EditRevenueQuantity').val($('#quantity' + userid).val()); + $('#EditRevenueRate').val($('#itemRate' + userid).val()); + $('#editrevenueEmergPer').val($('#per' + userid).val()); + $('#txtEditRevenueBasicValue').val(cellval[7].innerHTML); + RequistQuantity = $('#quantity' + userid).val(); + $('#txtEditDiscount').val($('#DisVal' + userid).val()); + $('#txtEditAfterDiscount').val($('#AfterDisVal' + userid).val()); - $('#txtEditPackaging').val($('#PackVal' + userid).val()); - $('#txtEditAfterPackaging').val($('#AfterPackVal' + userid).val()); + $('#txtEditPackaging').val($('#PackVal' + userid).val()); + $('#txtEditAfterPackaging').val($('#AfterPackVal' + userid).val()); - $('#txtEditFreight').val($('#FreightVal' + userid).val()); - $('#txtEditAfterFreight').val($('#AfterFreightVal' + userid).val()); + $('#txtEditFreight').val($('#FreightVal' + userid).val()); + $('#txtEditAfterFreight').val($('#AfterFreightVal' + userid).val()); - $('#EditNOOfTrips').val($('#NoOfTrip' + userid).val()); + $('#EditNOOfTrips').val($('#NoOfTrip' + userid).val()); - var FreightType = $('#FreightType' + userid).val(); + var FreightType = $('#FreightType' + userid).val(); - if (FreightType == "PER TRIP") { - $('#EditTripsValue').show(); - } else { - $('#EditTripsValue').hide(); - } - $('#txtEditInsurance').val($('#Insval' + userid).val()); - $('#RevenueEditAfterCgst').val($('#RevenueAfterCgst' + userid).val()); - $('#RevenueEditAfterSgst').val($('#RevenueAfterSgst' + userid).val()); - $('#RevenueEditAfterIgst').val($('#RevenueAfterIgst' + userid).val()); - $('#RevenueEditCgst').val($('#RevenueCgst' + userid).val()); - $('#RevenueEditSgst').val($('#RevenueSgst' + userid).val()); - $('#RevenueEditIgst').val($('#RevenueIgst' + userid).val()); - $('#txtEditRevenueTotalOrderValue').val($('#TotalOrderValue' + userid).val()); - tinyMCE.get('Edit_Service_Description').setContent($('#service_description' + userid).val()); + if (FreightType == "PER TRIP") { + $('#EditTripsValue').show(); + } else { + $('#EditTripsValue').hide(); + } + $('#txtEditInsurance').val($('#Insval' + userid).val()); + $('#RevenueEditAfterCgst').val($('#RevenueAfterCgst' + userid).val()); + $('#RevenueEditAfterSgst').val($('#RevenueAfterSgst' + userid).val()); + $('#RevenueEditAfterIgst').val($('#RevenueAfterIgst' + userid).val()); + $('#RevenueEditCgst').val($('#RevenueCgst' + userid).val()); + $('#RevenueEditSgst').val($('#RevenueSgst' + userid).val()); + $('#RevenueEditIgst').val($('#RevenueIgst' + userid).val()); + $('#txtEditRevenueTotalOrderValue').val($('#TotalOrderValue' + userid).val()); + tinyMCE.get('Edit_Service_Description').setContent($('#service_description' + userid).val()); - $("#EditRevenueMaterialCode").empty(); + $("#EditRevenueMaterialCode").empty(); - $("#EditRevenueMaterialCode").append($('').val($('#materialCode' + userid).val()).html($('#materialCode' + userid).val() + "-" + $('#materialName' + userid).val())); - if (typeof materialData !== 'undefined' && materialData !== null && materialData !== '') { + $("#EditRevenueMaterialCode").append($('').val($('#materialCode' + userid).val()).html($('#materialCode' + userid).val() + "-" + $('#materialName' + userid).val())); + if (typeof materialData !== 'undefined' && materialData !== null && materialData !== '') { var parsedMaterialData = JSON.parse(materialData); - $.each(parsedMaterialData, function(index, value) { + $.each(parsedMaterialData, function(index, value) { if ($('#materialCode' + userid).val() != value.MaterialCode) { $("#EditRevenueMaterialCode").append($('').val(value.MaterialCode).html(value.MaterialCode + "-" + value.MaterialName)); } @@ -7259,10 +7263,10 @@ if (!empty($INRSYMBOL)) { console.log("materialData is not defined or empty."); } - - $("#EditDiscountType").val($('#DisType' + userid).val()); - $("#drpEditFreight").val($('#FreightType' + userid).val()); - $("#EditPackagingType").val($('#PackType' + userid).val()) + + $("#EditDiscountType").val($('#DisType' + userid).val()); + $("#drpEditFreight").val($('#FreightType' + userid).val()); + $("#EditPackagingType").val($('#PackType' + userid).val()) }); }); diff --git a/app/Views/companyview.php b/app/Views/companyview.php index feee9973..2692f508 100644 --- a/app/Views/companyview.php +++ b/app/Views/companyview.php @@ -403,16 +403,32 @@ function ValidateUA() { var mindt = year-70; var maxdt = year-15; - $("#financialstart").datepicker({ - maxDate :'now', - //maxDate : new Date(maxdt,1,1), - dateFormat: 'dd-mm-yy',changeMonth: true, changeYear: true,yearRange: '-1:+1' +// $("#financialstart").datepicker({ +// maxDate :'now', +// //maxDate : new Date(maxdt,1,1), +// dateFormat: 'dd-mm-yy',changeMonth: true, changeYear: true,yearRange: '-1:+1' -}); +// }); - $("#financialend").datepicker({dateFormat: 'dd-mm-yy',minDate :'now',changeMonth: true, changeYear: true,yearRange: '-1:+1' -}); +// $("#financialend").datepicker({dateFormat: 'dd-mm-yy',minDate :'now',changeMonth: true, changeYear: true,yearRange: '-1:+1' +// }); + +// $("#financialstart").datepicker({ +// dateFormat: 'dd-mm-yy', +// onSelect: function(selectedDate) { +// var minDate = $(this).datepicker("getDate"); +// $("#toDate").datepicker("option", "minDate", minDate); +// } +// }); + +// $("#financialend").datepicker({ +// dateFormat: 'dd-mm-yy', +// onSelect: function(selectedDate) { +// var maxDate = $(this).datepicker("getDate"); +// $("#fromDate").datepicker("option", "maxDate", maxDate); +// } +// }); }); @@ -523,14 +539,19 @@ function ValidateUA() {
+ +
- -
+ +
- +
@@ -753,7 +774,8 @@ function ValidateUA() {
- + +
diff --git a/app/Views/editRevenueAmendPO.php b/app/Views/editRevenueAmendPO.php index 0a32d1ac..3f595542 100644 --- a/app/Views/editRevenueAmendPO.php +++ b/app/Views/editRevenueAmendPO.php @@ -1000,7 +1000,7 @@ if (!empty($INRSYMBOL)) {
'date','name' => 'Deliverydt', 'value' => set_value('Deliverydt', $Deliverydt), 'id' => 'Deliverydt', 'class' => 'form-control num', 'required' => 'true', 'onkeypress' => 'return false;','min' => date('d-m-Y'),); + $data = array('name' => 'Deliverydt', 'value' => set_value('Deliverydt', $Deliverydt), 'id' => 'Deliverydt', 'class' => 'form-control num', 'required' => 'true', 'onkeypress' => 'return false;','min' => date('d-m-Y'),); echo form_input($data); ?>
diff --git a/app/Views/editServiceAmendPO.php b/app/Views/editServiceAmendPO.php index b5e60f89..2d2d79ff 100644 --- a/app/Views/editServiceAmendPO.php +++ b/app/Views/editServiceAmendPO.php @@ -792,7 +792,7 @@ foreach ($PaymentTerms as $TER) {
'date','name' => 'Deliverydt', 'value' => set_value('Deliverydt', $Deliverydt), 'id' => 'Deliverydt', 'class' => 'form-control num', 'required' => 'true', 'onkeypress' => 'return false;'); + $data = array('name' => 'Deliverydt', 'value' => set_value('Deliverydt', $Deliverydt), 'id' => 'Deliverydt', 'class' => 'form-control num', 'required' => 'true', 'onkeypress' => 'return false;'); echo form_input($data); ?>
diff --git a/app/Views/employeeListing.php b/app/Views/employeeListing.php index 1668acb2..5eb84cec 100644 --- a/app/Views/employeeListing.php +++ b/app/Views/employeeListing.php @@ -101,24 +101,12 @@
-
- - - - - - - - - -
- +
EarningsAmount DeductionsAmount
 Basic Plus DA  Basic Basic; ?>   Provident Fund PF; ?> 
 House Rent Allowance HRA; ?>   Employee State Insurance  
 Food Allowance   Loan Recovery  
 Other Allowance   Other Deduction  
 Incentive   ESI; ?> 
 OT Salary   OTSalary ?>  Loan Recovery Advance ?> 
 Festival Bonus Festival_Bonus ?>  TDS Deduction OtherDeductions ?> 
 Total Earning (Rounded) (TE)   Total Deduction (Rounded)(TD)  
 Total Earning (Rounded) + Basic + $PayDetails[0]->HRA + $PayDetails[0]->OTSalary + $PayDetails[0]->Festival_Bonus; + echo number_format(round($totEarning),2) + ?> +  Total Deduction (Rounded) + PF + $PayDetails[0]->ESI + $PayDetails[0]->Advance + $PayDetails[0]->OtherDeductions; + echo number_format(round($totDeduction),2) + ?> + 
Net Pay (TE - TD)(Rounded)   
Company Contribution(Rounded)   
Net Pay(Rounded)  TotalSalary),2,'.','') ?> 
Total Amount In Words  
- @@ -138,7 +126,6 @@ } else { $cdate = date('d-m-Y', strtotime($record->Created_date)); } ?> - diff --git a/app/Views/inwardgateregister.php b/app/Views/inwardgateregister.php index 9c9e435e..2bda916f 100755 --- a/app/Views/inwardgateregister.php +++ b/app/Views/inwardgateregister.php @@ -139,7 +139,7 @@
- + - $(function () { - $("td").dblclick(function () { - var OriginalContent = $(this).text(); - $(this).addClass("cellEditing"); - $(this).html(""); - $(this).children().first().focus(); - $(this).children().first().keypress(function (e) { - if (e.which == 13) { - var newContent = $(this).val(); - $(this).parent().text(newContent); - $(this).parent().removeClass("cellEditing"); - } }); - $(this).children().first().blur(function(){ - $(this).parent().text(OriginalContent); - $(this).parent().removeClass("cellEditing"); - }); - }); - }); + + $(function + () + { + $("td").dblclick(function + () + { + var + OriginalContent + = + $(this).text(); + $(this).addClass("cellEditing"); + $(this).html(" +"); +$(this).children().first().focus(); +$(this).children().first().keypress(function (e) { +if (e.which == 13) { +var newContent = $(this).val(); +$(this).parent().text(newContent); +$(this).parent().removeClass("cellEditing"); +} }); +$(this).children().first().blur(function(){ +$(this).parent().text(OriginalContent); +$(this).parent().removeClass("cellEditing"); +}); +}); +}); + .table-bordered>thead>tr>th, + .table-bordered>tbody>tr>th, + .table-bordered>tfoot>tr>th, + .table-bordered>thead>tr>td, + .table-bordered>tbody>tr>td, + .table-bordered>tfoot>tr>td { + border: 1px solid #333; + } +
- 'form-label-left RequisitionList ','name' => 'RequisitionList','id' => 'RequisitionList','method' => 'post','role' => 'form' ); - - echo form_open(base_url().'purchaseorderform/purchaseorder',$attributes); ?> - -
- -
-

Requisition List

-
-
-
-
- -
- 'Select Department Name'); - //print_r( $options); - - if(!empty($POType)) - { - foreach ($SupplierName as $SID): - - - $options[$SID->SupplierID] = $SID->SupplierID.' '.' - '.' '.$SID->SupplierName; + 'form-label-left RequisitionList ', 'name' => 'RequisitionList', 'id' => 'RequisitionList', 'method' => 'post', 'role' => 'form'); - endforeach; - } - - echo form_dropdown('SupplierID', $options,set_value('SupplierID'),'id="SupplierID"' ,'class = "form-control required"','required="true"'); + echo form_open(base_url() . 'purchaseorderform/purchaseorder', $attributes); ?> - ?> - +
+ +
+
+

Requisition List

+
+
+
+
+
+ +
+ 'Select Department Name'); + //print_r( $options); + + if (!empty($POType)) { + foreach ($SupplierName as $SID): + + + $options[$SID->SupplierID] = $SID->SupplierID . ' ' . ' - ' . ' ' . $SID->SupplierName; + + endforeach; + } + + echo form_dropdown('SupplierID', $options, set_value('SupplierID'), 'id="SupplierID"', 'class = "form-control required"', 'required="true"'); + + ?> + +
+
+
+ +
+ 'Select Status'); + //print_r( $options); + + if (!empty($POType)) { + foreach ($SupplierName as $SID): + + + $options[$SID->SupplierID] = $SID->SupplierID . ' ' . ' - ' . ' ' . $SID->SupplierName; + + endforeach; + } + + echo form_dropdown('SupplierID', $options, set_value('SupplierID'), 'id="SupplierID"', 'class = "form-control required"', 'required="true"'); + + ?> + +
+
+ +
+ +
+ + +
+
+ +
+ +
+ +
+
+ +
+
+
+ +
+
+ + + +

+ + +
Created Date Emp ID Employee Name Contact Number EmpID ?> FirstName; ?> ContactNumber ?>
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
S NoItem CodeItem DescriptionUOMQuantity
1 R001Wasted SandTon100
2 R002ResinLiter200
+ +
+ +
+ + + + + + + + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SelectRequisition NumberRequisition DateStatusCommants
 REQ0000012/3/2017 + + Need to get quick
 REQ0000015/4/2017 + + Need to get quick
 REQ0000019/4/2017 + + Need to get quick
+ + +
+ + + + +
+
-
- -
- 'Select Status'); - //print_r( $options); - - if(!empty($POType)) - { - foreach ($SupplierName as $SID): - - - $options[$SID->SupplierID] = $SID->SupplierID.' '.' - '.' '.$SID->SupplierName; - endforeach; - } - - echo form_dropdown('SupplierID', $options,set_value('SupplierID'),'id="SupplierID"' ,'class = "form-control required"','required="true"'); - - ?> - -
-
- -
- -
- - -
-
- -
- -
- -
-
- - - - - -
-
- - - -

- - - - - - -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SelectRequisition NumberRequisition DateStatusCommants
 REQ0000012/3/2017 - - Need to get quick
 REQ0000015/4/2017 - - Need to get quick
 REQ0000019/4/2017 - - Need to get quick
- - -
- - - - -
-
-
- - - + - \ No newline at end of file + + e.preventDefault(); + + var id = ''; + var chk1 = $('#chk1').val(); + var chk2 = $('#chk2').val(); + var chk3 = $('#chk3').val(); + if ($('#chk1').is(":checked")) { + id = ''; + } else if ($('#chk2').is(":checked")) { + id = ''; + } else if ($('#chk3').is(":checked")) { + id = ''; + } + // alert(chk1); + // alert(chk2); + // alert(chk3); + + window.location = baseurl + 'purchaseorderform/purchaseorder'; + + + }); + //Date range picker + $('#reservation').daterangepicker(); + \ No newline at end of file diff --git a/app/Views/viewinwardgateregister.php b/app/Views/viewinwardgateregister.php index 45363d8b..ad8fea0c 100644 --- a/app/Views/viewinwardgateregister.php +++ b/app/Views/viewinwardgateregister.php @@ -1626,5 +1626,59 @@ function appendExistingFilesFileds(data){ } } }); + // Date range filter function + $.fn.dataTable.ext.search.push( + function(settings, data, dataIndex) { + var fromDate = $('#fromDate').val(); + var toDate = $('#toDate').val(); + + if (!fromDate || !toDate) { + return true; // If no dates selected, don't filter + } + + var dateStr = data[0]; // Assuming the date is in the first column + var dateParts = dateStr.split("-"); + var date = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]); // Convert dd-mm-yyyy to Date object + + var startDate = new Date(fromDate); + var endDate = new Date(toDate); + + // Adjust startDate to include the day before the selected fromDate + startDate.setDate(startDate.getDate() - 1); + + // Ensure endDate includes the entire end date by setting time to the end of the day + endDate.setHours(23, 59, 59, 999); + + // Return true if the date is within the range + return date >= startDate && date <= endDate; + } + ); + + // Handle form submission for the date range filter + $("#DateRangeFilter").submit(function(e) { + e.preventDefault(); + table.draw(); // Redraw the table to apply the filter + }); + + // Reset button functionality + $("#resetButton").click(function() { + $("#fromDate").val(''); + $("#toDate").val(''); + table.draw(); // Redraw the table to clear the filter + }); + + // Automatically focus and open the To Date picker when From Date is selected + document.getElementById('fromDate').addEventListener('change', function() { + var fromDate = this.value; + var toDateInput = document.getElementById('toDate'); + + // Set the min attribute of the To Date input to the selected From Date + toDateInput.min = fromDate; + + // Optionally reset the To Date input if the current value is before the new min date + if (toDateInput.value < fromDate) { + toDateInput.value = fromDate; + } + }); }); \ No newline at end of file From 660536d51550457f214e714dbab02b5ad2874b1e Mon Sep 17 00:00:00 2001 From: aadhavan valli Date: Thu, 5 Sep 2024 09:04:36 +0530 Subject: [PATCH 9/9] CHANGE_ISSUE_CLEAR --- app/Config/Routes.php | 2 + app/Controllers/Employeedetails.php | 37 +- app/Controllers/Login.php | 14 +- app/Controllers/Sales.php | 6 +- app/Controllers/User.php | 808 ++++++++++----------- app/Helpers/cias_helper.php | 4 +- app/Models/User_model.php | 1 - app/Views/addEmployeenew.php | 39 +- app/Views/addasset.php | 3 +- app/Views/changePassword.php | 184 ++--- app/Views/companyview.php | 4 +- app/Views/dashboard.php | 6 +- app/Views/editEmployeenew.php | 68 +- app/Views/employeeListing.php | 2 +- app/Views/expense_list.php | 518 ++++++------- app/Views/includes/new_footer.php | 30 + app/Views/includes/new_header.php | 31 +- app/Views/purchaseorder.php | 4 +- app/Views/requisitionlisting.php | 2 +- app/Views/sales_invoice.php | 594 ++++++++++----- public/new_assets/images/Print Preview.pdf | Bin 0 -> 403675 bytes public/new_assets/images/zoho_sync.png | Bin 0 -> 58288 bytes 22 files changed, 1326 insertions(+), 1031 deletions(-) create mode 100644 public/new_assets/images/Print Preview.pdf create mode 100644 public/new_assets/images/zoho_sync.png diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 33bc631f..30f04bf9 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -74,6 +74,7 @@ $routes->get('exportcost', 'CostCenter::exportcost'); $routes->get('assetListing', 'Assetdetails::assetListing'); $routes->get('addasset', 'Assetdetails::addasset'); $routes->get('assetdetails/editOldasset', 'Assetdetails::editOldasset'); +$routes->post('assetdetails/getpodetails', 'Assetdetails::getpodetails'); // $routes->post('addNewasset', 'Assetdetails::addNewasset'); $routes->match(['GET', 'POST', 'PUT', 'DELETE'],'editOldasset', 'Assetdetails::editasset'); $routes->match(['GET', 'POST', 'PUT', 'DELETE'],'editOldasset/(:num)', 'Assetdetails::editasset/$1'); @@ -376,6 +377,7 @@ $routes->get('inprocess', 'Inprocess::index'); // Sales Controller $routes->get('sales_dashboard', 'Sales::sales_dashboard'); $routes->get('invoicedetails/ViewInvoice', 'Sales::ViewInvoice'); +$routes->get('getInvoiceAttachment', 'Sales::getInvoiceAttachments'); $routes->get('getInvoiceAttachments', 'Sales::getInvoiceAttachments'); $routes->get('deleteAttachment', 'Sales::deleteAttachment'); $routes->post('saveAttachment', 'Sales::saveAttachment'); diff --git a/app/Controllers/Employeedetails.php b/app/Controllers/Employeedetails.php index 0ab265e6..5769a066 100644 --- a/app/Controllers/Employeedetails.php +++ b/app/Controllers/Employeedetails.php @@ -201,11 +201,9 @@ class Employeedetails extends BaseController function AddNewEmployee() { - // print_r($this->request->getPost());die; - $photo = $this->request->getFile('photo'); $Picture = ""; - if(isset($photoan)){ + if (isset($photo)) { if ($photo->isValid() && !$photo->hasMoved()) { $uploadDir = ROOTPATH . 'public/uploads/images/'; $allowedTypes = ['jpg', 'jpeg', 'png', 'gif']; @@ -603,8 +601,7 @@ class Employeedetails extends BaseController /* To Update the employee details*/ function UpdateEmployee() { - // echo "
";
-    // print_r($this->request->getPost());die;
+
     $EmpId =  $this->request->getPost('employeeid');
 
     //$mail = $this->this->.post('emailid');
@@ -637,33 +634,43 @@ class Employeedetails extends BaseController
     $ModifyPictureName = $this->request->getPost('ModifyImage');
     $Picture = "";
     if ($PictureName != '') {
+     
       //echo  'Exists';
       //$Picture = $PictureName; 
       if (strlen((string)$ModifyPictureName) == 0) {
         //echo  'Exists But Not replace';
         $Picture = $PictureName;
       } else {
+        // echo "
";
+        // // print_r($this->request->getPost());
+        // print_r($this->request->getFile('photo'));
+        // die;
         //echo  'Exists But Replace';
         //$Picture = $ModifyPictureName;
         //$Picture = $this->editimage($ModifyPictureName);  
         $photo = $this->request->getFile('ModifyImage');
-        if ($photo->isValid() && !$photo->hasMoved()) {
-          $uploadDir = ROOTPATH . 'public/uploads/images/';
-          $allowedTypes = ['jpg', 'jpeg', 'png', 'gif'];
-          if (in_array($photo->getExtension(), $allowedTypes)) {
-            $newName = $photo->getRandomName();
-            if (!is_dir($uploadDir)) {
-              mkdir($uploadDir, 0777, true);
+        if (!$photo || !$photo->isValid()) {
+            $photo = $this->request->getFile('photo');
+        }
+        if (isset($photo)) {
+          if ($photo->isValid() && !$photo->hasMoved()) {
+            $uploadDir = ROOTPATH . 'public/uploads/images/';
+            $allowedTypes = ['jpg', 'jpeg', 'png', 'gif'];
+            if (in_array($photo->getExtension(), $allowedTypes)) {
+              $newName = $photo->getRandomName();
+              if (!is_dir($uploadDir)) {
+                mkdir($uploadDir, 0777, true);
+              }
+              $photo->move($uploadDir, $newName);
+              $Picture = $newName;
             }
-            $photo->move($uploadDir, $newName);
-            $Picture = $newName;
           }
         }
       }
     } else {
       //echo  'Not Exists';
       $photo = $this->request->getFile('photo');
-      if(isset($photo)){
+      if (isset($photo)) {
         if ($photo->isValid() && !$photo->hasMoved()) {
           $uploadDir = ROOTPATH . 'public/uploads/images/';
           $allowedTypes = ['jpg', 'jpeg', 'png', 'gif'];
diff --git a/app/Controllers/Login.php b/app/Controllers/Login.php
index 410c9767..683ac74c 100644
--- a/app/Controllers/Login.php
+++ b/app/Controllers/Login.php
@@ -37,7 +37,9 @@ class Login extends BaseController
             return view('login');
         } else {
             // redirect('/dashboard');
-            return redirect()->to('/dashboard');
+            // return redirect()->to('/dashboard');
+            return redirect()->to('/sales_dashboard');
+            
         }
         
     }
@@ -53,7 +55,9 @@ class Login extends BaseController
             return view('login');
         } else {
             // return view('login');
-            return redirect()->to('/dashboard');
+            // return redirect()->to('/dashboard');
+            return redirect()->to('/sales_dashboard');
+
         }
     }
 
@@ -107,9 +111,11 @@ class Login extends BaseController
                 $DEPCode = $res->DEPCode;
 
                 if ($DEPCode == SECURITY) {
-                    return redirect()->to(site_url('/dashboard'));
+                    // return redirect()->to(site_url('/dashboard'));
+                    return redirect()->to(site_url('/sales_dashboard'));
                 } else {
-                    return redirect()->to(site_url('/dashboard'));
+                    return redirect()->to(site_url('/sales_dashboard'));
+                    // return redirect()->to(site_url('/dashboard'));
                 }
             }
         } else {
diff --git a/app/Controllers/Sales.php b/app/Controllers/Sales.php
index 01c0cf1a..a7f60b98 100644
--- a/app/Controllers/Sales.php
+++ b/app/Controllers/Sales.php
@@ -5,18 +5,21 @@ namespace App\Controllers;
 use App\Controllers\BaseController;
 
 use App\Models\Ipinvoice_model;
+use App\Models\Ipattachment_model;
 require_once 'vendor/autoload.php';
 
 
 class Sales extends BaseController
 {
     protected  $ipinvoice_model;
+    protected  $ipattachment_model;
     protected $session;
 
     public function __construct()
     {
         parent::__construct();
         $this->ipinvoice_model = new Ipinvoice_model();
+        $this->ipattachment_model = new Ipattachment_model();
         $this->session = session();
         $this->isLoggedIn();
     }
@@ -91,8 +94,7 @@ class Sales extends BaseController
     
     // Invoice Attachments 
     function getInvoiceAttachments(){
-            $data['invoiceAttachment'] = $this->ipinvoice_model->getinvoiceAttachment($this->request->getGet('invoice_id'));
-
+            $data['invoiceAttachment'] = $this->ipinvoice_model->getinvoiceAttachment($this->request->getGet('invoice_number'));
             return json_encode($data);
     }
     
diff --git a/app/Controllers/User.php b/app/Controllers/User.php
index 34702d83..b0640664 100644
--- a/app/Controllers/User.php
+++ b/app/Controllers/User.php
@@ -14,6 +14,7 @@ use App\Models\User_model;
 use App\Models\Ipinvoice_model;
 use App\Models\Ipattachment_model;
 use App\Models\Zohobooks_api_model;
+
 require_once 'vendor/autoload.php';
 
 /**
@@ -41,7 +42,7 @@ class User extends BaseController
     public function __construct()
     {
         parent::__construct();
-        
+
         $this->dahsboard_Model = new Dashboard_model();
         $this->costcenter_model = new Costcenter_model();
         $this->department_model = new Department_model();
@@ -62,7 +63,7 @@ class User extends BaseController
         $this->global['pageTitle'] = 'Dashboard';
 
         log_message('error', '#####Dashboard session name : ' . $this->session->get('name'));
-        
+
         $data['EmpCount'] = $this->employeedetails_model->getEmployeeCount();
 
         $data['UserCount'] = $this->dahsboard_Model->getUserCount();
@@ -107,20 +108,20 @@ class User extends BaseController
 
         $data['capitalbud'] = $this->dahsboard_Model->capitalbud();
 
-        $data['typebal'] = [];// $this->dahsboard_Model->typebal();
+        $data['typebal'] = []; // $this->dahsboard_Model->typebal();
 
 
         /* HR DASHBOARD Controller Start*/
         $data['totemp'] = $this->dahsboard_Model->totemp();
-        
+
         $data['totloan'] = $this->dahsboard_Model->totloan();
-        
+
         $data['totpay'] = $this->dahsboard_Model->totpay();
-        
+
         $data['totrec'] = $this->dahsboard_Model->totrec();
-        
+
         $data['emplist'] = $this->dahsboard_Model->emplist();
-        
+
 
         $date = $this->request->getPost("id");
         $dates = date('Y-m');
@@ -253,13 +254,12 @@ class User extends BaseController
         $working = array();
         $overtime = array();
         //$holid = array();
-        for ($i = 1; $i <= $dat; $i++) 
-        {
+        for ($i = 1; $i <= $dat; $i++) {
             $Working[] = 'WH' . $i;
             $overtime[] = 'OT' . $i;
 
             $CUR_month = date('t');
-            
+
             // foreach ($holiday as $value)
             //     {
             //        //$holid []= 'WH'.$value;
@@ -269,7 +269,7 @@ class User extends BaseController
             //     }
 
         }
-        
+
         $WH = implode(",", $Working);
 
         $OT = implode(",", $overtime);
@@ -315,19 +315,19 @@ class User extends BaseController
                         /**one hour salay ot calculation**/
                         $totSalayOT = ($totalothour != 0) ? $totalothour * $onehoursSalary : 0;
                         /** if ot not equal zero **/
-                        
+
                         $currentDaySalary = $daySalary * $values;
                         /** current day salary working days calculation**/
 
                         $currentDayHra = $dayHra * $values;
                         /** total working days hra calculations**/
-                        
+
                         $currentDatePF = $currentDaySalary + $currentDayHra + $totSalayOT;
                         /** current date pf calculation**/
-                        
+
                         $esiAmount = ($totalsalary <= 20000) ? $currentDatePF * 1.75 / 100 : 0;
                         /** esiamount not elgiable for 20000 **/
-                        
+
                         $pfAmount = $currentDaySalary * 12 / 100;
                         /** pf amount per day**/
 
@@ -338,7 +338,7 @@ class User extends BaseController
 
                         $totalSalary = round($totalSalarys);
                         // $salarycurrentdate[] = $salaryInCurrentday;;
-                        
+
                     }
                 }
             }
@@ -363,7 +363,7 @@ class User extends BaseController
         $WH = 'WH' . date('j', strtotime("-1 days"));
 
         $yesterday = $this->dahsboard_Model->attyesterday($WH, $date);
-        
+
         $values = 0;
         foreach ($yesterday as $weekda => $value) {
 
@@ -372,28 +372,28 @@ class User extends BaseController
                 $values++;
             }
         }
-        
+
         $data['values'] = $values;
 
 
 
 
         $date = $this->request->getPost("id");
-        
-        $daydate = format_date($date,0,'Y-m');
-        
+
+        $daydate = format_date($date, 0, 'Y-m');
+
         $daydate = $daydate . '-01';
-        
-        $WH = 'WH' . format_date($date,0,'j');
-        
+
+        $WH = 'WH' . format_date($date, 0, 'j');
+
         $yesterday = $this->dahsboard_Model->attyesterday($WH, $daydate);
 
         //$absEmp =array($absEmp);
         $values = 0;
         $absEmp = array();
-        
+
         foreach ($yesterday as $weekda => $value) {
-        
+
             if ($value[$WH] == 0) {
 
                 $values++;
@@ -403,14 +403,14 @@ class User extends BaseController
             }
         }
 
-        
+
         $data['today'] = $values;
         $data['absname'] = $absEmp;
 
-        $OT = 'OT' .format_date($date,0,'j');
+        $OT = 'OT' . format_date($date, 0, 'j');
 
         $CUR_month = date('t');
-        
+
         $toDayEmployee = $this->dahsboard_Model->dayAllPersentEmpSalary($WH, $OT, $daydate);
         //$EmpID = $toDayEmployee[0]->EmpID;
 
@@ -466,14 +466,14 @@ class User extends BaseController
 
                     $currentDatePF = $currentDaySalary + $currentDayHra + $totSalayOT;
                     /** current date pf calculation**/
-                    
+
                     $esiAmount = ($totalsalary <= 20000) ? $currentDatePF * 1.75 / 100 : 0;
                     /** esiamount not elgiable for 20000 **/
-                    
+
                     $pfAmount = $currentDaySalary * 12 / 100;
                     /** pf amount per day**/
 
-                    
+
                     $salaryInCurrentdays = $currentDaySalary + $totSalayOT + $currentDayHra + $Food_Allowances;
                     $salaryInCurrentday =  $salaryInCurrentdays - ($esiAmount + $pfAmount);
                     $employeeSalary += round($salaryInCurrentday);
@@ -488,7 +488,7 @@ class User extends BaseController
         $working = array();
         $overtime = array();
         //$holid = array();
-        $len = format_date($date,0,'d');
+        $len = format_date($date, 0, 'd');
         for ($i = 1; $i <= $len; $i++) //echo $dat; die;
         {
 
@@ -525,7 +525,7 @@ class User extends BaseController
 
                 if ($value[$work] != 0 || $value['OT' . substr($work, 2)] != 0) {
                     $totalothour = $value['OT' . substr($work, 2)];
-                  
+
                     $values = 1;
 
                     $Empid = $value['EmpID'];
@@ -551,10 +551,10 @@ class User extends BaseController
 
                         $onehoursSalary = ($daySalary + $dayHra) / 8;
                         /**one hour salay ot calculation**/
-                        
+
                         $totSalayOT =  ($totalothour != 0) ? $totalothour * $onehoursSalary : 0;
                         /** if ot not equal zero **/
-                        
+
                         $currentDaySalary = $daySalary * $values;
                         /** current day salary working days calculation**/
 
@@ -563,10 +563,10 @@ class User extends BaseController
 
                         $currentDatePF = $currentDaySalary + $currentDayHra + $totSalayOT;
                         /** current date pf calculation**/
-                        
+
                         $esiAmount = ($totalsalary <= 20000) ? $currentDatePF * 1.75 / 100 : 0;
                         /** esiamount not elgiable for 20000 **/
-                        
+
                         $pfAmount = $currentDaySalary * 12 / 100;
                         /** pf amount per day**/
 
@@ -633,7 +633,7 @@ class User extends BaseController
     {
 
         $date = date('Y-m');
-        
+
         $dates = $date . '-01';
         $EmpID = '';
         if (empty($empID)) {
@@ -641,7 +641,7 @@ class User extends BaseController
         } else {
             $EmpID = $empID;
         }
-        
+
         $monthabs = $this->dahsboard_Model->attendance($EmpID, $dates);
         $persent_month = date('t'); //current month of days 31
         $values = array();
@@ -700,11 +700,10 @@ class User extends BaseController
         $totalwhhours  = array_sum($values);
 
         $totalwhhour = $totalwhhours / 8;
-        
+
         if ($CURMONTH == $doj_month && $CURYEAR == $doj_year) {
-        
+
             $data['CUR_month'] = $CURDATE - $doj_day + 1;
-        
         } else {
             $data['CUR_month'] = $date;
         }
@@ -871,7 +870,7 @@ class User extends BaseController
             $TotalNoofDays = $TotalNoofDays + $CURDATE;
             $DaysWorked = $DaysWorked + $values;
             $final_res = round(($DaysWorked / $TotalNoofDays) * 100);
-            
+
             $data['workeds'] = $DaysWorked;
             $data['yeardata'] = $final_res;
             $data['totaldays'] = $TotalNoofDays;
@@ -926,7 +925,7 @@ class User extends BaseController
         // echo "
";
         // print_r($data['Department']);
         // die;
-        
+
         // echo "
";
         // print_r($data['Department']);die;
         $this->global['pageTitle'] = 'Add New User';
@@ -1009,7 +1008,7 @@ class User extends BaseController
         $email = $this->request->getPost('MailID');
         $SelectedDepartment = (string)$this->request->getPost('txtSelectedDepartment');
         $comma_separated = explode(':', $SelectedDepartment);
-        if(count($comma_separated)== 1 && in_array('DEP27', $comma_separated)){
+        if (count($comma_separated) == 1 && in_array('DEP27', $comma_separated)) {
             $roleId = '6';
         }
         $userInfo = [
@@ -1125,27 +1124,27 @@ class User extends BaseController
         // if ($this->validator->run() == FALSE) {
         //     $this->editOld($userId);
         // } else {
-            $EmpID = $this->request->getPost('EmpList');
-            $role = $this->request->getPost('role');
-            $password = $this->request->getPost('password');
-           
-            $updatedDate =  get_current_date_time();
+        $EmpID = $this->request->getPost('EmpList');
+        $role = $this->request->getPost('role');
+        $password = $this->request->getPost('password');
 
-            //    echo $EmpID;
+        $updatedDate =  get_current_date_time();
 
-            $userInfo = array();
+        //    echo $EmpID;
 
-            $userInfo = array('password' => getHashedPassword($password), 'roleId' => $role, 'EmpId' => $EmpID, 'updatedDtm' => $updatedDate);
+        $userInfo = array();
 
-            $result = $this->user_model->editUser($userInfo,  $EmpID);
+        $userInfo = array('password' => getHashedPassword($password), 'roleId' => $role, 'EmpId' => $EmpID, 'updatedDtm' => $updatedDate);
 
-            if ($result == true) {
-                $this->session->setFlashdata('success', 'User updated successfully');
-            } else {
-                $this->session->setFlashdata('error', 'User updation failed');
-            }
+        $result = $this->user_model->editUser($userInfo,  $EmpID);
 
-            return redirect()->route('userListing');
+        if ($result == true) {
+            $this->session->setFlashdata('success', 'User updated successfully');
+        } else {
+            $this->session->setFlashdata('error', 'User updation failed');
+        }
+
+        return redirect()->route('userListing');
         // }
         //}
     }
@@ -1159,7 +1158,7 @@ class User extends BaseController
     {
         echo 'Delete';
         $Uid = $this->request->getPost('id');
-        
+
         $updatedDate =  get_current_date_time();
 
         $userInfo = array('isDeleted' => 1, 'updatedBy' => $this->vendorId, 'updatedDtm' => $updatedDate);
@@ -1176,7 +1175,7 @@ class User extends BaseController
     {
         $this->global['pageTitle'] = 'Change Password';
 
-        $this->loadViews("changePassword", $this->global, NULL, NULL);
+        $this->loadViews("changePassword", $this->global, [], NULL);
     }
 
 
@@ -1187,29 +1186,27 @@ class User extends BaseController
     {
         helper('form'); //$this->load->library('form_validation');
 
-        $this->validator->setRules(['oldPassword', 'Old password'=> 'required|max_length[20]']);
-        $this->validator->setRules(['newPassword', 'New password'=> 'required|max_length[20]']);
-        $this->validator->setRules(['cNewPassword', 'Confirm new password'=> 'required|matches[newPassword]|max_length[20]']);
+        // $this->validator->setRules(['oldPassword', 'Old password'=> 'required|max_length[20]']);
+        // $this->validator->setRules(['newPassword', 'New password'=> 'required|max_length[20]']);
+        // $this->validator->setRules(['cNewPassword', 'Confirm new password'=> 'required|matches[newPassword]|max_length[20]']);
 
-        if ($this->validator->run() == FALSE) {
-            $this->loadChangePass();
-        } else {
+        // if ($this->validator->run() == FALSE) {
             $oldPassword = $this->request->getPost('oldPassword');
             $newPassword = $this->request->getPost('newPassword');
-
+            $cNewPassword = $this->request->getPost('newPassword');
+        if($newPassword === $cNewPassword && $oldPassword != $newPassword) {
             $resultPas = $this->user_model->matchOldPassword($this->vendorId, $oldPassword);
-
             if (empty($resultPas)) {
                 $this->session->setFlashdata('nomatch', 'Your old password not correct');
                 return redirect()->route('loadChangePass');
             } else {
                 $usersData = array(
-                    'password' => getHashedPassword($newPassword), 'updatedBy' => $this->vendorId,
+                    'password' => getHashedPassword($newPassword),
+                    'updatedBy' => $this->vendorId,
                     'updatedDtm' => date('Y-m-d H:i:sa')
                 );
-
+                $this->session->setFlashdata('error', 'Password updation failed');
                 $result = $this->user_model->changePassword($this->vendorId, $usersData);
-
                 if ($result > 0) {
                     $this->session->setFlashdata('success', 'Password updation successful');
                 } else {
@@ -1236,7 +1233,6 @@ class User extends BaseController
 
             $data['fy'] = $this->user_model->fincalYear();
             $data['per'] = $this->user_model->deliver_perform($fa, $aa, $m);
-
         }
 
         $data['fy'] = $this->user_model->fincalYear();
@@ -1265,7 +1261,7 @@ class User extends BaseController
         $status = $this->request->getPost('status');
         $CreateBy = $this->session->get('userId');
 
-        
+
         $createddt =  get_current_date_time();
         $menu = $this->request->getPost('menu');
         // $RowCount =  $this->request->getPost('txtRowCount'); 
@@ -1273,7 +1269,7 @@ class User extends BaseController
         // $comma_separated = explode(':', $DeletedRow); 
         $favourite = array('Menu_Name' => $name, 'Menu_URL' => $url, 'Status' => $status, 'Created_BY' => $CreateBy, 'Created_ON' => $createddt, 'Menu_ID' => $menu);
         $getdata = $this->user_model->favouriteadd($favourite);
-        
+
         if ($getdata == 1) {
             echo "success";
         } else {
@@ -1281,380 +1277,358 @@ class User extends BaseController
         }
     }
 
-    function zohobooks_api_fetch_all(){
+    function zohobooks_api_fetch_all()
+    {
         //  print_r($_GET);
         // echo isset($_GET['from']) ? $_GET['from'] : 'n';
         // echo isset($_GET['to']) ? $_GET['to'] : 'n';
         // die();
-        try{
+        try {
             // if (isset($_POST['sync']) || $_GET['from'] != null && $_GET['to'] != null) 
             // {
-                // $ch=curl_init();
-                //$this->load->helper('zohobooks_fetch_api_helper');
-                helper('zohobook');
-                $Zohobook_model = model('Zohobook_api_model');
-                if(isset($_GET['from']) && $_GET['from'] != null && isset($_GET['to']) && $_GET['to'] != null)
-                {
-                    $date_today = $_GET['to'];
-                    $date_yesterday = $_GET['from'];
+            // $ch=curl_init();
+            //$this->load->helper('zohobooks_fetch_api_helper');
+            helper('zohobook');
+            $Zohobook_model = model('Zohobook_api_model');
+            if (isset($_GET['from']) && $_GET['from'] != null && isset($_GET['to']) && $_GET['to'] != null) {
+                $date_today = $_GET['to'];
+                $date_yesterday = $_GET['from'];
+            } else {
+                $date_today = date('Y-m-d');
+                $date_yesterday = date('Y-m-d', strtotime('-3 day', strtotime($date_today)));
+            }
+            // echo $date_today.'--'.$date_yesterday;die;
+            $chk_acc_token_val = $Zohobook_model->get_data('zohobook_accesstoken', 'id', 1);
+            // print_r($chk_acc_token_val);//die();
+            $date = new \DateTime($chk_acc_token_val[0]['created_at']);
+            //print_r($date);
+            $date->add(new \DateInterval('PT1H'));
+            //print_r($date);
+            //echo '****************';
+            //print_r(date('Y-m-d h:i:s'));
+            $token = 0;
+            if ($date->format('Y-m-d H:i:s') > date('Y-m-d H:i:s')) {
+                $token = $chk_acc_token_val[0]['token'];
+            } else {
+                $token = generateNewToken();
+                $tokendata['token'] = $token;
+                $Zohobook_model->customUpdate($tokendata, 1, 'zohobook_accesstoken');
+            }
+            // $token = generateNewToken(); $tokendata['token'] = $token; 
+            //$Zohobook_model->update($tokendata , 1,'zohobook_accesstoken');  
+            $result = getheringInvoiceDetails($date_today, $date_yesterday, $token);
+            $headers_new = $result['headers_new'];
+            $res = json_decode($result['data'], true);
+            $inv_array = $res['invoices'];
+            // print_r($inv_array);
+            // echo "rrrr";
+            // die();
+            foreach ($inv_array as $inv) {
+                $invoice_id = $inv['invoice_id'];
+                //filter only einvoice status pushed invoices only
+                //&& isset($inv['einvoice_details']) && isset($inv['einvoice_details']['status']) && ($inv['einvoice_details']['status'] == 'pushed')
+                if ($invoice_id !== "") {
+                    $organization_id = '776847408';
+                    $result2 = getheringInvoiceSubDetails($invoice_id, $organization_id, $headers_new);
+                    $resall = json_decode($result2, true);
+                    $res2[] = $resall['invoice'];
                 }
-                else
-                {
-                    $date_today = date('Y-m-d');
-                    $date_yesterday = date('Y-m-d',strtotime('-3 day',strtotime($date_today)));
-                }
-                // echo $date_today.'--'.$date_yesterday;die;
-                $chk_acc_token_val = $Zohobook_model->get_data('zohobook_accesstoken','id' , 1);
-                // print_r($chk_acc_token_val);//die();
-                $date = new \DateTime($chk_acc_token_val[0]['created_at']); 
-                //print_r($date);
-                $date->add(new \DateInterval('PT1H'));
-                //print_r($date);
-                //echo '****************';
-                //print_r(date('Y-m-d h:i:s'));
-                $token = 0;
-                if ($date->format('Y-m-d H:i:s') > date('Y-m-d H:i:s')) {  $token = $chk_acc_token_val[0]['token']; } 
-                else { $token = generateNewToken(); $tokendata['token'] = $token; $Zohobook_model->customUpdate($tokendata , 1,'zohobook_accesstoken'); }
-                    // $token = generateNewToken(); $tokendata['token'] = $token; 
-                    //$Zohobook_model->update($tokendata , 1,'zohobook_accesstoken');  
-                    $result = getheringInvoiceDetails($date_today , $date_yesterday , $token);
-                    $headers_new = $result['headers_new'];
-                    $res = json_decode($result['data'],true);
-                    $inv_array = $res['invoices'];
-                    // print_r($inv_array);
-                    // echo "rrrr";
-                    // die();
-                    foreach($inv_array as $inv){
-                        $invoice_id = $inv['invoice_id'];
-                        //filter only einvoice status pushed invoices only
-                        //&& isset($inv['einvoice_details']) && isset($inv['einvoice_details']['status']) && ($inv['einvoice_details']['status'] == 'pushed')
-                        if($invoice_id !== "" ){
-                            $organization_id = '776847408';
-                            $result2=getheringInvoiceSubDetails($invoice_id,$organization_id,$headers_new);
-                            $resall = json_decode($result2,true);
-                            $res2[] = $resall['invoice'];
-                        }
+            }
+            $insert_count = 0;
+            $update_count = 0;
+            foreach ($res2 as $rs) {
+                $gst_no = $rs['gst_no'];
+                $invoice_number = $rs['invoice_number'];
+                $invoice_date = $rs['date'];
+                $status = $rs['status'];
+                $due_date = $rs['due_date'];
+                $invoice_url = $rs['invoice_url'];
+                $einvoice_number = $rs['einvoice_details']['inv_ref_num'];
+
+                $invoice_time = $rs['created_time'];
+                $time_array = explode("T", $invoice_time);
+                $time_array = explode("+", $time_array[1]);
+                $invoice_time = $time_array[0];
+
+                $sql_invoice_chk = $Zohobook_model->ip_invoices($invoice_number, $invoice_date);
+                if ($sql_invoice_chk <= 0) {
+
+                    $gst_sql = $Zohobook_model->ip_clients($gst_no);
+                    if ($gst_sql) {
+                        $client_id = $gst_sql[0]['client_id'];
+                        log_message('error', 'Data fetch success DB : ip_clients , client_id : ' . $client_id);
+                    } else {
+                        log_message('error', 'No data => Data fetch failed DB : ip_clients ' . $gst_no);
+                        $gst_no_data['client_tax_code'] = $gst_no;
+                        $gst_inserted_id = $Zohobook_model->customInsert($gst_no_data, 'ip_clients');
+                        $client_id = $gst_inserted_id;
+                        log_message('error', 'New Data Created : DB : ip_clients , client_id : ' . $client_id);
                     }
-                    $insert_count = 0;
-                    $update_count = 0;
-                    foreach($res2 as $rs)
-                    {
-                        $gst_no = $rs['gst_no'];
-                        $invoice_number = $rs['invoice_number'];
-                        $invoice_date = $rs['date']; 
-                        $status = $rs['status'];
-                        $due_date = $rs['due_date'];
-                        $invoice_url = $rs['invoice_url'];
-                        $einvoice_number = $rs['einvoice_details']['inv_ref_num'];
 
-                            $invoice_time=$rs['created_time'];
-                            $time_array = explode("T", $invoice_time);
-                            $time_array = explode("+",$time_array[1]);
-                            $invoice_time = $time_array[0];
-                        
-                        $sql_invoice_chk = $Zohobook_model->ip_invoices($invoice_number , $invoice_date);
-                        if($sql_invoice_chk <= 0)
-                        {  
 
-                                $gst_sql = $Zohobook_model->ip_clients($gst_no);
-                                if($gst_sql)
-                                {
-                                    $client_id = $gst_sql[0]['client_id'];
-                                    log_message('error', 'Data fetch success DB : ip_clients , client_id : '.$client_id);
+                    $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
+                    $charactersLength = strlen($characters);
+                    $randomString = '';
+                    for ($i = 0; $i < 16; $i++) {
+                        $randomString .= $characters[rand(0, $charactersLength - 1)];
+                    }
+                    $url_key = $randomString;
+
+                    $ip_invoices['user_id'] = 1;
+                    $ip_invoices['client_id'] = $client_id;
+                    $ip_invoices['invoice_group_id'] = 6;
+                    $ip_invoices['invoice_status_id'] = ($status == 'draft' ? 1 : (($status == 'sent' || $status == 'overdue') ? 2 : 5));
+                    $ip_invoices['invoice_date_created'] = $invoice_date;
+                    $ip_invoices['invoice_time_created'] = $invoice_time;
+                    $ip_invoices['invoice_date_due'] = $due_date;
+                    $ip_invoices['invoice_number'] = $invoice_number;
+                    $ip_invoices['invoice_url_key'] = $url_key;
+                    $ip_invoices['receivedstatus'] = 'ST066';
+                    $ip_invoices['credit_status'] = 0;
+                    $ip_invoices['status'] = $status;
+                    $ip_invoices['e_invoice_number'] = $einvoice_number;
+                    $ip_invoices['invoice_url'] = $invoice_url;
+                    $invoice_insert_id = $Zohobook_model->customInsert($ip_invoices, 'ip_invoices');
+                    if ($invoice_insert_id) {
+                        log_message('error', 'Data insert success DB : ip_invoices client id :' . $client_id);
+                        $insert_count = $insert_count + 1;
+                        //start invoice level custom fields
+
+                        //custom fields insert
+
+                        $batch_no = isset($rs['custom_fields'][5]['value']) ? $rs['custom_fields'][5]['value'] : "";
+                        // $batch_no = "";
+                        $vehicle_number = isset($rs['custom_field_hash']['cf_vehicle_number']) ? $rs['custom_field_hash']['cf_vehicle_number'] : '';
+                        $transport_mode = isset($rs['custom_field_hash']['cf_transport_mode']) ? $rs['custom_field_hash']['cf_transport_mode'] : '';
+                        $purchase_order_date = isset($rs['custom_field_hash']['cf_purchase_order_date']) ? $rs['custom_field_hash']['cf_purchase_order_date'] : '';
+                        $driver = isset($rs['custom_field_hash']['cf_driver']) ? $rs['custom_field_hash']['cf_driver'] : '';
+                        $place_of_supply = isset($rs['custom_field_hash']['cf_place_of_supply']) ? $rs['custom_field_hash']['cf_place_of_supply'] : '';
+                        // batch_no
+                        $ip_invoice_custom_b['invoice_id'] = $invoice_insert_id;
+                        $ip_invoice_custom_b['invoice_custom_fieldid'] = 62;
+                        $ip_invoice_custom_b['invoice_custom_fieldvalue'] = $batch_no;
+                        $result_invoice_custom_insert = $Zohobook_model->customInsert($ip_invoice_custom_b, 'ip_invoice_custom');
+                        if ($result_invoice_custom_insert)
+                            log_message('error', 'Data insert success DB : ip_invoice_custom ');
+                        else
+                            log_message('error', 'Data insert failed DB : ip_invoice_custom ');
+                        // vehicle_number
+                        $ip_invoice_custom_v['invoice_id'] = $invoice_insert_id;
+                        $ip_invoice_custom_v['invoice_custom_fieldid'] = 8;
+                        $ip_invoice_custom_v['invoice_custom_fieldvalue'] = $vehicle_number;
+                        $res_vehicle = $Zohobook_model->customInsert($ip_invoice_custom_v, 'ip_invoice_custom');
+                        if ($res_vehicle)
+                            log_message('error', 'Data insert success DB : ip_invoice_custom ');
+                        else
+                            log_message('error', 'Data insert failed DB : ip_invoice_custom ');
+                        // transport_mode
+                        $ip_invoice_custom_t['invoice_id'] = $invoice_insert_id;
+                        $ip_invoice_custom_t['invoice_custom_fieldid'] = 7;
+                        $ip_invoice_custom_t['invoice_custom_fieldvalue'] = $transport_mode;
+                        $res_transport_mode = $Zohobook_model->customInsert($ip_invoice_custom_t, 'ip_invoice_custom');
+                        if ($res_transport_mode)
+                            log_message('error', 'Data insert success DB : ip_invoice_custom ');
+                        else
+                            log_message('error', 'Data insert failed DB : ip_invoice_custom ');
+                        // purchase_order_date
+                        $ip_invoice_custom_p['invoice_id'] = $invoice_insert_id;
+                        $ip_invoice_custom_p['invoice_custom_fieldid'] = 15;
+                        $ip_invoice_custom_p['invoice_custom_fieldvalue'] = $purchase_order_date;
+                        $res_purchase_order_date = $Zohobook_model->customInsert($ip_invoice_custom_p, 'ip_invoice_custom');
+                        if ($res_purchase_order_date)
+                            log_message('error', 'Data insert success DB : ip_invoice_custom ');
+                        else
+                            log_message('error', 'Data insert failed DB : ip_invoice_custom ');
+                        // driver
+                        $ip_invoice_custom_d['invoice_id'] = $invoice_insert_id;
+                        $ip_invoice_custom_d['invoice_custom_fieldid'] = 58;
+                        $ip_invoice_custom_d['invoice_custom_fieldvalue'] = $driver;
+                        $res_driver = $Zohobook_model->customInsert($ip_invoice_custom_d, 'ip_invoice_custom');
+                        if ($res_driver)
+                            log_message('error', 'Data insert success DB : ip_invoice_custom ');
+                        else
+                            log_message('error', 'Data insert failed DB : ip_invoice_custom ');
+                        // place_of_supply
+                        $ip_invoice_custom_d['invoice_id'] = $invoice_insert_id;
+                        $ip_invoice_custom_d['invoice_custom_fieldid'] = 10;
+                        $ip_invoice_custom_d['invoice_custom_fieldvalue'] = $place_of_supply;
+                        $res_place = $Zohobook_model->customInsert($ip_invoice_custom_d, 'ip_invoice_custom');
+                        if ($res_place)
+                            log_message('error', 'Data insert success DB : ip_invoice_custom ');
+                        else
+                            log_message('error', 'Data insert failed DB : ip_invoice_custom ');
+                        //end  invoice level custom fields
+
+                        //if line items available
+                        if (isset($rs['line_items']) && count($rs['line_items']) > 0) {
+                            log_message('error', 'Processing line items' . count($rs['line_items']));
+
+                            for ($i = 0; $i < count($rs['line_items']); $i++) {            //start insert line items
+                                $sku = $rs['line_items'][$i]['sku'];
+
+
+                                $item_price = $rs['line_items'][$i]['rate'];
+                                $item_order =  $rs['line_items'][$i]['item_order'];
+                                $item_product_unit = $rs['line_items'][$i]['unit'];
+                                $item_name = $rs['line_items'][$i]['name'];
+                                $item_description = $rs['line_items'][$i]['description'];
+                                $item_quantity = $rs['line_items'][$i]['quantity'];
+                                $cgst = $rs['line_items'][$i]['line_item_taxes'][1]['tax_name'];
+                                $sgst = $rs['line_items'][$i]['line_item_taxes'][0]['tax_name'];
+                                $cgst = $cgst[4];
+                                $sgst = $sgst[4];
+                                $cgst = $cgst . '.000';
+                                $getcgsttax = $Zohobook_model->ip_tax_rates($cgst);
+                                if ($getcgsttax) {
+                                    $cgsttaxid = $getcgsttax[0]['tax_rate_id'];
+                                    log_message('error', 'Data fetch success DB : ip_tax_rates cgst' . $cgst);
+                                } else {
+                                    log_message('error', 'No data => Data fetch failed DB : ip_tax_rates ' . $cgst);
+                                    $cgst_data['tax_rate_percent'] = $cgst;
+                                    $getcgsttax = $Zohobook_model->customInsert($cgst_data, 'ip_tax_rates');
+                                    $cgsttaxid = $getcgsttax;
+                                    log_message('error', 'New Data Created : DB : ip_tax_rates , tax_rate_id : ' . $cgsttaxid);
                                 }
+
+                                $sgst = $sgst . '.000';
+                                $getsgsttax = $Zohobook_model->ip_tax_rates($sgst);
+                                if ($getsgsttax) {
+                                    $sgsttaxid = $getsgsttax[0]['tax_rate_id'];
+                                    log_message('error', 'Data fetch success DB : ip_tax_rates sgst' . $sgst);
+                                } else {
+                                    log_message('error', 'No data => Data fetch failed DB : ip_tax_rates ' . $sgst);
+                                    $sgst_data['tax_rate_percent'] = $sgst;
+                                    $getsgsttax = $Zohobook_model->customInsert($sgst_data, 'ip_tax_rates');
+                                    $sgsttaxid = $getsgsttax;
+                                    log_message('error', 'New Data Created : DB : ip_tax_rates , tax_rate_id : ' . $sgsttaxid);
+                                }
+
+                                $item_subtotal = $rs['line_items'][$i]['item_total'];
+
+
+                                $item_sgst_amt = $rs['line_items'][$i]['line_item_taxes'][0]['tax_amount'];
+                                $item_cgst_amt = $rs['line_items'][$i]['line_item_taxes'][1]['tax_amount'];
+                                $item_tax_total = ($item_sgst_amt + $item_cgst_amt);
+                                $item_total = ($item_subtotal + $item_tax_total);
+
+                                $item_discount = 0.00;
+                                $item_igst_amt = 0.00;
+                                // if($batch_no==""){ $batch_no = "";}
+
+
+                                $sku_sql = $Zohobook_model->ip_products($sku);
+                                if (!empty($sku_sql)) {
+                                    $product_id = $sku_sql[0]['product_id'];
+                                    log_message('error', 'Data fetch success DB : ip_products , product_id : ' . $product_id);
+                                } else {
+                                    log_message('error', 'No data => Data fetch failed DB : ip_products ' . $sku);
+                                    $sku_data['product_name'] = $item_name;
+                                    $sku_data['product_description'] = $item_description;
+                                    $sku_data['sku'] = $sku;
+                                    $sku_inserted_id = $Zohobook_model->customInsert($sku_data, 'ip_products');
+                                    $product_id = $sku_inserted_id;
+                                    log_message('error', '$sku_sql => Data fetch failed DB : ip_products ' . $sku_sql);
+
+                                    log_message('error', 'sku' . $sku);
+                                    log_message('error', 'New Data Created : DB : product_id , product_id : ' . $product_id);
+                                }
+
+                                //#1
+
+                                $ip_invoice_items['invoice_id'] = $invoice_insert_id;
+                                $ip_invoice_items['item_product_id'] = $product_id;
+                                $ip_invoice_items['item_date_added'] = $invoice_date;
+                                $ip_invoice_items['item_name'] = $item_name;
+                                $ip_invoice_items['item_description'] = $item_description;
+                                $ip_invoice_items['item_quantity'] = $item_quantity;
+                                $ip_invoice_items['item_price'] = $item_price;
+                                $ip_invoice_items['item_order'] = $item_order;
+                                $ip_invoice_items['item_product_unit'] = $item_product_unit;
+                                $ip_invoice_items['Sgst_item_tax_rate_id'] = $sgsttaxid;
+                                $ip_invoice_items['Cgst_item_tax_rate_id'] = $cgsttaxid;
+                                $item_insert_id = $Zohobook_model->customInsert($ip_invoice_items, 'ip_invoice_items');
+                                if ($item_insert_id)
+                                    log_message('error', 'Data insert success DB : ip_invoice_items => Sgst_item_tax_rate_id :' . $sgsttaxid);
                                 else
-                                {
-                                    log_message('error', 'No data => Data fetch failed DB : ip_clients '.$gst_no);
-                                    $gst_no_data['client_tax_code'] = $gst_no;
-                                    $gst_inserted_id = $Zohobook_model->customInsert($gst_no_data,'ip_clients');
-                                    $client_id = $gst_inserted_id;
-                                    log_message('error', 'New Data Created : DB : ip_clients , client_id : '.$client_id);
-                                }
+                                    log_message('error', 'Data insert failed DB : ip_invoice_items => Sgst_item_tax_rate_id :' . $sgsttaxid);
 
-
-                                $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
-                                $charactersLength = strlen($characters);
-                                $randomString = '';
-                                for ($i = 0; $i < 16; $i++) { $randomString .= $characters[rand(0, $charactersLength - 1)]; }
-                                $url_key = $randomString;
-    
-                                    $ip_invoices['user_id'] = 1;
-                                    $ip_invoices['client_id'] = $client_id;
-                                    $ip_invoices['invoice_group_id'] = 6;
-                                    $ip_invoices['invoice_status_id'] = ($status == 'draft' ? 1 : (($status == 'sent' || $status == 'overdue') ? 2 : 5));
-                                    $ip_invoices['invoice_date_created'] = $invoice_date;
-                                    $ip_invoices['invoice_time_created'] = $invoice_time;
-                                    $ip_invoices['invoice_date_due'] = $due_date;
-                                    $ip_invoices['invoice_number'] = $invoice_number;
-                                    $ip_invoices['invoice_url_key'] = $url_key;
-                                    $ip_invoices['receivedstatus'] = 'ST066';
-                                    $ip_invoices['credit_status'] = 0;
-                                    $ip_invoices['status'] = $status;
-                                    $ip_invoices['e_invoice_number'] = $einvoice_number;
-                                    $ip_invoices['invoice_url'] = $invoice_url;
-                                $invoice_insert_id = $Zohobook_model->customInsert($ip_invoices,'ip_invoices');
-                                if($invoice_insert_id)
-                                {
-                                    log_message('error', 'Data insert success DB : ip_invoices client id :'. $client_id);
-                                    $insert_count = $insert_count + 1;
-                                    //start invoice level custom fields
-
-                                    //custom fields insert
-
-                                        $batch_no = isset($rs['custom_fields'][5]['value']) ? $rs['custom_fields'][5]['value'] : "";
-                                            // $batch_no = "";
-                                        $vehicle_number = isset($rs['custom_field_hash']['cf_vehicle_number']) ? $rs['custom_field_hash']['cf_vehicle_number']: '';
-                                        $transport_mode =isset($rs['custom_field_hash']['cf_transport_mode']) ? $rs['custom_field_hash']['cf_transport_mode'] : '';
-                                        $purchase_order_date = isset($rs['custom_field_hash']['cf_purchase_order_date'])?$rs['custom_field_hash']['cf_purchase_order_date']:'';
-                                        $driver = isset($rs['custom_field_hash']['cf_driver']) ? $rs['custom_field_hash']['cf_driver'] : '';
-                                        $place_of_supply = isset($rs['custom_field_hash']['cf_place_of_supply']) ? $rs['custom_field_hash']['cf_place_of_supply']:'';
-                                // batch_no
-                                    $ip_invoice_custom_b['invoice_id'] = $invoice_insert_id;
-                                    $ip_invoice_custom_b['invoice_custom_fieldid'] = 62;
-                                    $ip_invoice_custom_b['invoice_custom_fieldvalue'] = $batch_no;
-                                    $result_invoice_custom_insert = $Zohobook_model->customInsert($ip_invoice_custom_b,'ip_invoice_custom');
-                                    if($result_invoice_custom_insert)
-                                        log_message('error', 'Data insert success DB : ip_invoice_custom ');
-                                    else
-                                        log_message('error', 'Data insert failed DB : ip_invoice_custom ');
-                                // vehicle_number
-                                    $ip_invoice_custom_v['invoice_id'] = $invoice_insert_id;
-                                    $ip_invoice_custom_v['invoice_custom_fieldid'] = 8;
-                                    $ip_invoice_custom_v['invoice_custom_fieldvalue'] = $vehicle_number;
-                                    $res_vehicle = $Zohobook_model->customInsert($ip_invoice_custom_v,'ip_invoice_custom');
-                                    if($res_vehicle)
-                                        log_message('error', 'Data insert success DB : ip_invoice_custom ');
-                                    else
-                                        log_message('error', 'Data insert failed DB : ip_invoice_custom ');
-                                // transport_mode
-                                    $ip_invoice_custom_t['invoice_id'] = $invoice_insert_id;
-                                    $ip_invoice_custom_t['invoice_custom_fieldid'] = 7;
-                                    $ip_invoice_custom_t['invoice_custom_fieldvalue'] = $transport_mode;
-                                    $res_transport_mode = $Zohobook_model->customInsert($ip_invoice_custom_t,'ip_invoice_custom');
-                                    if($res_transport_mode)
-                                        log_message('error', 'Data insert success DB : ip_invoice_custom ');
-                                    else
-                                        log_message('error', 'Data insert failed DB : ip_invoice_custom ');
-                                // purchase_order_date
-                                    $ip_invoice_custom_p['invoice_id'] = $invoice_insert_id;
-                                    $ip_invoice_custom_p['invoice_custom_fieldid'] = 15;
-                                    $ip_invoice_custom_p['invoice_custom_fieldvalue'] = $purchase_order_date;
-                                    $res_purchase_order_date =$Zohobook_model->customInsert($ip_invoice_custom_p,'ip_invoice_custom');
-                                    if($res_purchase_order_date)
-                                        log_message('error', 'Data insert success DB : ip_invoice_custom ');
-                                    else
-                                        log_message('error', 'Data insert failed DB : ip_invoice_custom ');
-                                // driver
-                                    $ip_invoice_custom_d['invoice_id'] = $invoice_insert_id;
-                                    $ip_invoice_custom_d['invoice_custom_fieldid'] = 58;
-                                    $ip_invoice_custom_d['invoice_custom_fieldvalue'] = $driver;
-                                    $res_driver = $Zohobook_model->customInsert($ip_invoice_custom_d,'ip_invoice_custom');
-                                    if($res_driver)
-                                        log_message('error', 'Data insert success DB : ip_invoice_custom ');
-                                    else
-                                        log_message('error', 'Data insert failed DB : ip_invoice_custom ');
-                                // place_of_supply
-                                    $ip_invoice_custom_d['invoice_id'] = $invoice_insert_id;
-                                    $ip_invoice_custom_d['invoice_custom_fieldid'] = 10;
-                                    $ip_invoice_custom_d['invoice_custom_fieldvalue'] = $place_of_supply;
-                                    $res_place = $Zohobook_model->customInsert($ip_invoice_custom_d,'ip_invoice_custom');
-                                    if($res_place)
-                                        log_message('error', 'Data insert success DB : ip_invoice_custom ');
-                                    else
-                                        log_message('error', 'Data insert failed DB : ip_invoice_custom ');
-                                    //end  invoice level custom fields
-
-                                    //if line items available
-                                    if(isset($rs['line_items']) && count($rs['line_items']) > 0)
-                                    {
-                                        log_message('error', 'Processing line items'.count($rs['line_items']));
-
-                                        for($i = 0; $i< count($rs['line_items']);$i++)
-                                        {            //start insert line items
-                                                    $sku = $rs['line_items'][$i]['sku'];
-                                                    
-                                                    
-                                                    $item_price = $rs['line_items'][$i]['rate'];
-                                                    $item_order =  $rs['line_items'][$i]['item_order'];
-                                                    $item_product_unit = $rs['line_items'][$i]['unit'];
-                                                    $item_name = $rs['line_items'][$i]['name'];
-                                                    $item_description = $rs['line_items'][$i]['description'];
-                                                    $item_quantity = $rs['line_items'][$i]['quantity'];
-                                                    $cgst = $rs['line_items'][$i]['line_item_taxes'][1]['tax_name'];
-                                                    $sgst = $rs['line_items'][$i]['line_item_taxes'][0]['tax_name'];
-                                                    $cgst = $cgst[4];
-                                                    $sgst = $sgst[4];
-                                                    $cgst = $cgst.'.000';
-                                                    $getcgsttax = $Zohobook_model->ip_tax_rates($cgst);
-                                                    if($getcgsttax)
-                                                    {
-                                                        $cgsttaxid = $getcgsttax[0]['tax_rate_id'];
-                                                        log_message('error', 'Data fetch success DB : ip_tax_rates cgst'. $cgst);
-                                                    }
-                                                    else
-                                                    {
-                                                        log_message('error', 'No data => Data fetch failed DB : ip_tax_rates '. $cgst);
-                                                        $cgst_data['tax_rate_percent'] = $cgst;
-                                                        $getcgsttax = $Zohobook_model->customInsert($cgst_data,'ip_tax_rates');
-                                                        $cgsttaxid = $getcgsttax;
-                                                        log_message('error', 'New Data Created : DB : ip_tax_rates , tax_rate_id : '.$cgsttaxid);
-                                                    }
-                        
-                                                    $sgst = $sgst.'.000';
-                                                    $getsgsttax = $Zohobook_model->ip_tax_rates($sgst);
-                                                    if($getsgsttax)
-                                                    {
-                                                        $sgsttaxid = $getsgsttax[0]['tax_rate_id'];
-                                                        log_message('error', 'Data fetch success DB : ip_tax_rates sgst'. $sgst);
-                                                    }
-                                                    else
-                                                    {
-                                                        log_message('error', 'No data => Data fetch failed DB : ip_tax_rates '. $sgst);
-                                                        $sgst_data['tax_rate_percent'] = $sgst;
-                                                        $getsgsttax = $Zohobook_model->customInsert($sgst_data,'ip_tax_rates');
-                                                        $sgsttaxid = $getsgsttax;
-                                                        log_message('error', 'New Data Created : DB : ip_tax_rates , tax_rate_id : '.$sgsttaxid);
-                                                    }
-                        
-                                                    $item_subtotal = $rs['line_items'][$i]['item_total'];
-                                                    
-                                                    
-                                                    $item_sgst_amt = $rs['line_items'][$i]['line_item_taxes'][0]['tax_amount'];
-                                                    $item_cgst_amt = $rs['line_items'][$i]['line_item_taxes'][1]['tax_amount'];
-                                                    $item_tax_total = ($item_sgst_amt + $item_cgst_amt);
-                                                    $item_total = ($item_subtotal + $item_tax_total);
-                        
-                                                    $item_discount = 0.00;
-                                                    $item_igst_amt = 0.00;
-                                                    // if($batch_no==""){ $batch_no = "";}
-                                                    
-                        
-                                                    $sku_sql = $Zohobook_model->ip_products($sku);
-                                                    if(!empty($sku_sql))
-                                                    {
-                                                        $product_id = $sku_sql[0]['product_id'];
-                                                        log_message('error', 'Data fetch success DB : ip_products , product_id : '.$product_id);
-                                                    }
-                                                    else
-                                                    {
-                                                        log_message('error', 'No data => Data fetch failed DB : ip_products '. $sku);
-                                                        $sku_data['product_name'] = $item_name;
-                                                        $sku_data['product_description'] = $item_description;
-                                                        $sku_data['sku'] = $sku;
-                                                        $sku_inserted_id = $Zohobook_model->customInsert($sku_data,'ip_products');
-                                                        $product_id = $sku_inserted_id;
-                                                        log_message('error', '$sku_sql => Data fetch failed DB : ip_products '. $sku_sql);
-
-                                                        log_message('error', 'sku'.$sku);
-                                                        log_message('error', 'New Data Created : DB : product_id , product_id : '.$product_id);
-                                                    }
-                        
-                                                    //#1
-                        
-                                                    $ip_invoice_items['invoice_id'] = $invoice_insert_id;
-                                                    $ip_invoice_items['item_product_id'] = $product_id;
-                                                    $ip_invoice_items['item_date_added'] = $invoice_date;
-                                                    $ip_invoice_items['item_name'] = $item_name;
-                                                    $ip_invoice_items['item_description'] = $item_description;
-                                                    $ip_invoice_items['item_quantity'] = $item_quantity;
-                                                    $ip_invoice_items['item_price'] = $item_price;
-                                                    $ip_invoice_items['item_order'] = $item_order;
-                                                    $ip_invoice_items['item_product_unit'] = $item_product_unit;
-                                                    $ip_invoice_items['Sgst_item_tax_rate_id'] = $sgsttaxid;
-                                                    $ip_invoice_items['Cgst_item_tax_rate_id'] = $cgsttaxid;
-                                                    $item_insert_id = $Zohobook_model->customInsert($ip_invoice_items,'ip_invoice_items');
-                                                    if($item_insert_id)
-                                                        log_message('error', 'Data insert success DB : ip_invoice_items => Sgst_item_tax_rate_id :'. $sgsttaxid);
-                                                    else
-                                                        log_message('error', 'Data insert failed DB : ip_invoice_items => Sgst_item_tax_rate_id :'. $sgsttaxid);
-                        
-                                                    //tax amount --  ip_invoice_item_amounts - table
-                                                        $ip_invoice_item_amounts['item_id'] = $item_insert_id;
-                                                        $ip_invoice_item_amounts['item_subtotal'] = $item_subtotal;
-                                                        $ip_invoice_item_amounts['item_tax_total'] = $item_tax_total;
-                                                        $ip_invoice_item_amounts['item_total'] = $item_total;
-                                                        $ip_invoice_item_amounts['item_sgst_amt'] = $item_sgst_amt;
-                                                        $ip_invoice_item_amounts['item_cgst_amt'] = $item_cgst_amt;
-                                                        $ip_invoice_item_amounts['item_discount'] = $item_discount;
-                                                        $ip_invoice_item_amounts['item_igst_amt'] = $item_igst_amt;
-                                                    $result_tax_amount_insert = $Zohobook_model->customInsert($ip_invoice_item_amounts,'ip_invoice_item_amounts');
-                                                    if($result_tax_amount_insert)
-                                                        log_message('error', 'Data insert success DB : ip_invoice_item_amounts ');
-                                                    else
-                                                        log_message('error', 'Data insert failed DB : ip_invoice_item_amounts ');
-                                                        
-                                        }         //end line items insert    
-
-                                    }   
-                                    else
-                                    {
-                                        log_message('error', 'Line Items not found in API result');
-                                    }
-                                }
+                                //tax amount --  ip_invoice_item_amounts - table
+                                $ip_invoice_item_amounts['item_id'] = $item_insert_id;
+                                $ip_invoice_item_amounts['item_subtotal'] = $item_subtotal;
+                                $ip_invoice_item_amounts['item_tax_total'] = $item_tax_total;
+                                $ip_invoice_item_amounts['item_total'] = $item_total;
+                                $ip_invoice_item_amounts['item_sgst_amt'] = $item_sgst_amt;
+                                $ip_invoice_item_amounts['item_cgst_amt'] = $item_cgst_amt;
+                                $ip_invoice_item_amounts['item_discount'] = $item_discount;
+                                $ip_invoice_item_amounts['item_igst_amt'] = $item_igst_amt;
+                                $result_tax_amount_insert = $Zohobook_model->customInsert($ip_invoice_item_amounts, 'ip_invoice_item_amounts');
+                                if ($result_tax_amount_insert)
+                                    log_message('error', 'Data insert success DB : ip_invoice_item_amounts ');
                                 else
-                                {
-                                    log_message('error', 'Data insert failed DB : ip_invoice_items client id :'. $client_id);
-                                }
-                                
-                                
-                        }   
-                        else // update invoice status, especially for cancelled invoices
-                        {
-                            // if($status == "void" || $status == "sent" ||  $status == "overdue")
-                            // {
-                                $sql_invoice_update = array();
-                                $sql_invoice_update['invoice_status_id'] = (($status == "sent" || $status == "overdue") ? 2 : 5);
-                                // echo 'script' . $invoice_number. $status;
-                                // print_r( $sql_invoice_update);
-                                // echo '
'; - $sql_invoice_update = $Zohobook_model->sql_invoice_update($sql_invoice_update,$invoice_number,$invoice_date,'ip_invoices'); - if($sql_invoice_update) - { - log_message('error', 'Data update success DB : ip_invoices '); - } - else - { - log_message('error', 'Data update failed DB : ip_invoices '); - } - $update_count = $update_count + 1; - // } + log_message('error', 'Data insert failed DB : ip_invoice_item_amounts '); + } //end line items insert + + } else { + log_message('error', 'Line Items not found in API result'); } + } else { + log_message('error', 'Data insert failed DB : ip_invoice_items client id :' . $client_id); + } + } else // update invoice status, especially for cancelled invoices + { + // if($status == "void" || $status == "sent" || $status == "overdue") + // { + $sql_invoice_update = array(); + $sql_invoice_update['invoice_status_id'] = (($status == "sent" || $status == "overdue") ? 2 : 5); + // echo 'script' . $invoice_number. $status; + // print_r( $sql_invoice_update); + // echo '
'; + $sql_invoice_update = $Zohobook_model->sql_invoice_update($sql_invoice_update, $invoice_number, $invoice_date, 'ip_invoices'); + if ($sql_invoice_update) { + log_message('error', 'Data update success DB : ip_invoices '); + } else { + log_message('error', 'Data update failed DB : ip_invoices '); + } + $update_count = $update_count + 1; + // } + } // echo 'new invoice inserted count- ' . $insert_count . '/' . 'status updated count - ' . $update_count; - }$response = [ - 'status' => true, - 'message' => "Successfully data inserted. Total inserted: " . $insert_count . ", Total Updated: " . $update_count - ]; - return json_encode($response); - - // curl_close($ch); + } + $response = [ + 'status' => true, + 'message' => "Successfully data inserted. Total inserted: " . $insert_count . ", Total Updated: " . $update_count + ]; + return json_encode($response); + + // curl_close($ch); // } - } - catch (\Exception $e) { + } catch (\Exception $e) { $data['err'] = $e->getMessage(); // $db = \Config\Database::connect(); // $data['last_query'] = $db->getLastQuery();; - $Zohobook_model->customInsert($data,'zohobook_api_err'); + $Zohobook_model->customInsert($data, 'zohobook_api_err'); log_message('error', "Data insertion failed : " . $e->getMessage()); - + return json_encode("Data insertion failed : " . $e->getMessage()); } } // END zoho API - function fetchEmployeeDetails() { + function fetchEmployeeDetails() + { $EmpID = $this->request->getPost('EmpID'); - + if (!$EmpID) { return $this->response->setJSON(['success' => false, 'message' => 'Employee ID not provided']); } - + $userInfo = $this->user_model->findEmp($EmpID); - + if ($userInfo) { return $this->response->setJSON(['success' => true, 'userInfo' => $userInfo]); } else { return $this->response->setJSON(['success' => false, 'message' => 'Employee not found']); } } -} \ No newline at end of file +} diff --git a/app/Helpers/cias_helper.php b/app/Helpers/cias_helper.php index c48c5d5c..f3f5b341 100755 --- a/app/Helpers/cias_helper.php +++ b/app/Helpers/cias_helper.php @@ -48,9 +48,9 @@ if (!function_exists('generateCopyrightNotice')) { { $current_year = date('Y'); if ($current_year > 2024) { - return " Copyright © 2024 - $current_year "; + return " © 2024 - $current_year "; } else { - return " Copyright © $current_year "; + return " © $current_year "; } } } diff --git a/app/Models/User_model.php b/app/Models/User_model.php index 2cd57b27..8098fd00 100644 --- a/app/Models/User_model.php +++ b/app/Models/User_model.php @@ -160,7 +160,6 @@ class User_model extends Model $query = $builder->get(); $user = $query->getResult(); - if (!empty($user)) { if (password_verify($oldPassword, $user[0]->password)) { diff --git a/app/Views/addEmployeenew.php b/app/Views/addEmployeenew.php index d0e47df9..50414640 100644 --- a/app/Views/addEmployeenew.php +++ b/app/Views/addEmployeenew.php @@ -493,7 +493,7 @@ class="badge">* + onchange="getAge();" class="form-control " data-provide="datepicker" data-date-format="dd-mm-yyyy">
@@ -638,7 +638,7 @@ class="badge">* + class="form-control" data-provide="datepicker" data-date-format="dd-mm-yyyy">
Previous Years of Experience
-
+
@@ -988,7 +988,7 @@ Add
-
+
@@ -1347,7 +1347,7 @@ e.preventDefault(); // Prevent default form submission var isValid = true; - var combinedFormData = ''; + var combinedFormData = new FormData(); // Use FormData to handle files // List of form IDs you want to combine var formIds = ['#accountForm', '#profileForm', '#bankForm', '#proofForm', '#fileForm']; // Add all your form IDs here @@ -1362,8 +1362,19 @@ return false; // Break the loop if any form is invalid } - // Serialize and combine the form data - combinedFormData += $form.serialize() + '&'; // Append each form's serialized data + // Serialize and append the form data + $form.find(':input').each(function() { + var input = $(this); + if (input.attr('type') === 'file') { + // If the input is a file, append it to FormData + $.each(input[0].files, function(i, file) { + combinedFormData.append(input.attr('name'), file); + }); + } else { + // Otherwise, append other form data + combinedFormData.append(input.attr('name'), input.val()); + } + }); }); if (!isValid) { @@ -1371,22 +1382,21 @@ return; // Stop the submission if validation fails } - // Remove the trailing '&' from the combined form data - combinedFormData = combinedFormData.slice(0, -1); + console.log('Combined Form Data:', combinedFormData); // Log the combined form data for debugging - console.log('Combined Form Data:', combinedFormData); // Log the combined form data - - // Now you can send the combined data via AJAX or perform your desired action + // Now you can send the combined data via AJAX $.ajax({ type: 'POST', url: 'addNewEmployee', // Replace with your form submission URL data: combinedFormData, + processData: false, // Don't process the data + contentType: false, // Don't set content type success: function(response) { console.log('Form submitted successfully:', response); // Handle the success scenario - if(response){ + if (response) { window.location.href = ''; - }else{ + } else { alert('Employee details Not Update...'); } }, @@ -1398,6 +1408,7 @@ }); + // Function to navigate to the next tab function goToNextTab() { var $activeTab = $('#rootwizard').find('ul.nav li.nav-item a.active'); diff --git a/app/Views/addasset.php b/app/Views/addasset.php index d22c5c4c..48ea12e1 100644 --- a/app/Views/addasset.php +++ b/app/Views/addasset.php @@ -229,7 +229,8 @@ dataType: 'json', success: function(data) { //alert(data); - + console.log(data); + var line = ''; $('#SelectMaterialCode').empty(); //alert('before'); diff --git a/app/Views/changePassword.php b/app/Views/changePassword.php index 804d2b2f..2b8f424b 100644 --- a/app/Views/changePassword.php +++ b/app/Views/changePassword.php @@ -1,96 +1,96 @@ -
- -
-

- Change Password - Set new password for your account -

-
-
-
-
- -
-
-

Enter Details

-
- - -
-
-
-
- - -
-
-
-
-
-
-
- - -
-
-
-
-
-
- - -
-
-
-
- - - -
-
-
- getFlashdata('error'); - if($error) - { - ?> -
- - getFlashdata('error'); ?> -
- - getFlashdata('success'); - if($success) - { - ?> -
- - getFlashdata('success'); ?> -
- - - getFlashdata('nomatch'); - if($noMatch) - { - ?> -
- - getFlashdata('nomatch'); ?> -
- - +
+
+ +
+ +
-
- ', '
'); ?> +
+
+

Change Password + Set new password for your account

+
+ getFlashdata('error'); + if ($error) { + ?> +
+ + getFlashdata('error'); ?> +
+ + getFlashdata('success'); + if ($success) { + ?> +
+ + getFlashdata('success'); ?> +
+ + + getFlashdata('nomatch'); + if ($noMatch) { + ?> +
+ + getFlashdata('nomatch'); ?> +
+ + +
+
+
+
+
+
+
+
+
+ + +
+
+
+
+
+
+
+ + +
+
+
+
+ + +
+
+
+
+ +
+
+ + +
+
+
+
+
-
-
-
+ + + \ No newline at end of file diff --git a/app/Views/companyview.php b/app/Views/companyview.php index 2692f508..1a887da5 100644 --- a/app/Views/companyview.php +++ b/app/Views/companyview.php @@ -481,7 +481,7 @@ function ValidateUA() {
-

Company Profile

+

Business Settings

@@ -498,7 +498,7 @@ function ValidateUA() {
- Company Information + Business Information
diff --git a/app/Views/dashboard.php b/app/Views/dashboard.php index eb1125ca..ed16a770 100644 --- a/app/Views/dashboard.php +++ b/app/Views/dashboard.php @@ -625,8 +625,10 @@ $('#datepick').change(function() {
- diff --git a/app/Views/editEmployeenew.php b/app/Views/editEmployeenew.php index 46dc8e0c..050a61f4 100644 --- a/app/Views/editEmployeenew.php +++ b/app/Views/editEmployeenew.php @@ -207,7 +207,7 @@ if (!empty($EmpDetails)) { src="" alt="your image" style="width: 139px;" />
+ value="" name="photo" /> @@ -250,7 +250,7 @@ if (!empty($EmpDetails)) { + class="form-control" data-provide="datepicker" data-date-format="dd-mm-yyyy">
@@ -465,7 +465,7 @@ if (!empty($EmpDetails)) { class="badge">* + placeholder="Date Of Joining" class="form-control" data-provide="datepicker" data-date-format="dd-mm-yyyy">
Previous Years of Experience @@ -874,13 +874,17 @@ if (!empty($EmpDetails)) {
-
+ - +
+ +
0) { foreach ($emp_data as $key => $value) { ?> -
+
File Name
-
+
@@ -1617,55 +1621,55 @@ if (!empty($EmpDetails)) { }); $('.submit').click(function(e) { - e.preventDefault(); // Prevent default form submission - + e.preventDefault(); var isValid = true; - var combinedFormData = ''; - - // List of form IDs you want to combine + var combinedFormData = new FormData(); var formIds = ['#accountForm', '#profileForm', '#bankForm', '#proofForm', '#fileForm']; // Add all your form IDs here - formIds.forEach(function(formId) { var $form = $(formId); - // Validate the form if (!$form[0].checkValidity()) { isValid = false; $form.find(':submit').click(); // Trigger the built-in HTML5 validation to show errors return false; // Break the loop if any form is invalid } - - // Serialize and combine the form data - combinedFormData += $form.serialize() + '&'; // Append each form's serialized data + // Append the form data to FormData + $form.serializeArray().forEach(function(field) { + combinedFormData.append(field.name, field.value); + }); + // Handle file inputs separately + $form.find('input[type="file"]').each(function() { + var input = $(this); + $.each(input[0].files, function(i, file) { + combinedFormData.append(input.attr('name'), file); + }); + }); }); - if (!isValid) { console.log('Validation failed. Please fill all required fields.'); return; // Stop the submission if validation fails } + console.log('Form Data Prepared:', combinedFormData); // Log for debugging - // Remove the trailing '&' from the combined form data - combinedFormData = combinedFormData.slice(0, -1); - - console.log('Combined Form Data:', combinedFormData); // Log the combined form data - - // Now you can send the combined data via AJAX or perform your desired action + // Send the combined data via AJAX $.ajax({ type: 'POST', url: 'employeedetails/UpdateEmployee', // Replace with your form submission URL data: combinedFormData, + processData: false, // Prevent jQuery from processing the data + contentType: false, // Prevent jQuery from setting the content type success: function(response) { - console.log('Form submitted successfully:', response); - // Handle the success scenario - // if (response) { - // window.location.href = ''; - // } else { - // alert('Employee details Not Update...'); - // } + console.log(response); + + console.log('Form submitted successfully:', response == 'true'); + if (response == 'true') { + window.location.href = ''; + } else { + alert('Employee details Not Update...'); + } }, error: function(error) { console.log('Form submission failed:', error); - // Handle the error scenario } }); }); diff --git a/app/Views/employeeListing.php b/app/Views/employeeListing.php index 5eb84cec..f93e2acb 100644 --- a/app/Views/employeeListing.php +++ b/app/Views/employeeListing.php @@ -95,7 +95,7 @@
diff --git a/app/Views/expense_list.php b/app/Views/expense_list.php index a85da52e..c521e501 100644 --- a/app/Views/expense_list.php +++ b/app/Views/expense_list.php @@ -8,6 +8,7 @@ .form-group { padding-bottom: 0%; } + .Date-filter-form { display: flex; align-items: center; @@ -43,7 +44,8 @@ .icon-button:hover { color: #0056b3; } - .delete_button{ + + .delete_button { border: none; background-color: white; color: red; @@ -69,7 +71,7 @@
- + @@ -87,11 +89,11 @@ Created Date Supplier Name - GST Cost + GST Total - Status Payment Method + Status Action @@ -105,34 +107,34 @@ $fileExists = 1; $fileUrl = base_url('uploads/') . $record['transporter_file']; } - // Create download link and delete button - ?> + // Create download link and delete button + ?> - + - + - + - + - +
- + @@ -175,29 +177,27 @@
- +
- +
- - + +
- - + +
- -
- + - - - + + +
- + - +
- +
@@ -239,256 +239,264 @@ window.location.href = 'downloadFile/' + fileName; } $(document).ready(function() { - // Function to toggle payment method based on status - function togglePaymentMethod() { - var status = $('#status_id').val(); - console.log(status); - - if (status === 'Paid') { - $('#payment_method').prop('disabled', false); // Enable payment method - } else { - $('#payment_method').prop('disabled', true).val(''); // Disable payment method and clear value + // Function to toggle payment method based on status + function togglePaymentMethod() { + var status = $('#status_id').val(); + console.log(status); + + if (status === 'Paid') { + $('#payment_method').prop('disabled', false); // Enable payment method + } else { + $('#payment_method').prop('disabled', true).val(''); // Disable payment method and clear value + } } - } - // Trigger the toggle function on page load - togglePaymentMethod(); - - // Trigger the toggle function whenever the status changes - $('#status_id').on('change', function() { + // Trigger the toggle function on page load togglePaymentMethod(); + + // Trigger the toggle function whenever the status changes + $('#status_id').on('change', function() { + togglePaymentMethod(); + }); }); -}); $(document).ready(function() { $('#supplierid').select2(); - var formActionUrl = ''; + var formActionUrl = ''; - // Event handler for file input change - $('#transporterfile').on('change', function() { - var fileName = $(this).val().split('\\').pop(); // Get the file name - $('#file-name-display').text(fileName); // Display the file name - }); - function togglePaymentMethodEdit() { - var status = $('#status_id').val(); - console.log(status); - - if (status === 'Paid') { - $('#payment_method').prop('disabled', false); // Enable payment method - } else { - $('#payment_method').prop('disabled', true).val(''); // Disable payment method and clear value - } - } - $(document).on('click', '.edit-button', function() { - - $('.modal-title').html('Edit Expense'); - var expenseId = $(this).data('id'); - var supplier_list = []; - $('#supplierid').empty(); // Clear the supplier dropdown - $('#supplierid').append(''); - supplier_list[0].forEach(function(supplier) { - $('#supplierid').append(''); + // Event handler for file input change + $('#transporterfile').on('change', function() { + var fileName = $(this).val().split('\\').pop(); // Get the file name + $('#file-name-display').text(fileName); // Display the file name }); - formActionUrl = ''; // Set action URL for adding - $.ajax({ - url: '', - type: 'POST', - data: { id: expenseId }, - success: function(response) { - var expense = JSON.parse(response); - $('#id').val(expense.id); - $('#transporterfile').val(''); // Clear the file input - $('#currentFileName').text(''); // Clear the file name display - $('#supplierid').val(expense.supplier_id).trigger('change'); - $('#remarks').val(expense.remarks); - $('#cost').val(expense.cost); - $('#gst').val(expense.gst); - $('#total').val(expense.total); - $('#status_id').val(expense.status); - $('#payment_method').val(expense.payment_method); + function togglePaymentMethodEdit() { + var status = $('#status_id').val(); + console.log(status); - // Clear any existing file link and delete button - $('#transporterfile').next('.download_button').remove(); - $('#transporterfile').next('.delete_button').remove(); - - if (expense.transporter_file) { - $('#transporterfile_name').val(expense.transporter_file); // Set the hidden input value - $('#currentFileName').text(expense.transporter_file); // Display the existing file name - - // Construct the full URL to the file - var fileUrl = '' + expense.transporter_file; - - // Create download link and delete button - var fileLink = ''; - var deleteButton = ''; - - // Add the file link and delete button - $('#transporterfile').after(fileLink + ' ' + deleteButton); - } else { - $('#transporterfile_name').val(''); // Clear hidden input if no file - } - togglePaymentMethodEdit(); + if (status === 'Paid') { + $('#payment_method').prop('disabled', false); // Enable payment method + } else { + $('#payment_method').prop('disabled', true).val(''); // Disable payment method and clear value + } + } + $(document).on('click', '.edit-button', function() { + + $('.modal-title').html('Edit Expense'); + var expenseId = $(this).data('id'); + var supplier_list = []; + $('#supplierid').empty(); // Clear the supplier dropdown + $('#supplierid').append(''); + supplier_list[0].forEach(function(supplier) { + $('#supplierid').append(''); + }); + formActionUrl = ''; // Set action URL for adding + + $.ajax({ + url: '', + type: 'POST', + data: { + id: expenseId + }, + success: function(response) { + var expense = JSON.parse(response); + $('#id').val(expense.id); + $('#transporterfile').val(''); // Clear the file input + $('#currentFileName').text(''); // Clear the file name display + $('#supplierid').val(expense.supplier_id).trigger('change'); + $('#remarks').val(expense.remarks); + $('#cost').val(expense.cost); + $('#gst').val(expense.gst); + $('#total').val(expense.total); + $('#status_id').val(expense.status); + $('#payment_method').val(expense.payment_method); + + // Clear any existing file link and delete button + $('#transporterfile').next('.download_button').remove(); + $('#transporterfile').next('.delete_button').remove(); + + if (expense.transporter_file) { + $('#transporterfile_name').val(expense.transporter_file); // Set the hidden input value + $('#currentFileName').text(expense.transporter_file); // Display the existing file name + + // Construct the full URL to the file + var fileUrl = '' + expense.transporter_file; + + // Create download link and delete button + var fileLink = ''; + var deleteButton = ''; + + // Add the file link and delete button + $('#transporterfile').after(fileLink + ' ' + deleteButton); + } else { + $('#transporterfile_name').val(''); // Clear hidden input if no file + } + togglePaymentMethodEdit(); + } + + }); + }); + + + $(document).on('click', '#addExpense', function() { + $('.download_button').remove(); + $('.delete_button').remove(); + $('.modal-title').html('Add Expense'); + $('#transporterfile').val(''); // Clear the file input + $('#currentFileName').text(''); // Clear the file name display + $('#supplierid').val('').trigger('change'); + $('#remarks').val(''); + $('#cost').val(''); + $('#gst').val(''); + $('#total').val(''); + $('#status_id').val(''); + $('#payment_method').val(''); + var supplier_list = []; + $('#supplierid').empty(); // Clear the supplier dropdown + $('#supplierid').append(''); + + supplier_list[0].forEach(function(supplier) { + $('#supplierid').append(''); + }); + formActionUrl = ''; // Set action URL for adding + togglePaymentMethodEdit(); + }); + + // Handle form submission + $('#tempClick').on('click', function(e) { + e.preventDefault(); + + // Native HTML5 form validation + if ($('#expenseForm')[0].checkValidity()) { + var formData = new FormData($('#expenseForm')[0]); // Use FormData to handle file upload + console.log(formActionUrl); + + $.ajax({ + url: formActionUrl, + type: 'POST', + data: formData, + processData: false, + contentType: false, + success: function(response) { + console.log(response); + + if (response) { + $('#expenseModal').modal('hide'); + $('#expenseForm')[0].reset(); + $('#file-name-display').text(''); // Clear the file name display + window.location.reload(); + } else { + console.log(response); + } + }, + error: function(xhr, status, error) { + alert('An error occurred: ' + error); + } + }); + } else { + // If form is invalid, show native validation messages + $('#expenseForm')[0].reportValidity(); + } + }); + + + // DataTable initialization and date range filter logic (unchanged) + var table = $('#expense_list_table').DataTable({ + dom: 'Blfrtip', + buttons: [ + 'copy', 'csv', 'excel', 'pdf', 'print' + ], + pageLength: 10, + lengthMenu: [ + [10, 20, 30, 50, -1], + [10, 20, 30, 50, "All"] + ], + responsive: true, + order: [ + [0, 'desc'] + ], + language: { + paginate: { + next: '', + previous: '' + } + } + }); + + $.fn.dataTable.ext.search.push( + function(settings, data, dataIndex) { + var fromDate = $('#fromDate').val(); + var toDate = $('#toDate').val(); + + if (!fromDate || !toDate) { + return true; // If no dates selected, don't filter + } + + var dateStr = data[0]; + var dateParts = dateStr.split("-"); + var date = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]); + + var startDate = new Date(fromDate); + var endDate = new Date(toDate); + + startDate.setDate(startDate.getDate() - 1); + endDate.setHours(23, 59, 59, 999); + + return date >= startDate && date <= endDate; + } + ); + + $("#DateRangeFilter").submit(function(e) { + e.preventDefault(); + table.draw(); + }); + + $("#resetButton").click(function() { + $("#fromDate").val(''); + $("#toDate").val(''); + table.draw(); + }); + + document.getElementById('fromDate').addEventListener('change', function() { + var fromDate = this.value; + var toDateInput = document.getElementById('toDate'); + toDateInput.min = fromDate; + if (toDateInput.value < fromDate) { + toDateInput.value = fromDate; } - }); }); - - $(document).on('click', '#addExpense', function () { - $('.download_button').remove(); - $('.delete_button').remove(); - $('.modal-title').html('Add Expense'); - $('#transporterfile').val(''); // Clear the file input - $('#currentFileName').text(''); // Clear the file name display - $('#supplierid').val('').trigger('change'); - $('#remarks').val(''); - $('#cost').val(''); - $('#gst').val(''); - $('#total').val(''); - $('#status_id').val(''); - $('#payment_method').val(''); - var supplier_list = []; - $('#supplierid').empty(); // Clear the supplier dropdown - $('#supplierid').append(''); - - supplier_list[0].forEach(function(supplier) { - $('#supplierid').append(''); - }); - formActionUrl = ''; // Set action URL for adding - togglePaymentMethodEdit(); - }); - - // Handle form submission - $('#tempClick').on('click', function(e) { - e.preventDefault(); - - // Native HTML5 form validation - if ($('#expenseForm')[0].checkValidity()) { - var formData = new FormData($('#expenseForm')[0]); // Use FormData to handle file upload - console.log(formActionUrl); + $(document).on('click', '#deleteFile', function() { + var fileName = $(this).data('file'); + var expenseId = $(this).data('value'); $.ajax({ - url: formActionUrl, + url: '', type: 'POST', - data: formData, - processData: false, - contentType: false, + data: { + file_name: fileName, + expense_id: expenseId + }, success: function(response) { console.log(response); - if (response) { - $('#expenseModal').modal('hide'); - $('#expenseForm')[0].reset(); - $('#file-name-display').text(''); // Clear the file name display - window.location.reload(); + var result = JSON.parse(response); + if (result.success) { + alert('File deleted successfully.'); + $('#currentFileName').text(''); + $('#transporterfile_name').val(''); + $('#deleteFile').remove(); // Remove the delete button + $('#transporterfile').next('a').remove(); // Remove the download link } else { - console.log(response); + alert('Failed to delete the file: ' + result.message); } }, - error: function(xhr, status, error) { - alert('An error occurred: ' + error); + error: function() { + alert('Error deleting the file.'); } }); - } else { - // If form is invalid, show native validation messages - $('#expenseForm')[0].reportValidity(); - } -}); - - - // DataTable initialization and date range filter logic (unchanged) - var table = $('#expense_list_table').DataTable({ - dom: 'Blfrtip', - buttons: [ - 'copy', 'csv', 'excel', 'pdf', 'print' - ], - pageLength: 10, - lengthMenu: [ [10, 20, 30, 50, -1], [10, 20, 30, 50, "All"] ], - responsive: true, - order: [[0, 'desc']], - language: { - paginate: { - next: '', - previous: '' - } - } }); - - $.fn.dataTable.ext.search.push( - function(settings, data, dataIndex) { - var fromDate = $('#fromDate').val(); - var toDate = $('#toDate').val(); - - if (!fromDate || !toDate) { - return true; // If no dates selected, don't filter - } - - var dateStr = data[0]; - var dateParts = dateStr.split("-"); - var date = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]); - - var startDate = new Date(fromDate); - var endDate = new Date(toDate); - - startDate.setDate(startDate.getDate() - 1); - endDate.setHours(23, 59, 59, 999); - - return date >= startDate && date <= endDate; - } - ); - - $("#DateRangeFilter").submit(function(e) { - e.preventDefault(); - table.draw(); - }); - - $("#resetButton").click(function() { - $("#fromDate").val(''); - $("#toDate").val(''); - table.draw(); - }); - - document.getElementById('fromDate').addEventListener('change', function() { - var fromDate = this.value; - var toDateInput = document.getElementById('toDate'); - toDateInput.min = fromDate; - if (toDateInput.value < fromDate) { - toDateInput.value = fromDate; - } - }); -}); - -$(document).on('click', '#deleteFile', function() { - var fileName = $(this).data('file'); - var expenseId = $(this).data('value'); - - $.ajax({ - url: '', - type: 'POST', - data: { file_name: fileName, expense_id: expenseId }, - success: function(response) { - console.log(response); - - var result = JSON.parse(response); - if (result.success) { - alert('File deleted successfully.'); - $('#currentFileName').text(''); - $('#transporterfile_name').val(''); - $('#deleteFile').remove(); // Remove the delete button - $('#transporterfile').next('a').remove(); // Remove the download link - } else { - alert('Failed to delete the file: ' + result.message); - } - }, - error: function() { - alert('Error deleting the file.'); - } - }); -}); - - - @@ -497,4 +505,4 @@ $(document).on('click', '#deleteFile', function() { var fileName = this.files[0].name; document.getElementById('currentFileName').textContent = fileName; }); - + \ No newline at end of file diff --git a/app/Views/includes/new_footer.php b/app/Views/includes/new_footer.php index f4f5c02e..15db7a00 100644 --- a/app/Views/includes/new_footer.php +++ b/app/Views/includes/new_footer.php @@ -82,6 +82,36 @@ $('#hdate').addClass('form-control'); $('#hname').addClass('form-control'); }); + + + // Zoho Sync FUnction + + function synczohobooks() { + + var sync = true + $('#loader_wrapper').css("display", "block"); + $.ajax({ + // $('#loadingDiv').show(); + + url: "user/zohobooks_api_fetch_all", + type: "post", + data: { + sync + }, + + success: function(data) { + console.log(data); + alert("Sync Completed"); + }, + failure: function(data) { + alert("Failed"); + }, + complete: function() { + $('#loader_wrapper').css("display", "none"); + } + }); + } + \ No newline at end of file diff --git a/app/Views/includes/new_header.php b/app/Views/includes/new_header.php index d8962bc1..8305ff9f 100644 --- a/app/Views/includes/new_header.php +++ b/app/Views/includes/new_header.php @@ -318,7 +318,8 @@ --> @@ -483,8 +489,17 @@ PaySlip Generator Employee Loan Details + +
+
+ @@ -508,7 +523,7 @@ Transporter Details Cost Details Asset Details - Company Master + Business Settings Config Details Department Details Material Details diff --git a/app/Views/purchaseorder.php b/app/Views/purchaseorder.php index 954b7d42..8263d852 100644 --- a/app/Views/purchaseorder.php +++ b/app/Views/purchaseorder.php @@ -1868,7 +1868,7 @@ if (!empty($INRSYMBOL)) {
- + @@ -109,80 +117,82 @@ span.highlight {
-

Invoices Table

+

Invoices List

-
+
- - - + + + - - + + - +
-
+
- + - + - - + + - item_price * $invoice->item_quantity; - // Calculate CGST and SGST - $cgst_amount = ($subtotal * $invoice->cgst) / 100; - $sgst_amount = ($subtotal * $invoice->sgst) / 100; - $total = $subtotal + $cgst_amount + $sgst_amount;?> - - - - - - - - - - - - - - - - + item_price * $invoice->item_quantity; + // Calculate CGST and SGST + $cgst_amount = ($subtotal * $invoice->cgst) / 100; + $sgst_amount = ($subtotal * $invoice->sgst) / 100; + $total = $subtotal + $cgst_amount + $sgst_amount; ?> + + + + + + + + + + + + + + + +
Invoice DateInvoice Date Invoice No Client NameProductProduct Rate Quantity Sub Total GST Total StatusE-Invoice NumberActionE-Invoice NumberAction
invoice_date_created)); ?> - invoice_url)){ ?> - - - invoice_number; ?> - invoice_url)){ ?> - - - client_name ?>item_name ?>item_price ?>item_quantity, 2 ,'.', ',' ) ?>status ?>e_invoice_number; ?> - - - -
invoice_date_created)); ?> + invoice_url)) { ?> + + + invoice_number; ?> + invoice_url)) { ?> + + + client_name ?>item_name ?>item_price ?>item_quantity, 2, '.', ',') ?>status ?>e_invoice_number; ?> + + + +
@@ -193,81 +203,305 @@ span.highlight {
- + + + + \ No newline at end of file diff --git a/public/new_assets/images/Print Preview.pdf b/public/new_assets/images/Print Preview.pdf new file mode 100644 index 0000000000000000000000000000000000000000..f90a55617bbafcce0028e72ddf1619eeb75ac000 GIT binary patch literal 403675 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%0A=YACsGwd9eBgna~b}S+z139~6vn-8pJz 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�$IzIYb1` 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%0DFs`ih648)vL`VdG5H$ z3=9l}At((x-0|L@3}mR}PR5_azrMYs3z}4ugHpa}$N8Py8jE40nW#yV$Pk$*wWW1N z^G5bFDrz4LO0*0`Kw0x}OS%{Y*>tE9cZRGf0x`_b$E!z;sR5l2>DL$=R%c{dC}0Uy zA0dea-$FHc`?Ahg2bR}ey)5AcOYl%ZDs}I%$Negok0aRkB_*nxBKy=Cwa?kYxV#rF^l4N&IcpT?#;LX02P%A@AY8a>EZ7t=12`m9lz7 zAE<)u_JP8bD=D=C+$V4D4VcIf9@%oZE4gvH>$9Swn-5i; zTe4mm$N9YINr8AKEaa3SR>XW{fAd+{6RUzG*LP|1pewsKs9f5c4q4G3QUW$Hm$%4@+|~PXf}r#7=0JWnqvOgp_S@NHL2eCpNz|{ ze}BZ|e=>f?MUKcCacwoQU5C*SK`k4gbv+%pn_u;xBuszn)(PXGdBZhVMJr);1r`Uy zPat9jM<O(D(y-R+Vvgb1hq5ihA`myHI{e!J zFcwn({nc9@N_aI-1(T`LE##8tpq2*?mFA25(!qeTd}VWb=g|U@$wM*vw=`Slo=amY|;LCgqr!|%oT0p1OFO5>`Tyl< zOITt9*|u6NN^Y)FaT9s_iTVsMUy!Pf!PX?xg)VS`k+Qb$JB0iU9sn1Aj!c~YMGRD9 z>1QB;1h*N^TWhoq#RoC^M@UqN*%D@qCt2B%Wde`&{CO|8Ca2AZ4!tC?SWzNMT(r>B zGbuZJ^e2ODRvH+|dZ5c*x^#fFEw0s4p*aeQ?>o8EQfqvZ4`iu*pbFr}ym{IpgV-qB zk0YWa&*&sU&GDzCenh5lEdKr%>9BKUW}$`4HBsXDUL>01$8A|%CJK_Y17l%&H&cCS*j)4hN zykay@5$Xzby3hw^`*!F6d_MTYvBx_dR*$dC0FQ*r-OF)Hj)!=-rOY5HB}Hdbc)QQ_ zI9I1ly2e4sdz6&itDE0t#Q81KheA5*yQ3T5b-r;cKpd=XzpvtQlB-KuS@-MaKS1m} ze8_sXiw@iA12SyEIgUyL$0n!D?Jh^NJG5&H?u<$s=-;=vWo&l8AOQ86)6@neOFOM- zdaB*u0J7ZO8xY#i((Z^vu46}-Lg#biT#t>sD~hJFE-^?7MoxfkH~dl3h> z)2)4LDmNV1cQ^DoEBacrN1mo6Esd$tHLVXsHw1p>RJ9-AbA1gX&#lCGsyPGx>1Ns5idXn zSfzeAHX^>kAgreI8*yekUX{!T(fBU`XP7zj*odQ3RV?C{&zl#8ga!k9(_L1NLO|=Z zLdQI_G1*?(7;ZCx!HFNa7U&q?fOu!s^dJfvZ=;>YR1Da$&J zx83bBrFt!vG0+=S|GZheP^n+ELu-TJJ2eAbr6zk0em|E z6V?;JH2_UJ`##8N<2vD})ux?EfswoKD03_iOuK32)$UWo6YBAtoWgIv$2o%6Syuf= zzwrIB2Py@n3s*G-7qWB~;A36=aJH9IFH`%yi{6x~T_Tfs^l0pv7Z_^Lb0<-3Vcf>+ zk2oj0e{uR07lZ!J4|~wffqJh(5l_32c;c2cuSYdA2w?`Z$C-UXTv(ekMs9i~c!-zJ+uLO}7! zxCt}&jGi~Xr_h^|^bcd%H(#gDd)%qKqeZ0~NVL|hfr$U=LSn2`qShZBms-D9-O72f zRg#SB*}@}DqWbLgAji%$zF|$`EwlOj43m6!O40?-OIcZ$?c*0zrrY<>+X_4SY{zTb z3EZ>VJoLxS+qWO(*|s%wzIQ~YzF(^uW+POI_u_%I-9l_Qn%Lj{j;o*RBs<%qZJ=#z zNYxJOsuP`S1^`kDx$(eRQvz;Se$HgViR44-jbbj2O_rW49paOJ_pYJ2c^&)#dEC8r zk%-9Re`OxlHnd*enHv%7AP(!K?+@~8+wa{~hNIZD6CSx&>)cR+GWGZ^(bP!8t+y@e zi~yp5%P11?b3=LGbI)AU?WaNy=m&vdwi<^E^7|)G#s}8$haQlzVM5-@!Yd*Zizva045I7UuZPDx5kZK>;eDU&yJJ5>zZtp-E_4$~ znomShLsfomIIV`@WB74G5LyVqYLYQJZ%9liJCGQf7JDPsBi_d$?G$3{^@uJMka-pkC+zr`k#ua(0278GO;vK%Gw8M=5xZ1eo|$m&;g^A zK@_g_Y|rp-QJqt|?{5s!jOehmi_Pn^nqS3)V9513TA?E+FHL%WV9xIJ_O2Vt2Pk}> zZY9-vy-Way2lgThw!Yn=mzIaEW|Rgh2>=yTyu+Js*YSH`PQgDQehHicZgtLAjjP6; zZtApYOt~N5nN}2Gnq(@J1|S8e^+*5yor_&@UfriN0bM~c^E<+R_;+!Bl>w?A4m3^> zqsWJTu1g0|S4)tJ_F&FLcd^vdEdc~!4=FC~Nh)%j{%F4><5|ot2rgXnM&`eJA zk#vG~c;B)5$`t4PYVD#nwmC>`L%gT*xyBH{PkuI8O)y@0*1?5&Uz|)vxrrnUjJkYg^6%`a%Qa}oipFO)2{_KEwnX+x3g z6h$l4xREelyVg%rGl`lNAY?WlBgaBpzAO3Nkm193rs@ci?#lf-0yRh_AHkud zxoLy3eBJLfDY=>l%_ZQk+*X2ie|Y!JRZVgewYdrC0mAvR5GKd9%lFA!rl^>&cwZy38aINlOh*z)p7Er zpm9f8x9JC5OeY!L$HneJ^U5aR8fr*wr;e*JFJDl!c)RN^u1mw-AoG3FE($Ct$Mk~- zlX6v84QOwf{CYfFPH>pT^{9Vi$KZ{kZ0Jln4?_62Yu_F-g@$VR852({&%eU@2l&TM zkbWnqf*!`1`@)@o_gJp|MyX>lr%ynvd1MSWSvZKn=wkK2tkDl+3HNfP^uXc^86%p$ zxhhP|SzDhuZRX62WG@VHfA{l3*E6t1PP;eaq6LP(h1GynB&&wnS7c*_#=n{dZ5Vt? zxHqm}7YOVTe%=g*9%s|qZ@tw*9yIKzOukoo1pb9$X1D~lz>z05<#$jaLb;@9M( zo8DXv3JsNuYUY#a<`gq*`E2~4l9RO-1tN+=Z9W8ixU{sC*+g~XanY~iea(};m`4f! zMeD1?#Gnz?ZSJ@Kxd*XcOWZ{kd}?}s#Sr+MgE`)PlkII|KX@k=j2H(IiDCdpU_^V< z{+=Ge>+IjpD!*r{bKt%rcV8A1a%^lYYb_w9AXHk}(eOGumB75bpkq+cZ}rrj64Vuh zwHCOJ@HdPm-+LvX(J=mbrT!C#ra(eZXfmSuvouJ>u!ya<%Gl<6O~Rlv90<4h;A>eNUFLD^u zcVkogPJX=#(wQ!gglOCV$&vdz))`fFSPNB+q!4Dcy4o)$U}}u9r-_!b9KE{ee&+{z zMR|+a(4oYP`OlT5jP<*UYg-Yn6S zg@-(IhCpTpg?A7SjB@!IwVE6kTVhh~Tr`;{`032db!e9WBdPLyb>YbAIMN}a$%P9S zvNue1v}SJd)&%{BTCC>`_t6}4U&l1g&RKxt;ZZ?_X=Y=;{#I$-*E=G>Lo{48Lu+7Z zd-r>6Ei^UZIkB4+NLs3V*}N2gVNIt!`WH1SpzQ2S=T2)@3GM|9LJ7^_|NNnzKB4`- z;p0q}<+oi!^neNk-sU~{+;5{dM}^D2(#@u}tMe&}9eS#%ao-yC?+;_YoneDu<6POT zIQ>jJ^f7ESCct@C&$fBHO3Qz1oPGJ%+vM*@w@A1;=@2vkswN|&7eu?l{=nQ#9zx?a3^*RKX8L$zZXI0TRiA%e`laKWvA_q>gdl_u=VAB!qTFc>DJ6GDte zS)aUVp@|oC=li#p_j9?E!1)rH zlYgY8xV#>`Pj*5;lC)EQ{^26bIf+le!eEEG!Rgd8Abv-6y4=Ud^GdDm4p&24bw8zD zw@9824_gj^p!B>esD!PuU(PD(@i@cS7x|ZG)=L`vu1-}ny@!t_^)s~3Blvy(^y!T0 z(@P3Y&L6@OB3$NlDX-Qp9AaFpaqrP1UuqY*vu&2ft4)ttzvo69&>YjRFU~LRmD0i4 z_0-mOd2AUzo?zrGCIaXUpj`_WYtB1SuKr9HbB;4L_iod;@+6KcbIzxCO#4hc=8oS0 zokK7mXJRtQ=t@N}WWzyN+M&8bXue zKVFuY3>y~DfzEC&=vb&2GSA!FF89o>BZgb1ZRB!ffyTnFf&QrVw~N{}qPK;|f=-LkT> zzlfOJ+;&_sv<@FSuyN;!oFC_n1!c0pmj<*P~HPlY9U=Be*c(DkqxCLo`V!akbdb58boQWQ_ArNB_q|t^1nX3=uK}cG7>Pa7bLKZ;P=dm&lgUTBqE7Z+w(QmE`4hOEHZHUc z*q*j&MRA|lO4P6vxvLxxQ61@W$R5}W)B-gMJPyZl*r9f-hzxM9Og4_nRhm|MblSIg z5VZ(OQYQqc8-%ER`SdA0EzNG?#B(Q4URAu%(UYPlkk*n;m2M2|$77Pp+S=Eryg21| zoY&eN1ANA247PsD^T*U3*77&Su4rtjIRBS+p-@sOIdv-HMVw3O@`lO}w4)U2kgv>~ zGJPC;|F&)0=xqYsw$%aSm>q;q1Ukvzy$l^D{cy9S*a=n+%F%gY>dNKa5xPj`-e}JU zcFY-nUc&`^PL)b7QbLHje%a4S_uIO?Of-l`ax-R(RIJ^KblK!NB_ecEY+sX4VnifV z)1d-QA0%>$(_513^zl2w4@*PCiu}Z})yP+vw)wA84!yCM5fOjywIn1Ymt=&aYtrZ# z%~@Mp$%ko==z!zw+^t);s{q11d(LomrR!kQ@nN+cjbWCtbn)A z2rvn3#`S~HhM2qiu3O#@?9bLisR(RZDmOV5oj|ZUfo4ygi)vBe_Q3zl%xq=S-QL7+ zqMj5#w>S+xvGNX^sScAKuE@Z2R8XqzqfGCx1zj!5e6)+<-vm6csU1rtu9vs&w?{6i)FLv0E&tu??by-j%Zd#%-s0%ydp zk@9J+So?<`6!^3s0yl_C%5cZ|&mNR3EqdTuvUUBQI5Rv{bFV^zy!998g>I@PO-fr@&wr@e*$gWL8`XCIL5cD`GHF4N zAyO)mzRo!b<@UukLXxz@dc(OO+3k(dHkx!5!^DV&rYFyw8Cz@RDIgKfK)$hK!&R7v z#4w4b)Ndo}|1vm!fvcfzBJ6C^-py-eT>tx$5sJ!weeBp$Y4#svZcC-%|Mc9^AM?HD z)5(@l{C;*}M-fQWY9Feid>@RyC$bvyn5obGgn=5Yk`W^c~9YGgGf9yl(TPj{;mWucOZ2{WVat(gC zERd0u58Jf6N8@b?|%H`G3edu}y*k z&UiV-A#%i&cJUAC<3s8U9&051vnW)8F>xKC^PT$<<)8;}5+pOpFa2%aR@Heo6PByQ z+Bsv{JOKI`~yNHkP353B^X_lP9zYJEEPC7j+>Pc zYw38stct)Egb@gEPP0mPfOaJ4@Jcop2ROSeUb3VeI zM~ID?UFY9MeZz485Jn70IZ0^%++uy-$6$gyg_DJ9xF=K z?N$A!nqoLG7~-z8eHPt=b4ct_1v-s{8YRchfJm7Q7W(TEfi+XAv!FT|fgzqL2ck0A zDwMOJW4JkWf5*Folb3*^u&Yb3Png#^$Kmd1qH8J(&>0?`crcYv`tW6=yH2fJWwEE{ zK0Nei%rG}Ky*X9rh`R&xScHssj)WdN6}tq3Sv6Hv${Se~nDjyG={&iB7=zmTB#Xtb;K<=mz7IXIf?W3e{Qc+84;lxu&>llLnC|0rC#59u z0++AQ(VhP-Ql-v(AUnTtF*py=JyB}9t3L@1P#0lf;i*Km~vmB_LSTP2zi zhOb_|qMZ;6H*TXH-Kk#y=eW8mtEr*8oH}dPp@@iUrGK`*->xu{PdIdUS7X!d#sN#S zEd^aXrO!*3PSn^&l{I0X(72AiCUu2BTojsr{$NFtL)C?Y9#gV4HDekj0@03>1Flmk zwe!QyMF_6bzZaOx;K76S_33G3WYsa}xY)jJqXji{t~kNIdiCJm5QA!?^6xMg zq?K$W&)x|Yz3RJ~PF{q<9(3|W! z!I4tsJh;!{!-s2VZ1(A&HpAf2>hMn4OSgx;egB@i$5Qk(h`vX^DD8|G9+5R8=|)4) zZ{LvHkL#o(=P%CFq=c(r*d0J|0iB+ow;xmvRf|!)-mzbW)p;gc$>cX~Y#?&S>BY)F zB56P%!OYH_8FZ(s|GWKEhm*bgsgap>>(eKD(W6vMY^iiTHGS0Z;rh`IAC9WWZe1V% z(Ja8%lE6Ur80;$Y)bnLwvDVAS09tYRk@9VO;JaU{k7y`+n$?azI_bocZDak`tic2G z^4YU~P&Cy6n{PG@VLItm#S(;@5gKn@>Ah`#Ky`QHzl}lLR;+N=Rz%f%h(ShLPWz6$ zyj=m7l>_=DZhY9^w~y&*@FW}%R zy*(hFci~DY*NIRs9V4maJHTmQqi?3_P%w{7F&20Rgfz!4{qcGsa<5Q>DXnr;MQGU23tuY&9f&te|LXEzs@49I zbSc-538nn52PnzOTUj!bqWARneud+2B%CL&K|F?6Q8Ry^R+gyv8@;@lm-m!H?rFw^ z!VBbBSuCG<^R}&8dqkkk zBm(ARc}xI)y1Spv+35E>wf1VS=y5Sky?YP> zP?;faQzXT1K$Q0zvXU`LNPUr}BFrq)XHsQ)ZefjgLNgu1@>tlrcJVfGfBkjz-lk)- zUJXr#IT06kq1mTHm!h|u|P)k_840h%1 ztkXmS%;YpGuz7B9d-YW-}5qarLcqai*NwhW!ApEkKpzHVtg7Grg6tx7DF0*s5h zyyU4#-A8kgbiPWy+2ke)$lA%uZa{n)6Z6(^mnOIn?+6G@&;iVrWK2x=agT9$`^II( zTA261jFcz3&zjZ8>rc)t&y^sH;7b%om}Ujq<}ZeH@CBSlOfZ6Xl|axD?~gP$Pn6R+G{lioAsRk&mGwoE6B`@4&sRadF6WLM!Bj#2 z`FL^=s}uVPpM~P%b@S~@#;*)N_Ss$QP_@T^CA2xG&w}mkS>v3AiO$nqUFkw+>tnI? zUBjc9F3}t%!uX>NA|i4Jhf^EGXw$^+M1u!B2ASCeRDN6de5B0LGZMnZLHac1EeyB|N* zo%O~^IQI_g*Y6sX!>d=Xu3p`IGavM&TV>bG^kEvx+2h3>Y@ZyJ*o@5{NW1R+7n7mPtOHl{Z7tdFToY&WT3xwAJK~q-VLBs8G&bRgG1=C%{j-U? zhi=HIUh~{(?rFjP0_8Jz3eqI!;3?6&@<%O<%dt8hfJG`S14JeZD)Vkq2fuINdeJRp zql!-_P`tD@dVzaz}yYJH>`Jtjet?)v_Sv^hMSYq{zJHt z{9nd#PlcC8qkw-2LqTOIr4yITvwHQp3m1--MJwr2qSm{2Z$R4agJy5!^ru4C zH0DWZZDs*s(aWe0$dzF6&ky|6pK44Q=W4)IFpu3c<}@5KA~vd{mR z8(X>%u92Vc@j1o`-DN!whc+Cdyojp1;q61u>@!Q*m|hT#%^iI6uFz0)5ief8BsoBuU<$Pm2Rxs|-TCpJV)E&jR1 zzQe+sHbf&_$e0X)6_)4*a(eyJtCR>#M#v`TOE7r`t~u{^0rpCPA;MO z;I^5gPi&cEQ)S(;U0YIl4xq$`gN;vqSVjF0Mi-pKoxj{D`?-$sW}byNZ5O^_MNRya zbUz&Sva;4cKfe^8RZ+5<0xMJ|}~g3m%%je^ZJ_^?T`Kx+C{e@qR%e@d~R6 z7^fdUPVQSeZ7h8|4;(u5_2Wluim5X+{k~VFrVxoCbv(w#Ke^pKPpOU{Fmd4C>mH;Eh|nv)`@;P|zOk7Zaoz$l6&k&aez2`xD%~}-vy+fy)RbCAZ;?4xPfRD+ zUix0>Xz?N0e*LHBuY}aJ=WNC8ciBuT9HUi0IT$CAIM*#S>XY>3g8bYYoDBR99w;qC!FQBhZ4PE?(w^k`s|WXd@=*VC2-a@vpH>X9@rx+RMEmNxm} zA}=pNk^$bAI0LM<#_C2~_r_vv*Xgl;?OflYujWwQwyj1_U*B`-gX#uL*dkk@suxQjwzTRGL9s^>8r#ssYb<4cFrPKWh zM~)sXgX>}GaGtDuz4Ue$JogZCW3=b&XPH^=E`` z?yp=$$Gn$(J~G@(#P1d(yD12^DO%*~01)xM@o zHZY0ozOUy`rItF18bOZj?(UmVb|j%e#XoQbwS0Y|+c!A?CFUlt55b!T90a(9UW(AA z)K}xxAM~4pAHx!^Cy#>0Hx-rz%Ki*DumS!!D^?8NAgr1xFSE2R1Bcb>CXLl6 zr9aKgzyJ(G9~ibQnUUuf&=r=pi*HX#k|dTLAU!beU3fqCR>PmIQ4&q%g%>5y(2Sup zF#BzI(YXHy+wWZ$EL=#0vKN6WQ%Xt`Q!AT3gO+l0?rJ{L2XP_51@;DN*YDQh?4i8j zW7J=fM;t$K0#dDWeCR`aY+4}4IZrXZM~AS~&7`k>U^ET+I6lcaC$>+{1>PQzv_6DY zjRt_|?Fq_cN6VpPUv-u9{m*yX9gYh#+cbXkhH)1?^!>@T(FM~WoLZCkICJScW6fj{ zlj}^_Kgz#)r{DP%y%>bnUT^41xBE}Bc_u;#zlL?j1+3J+#B5NHi z!Lw&7A~^OZq!HdG@7pVl-{Yu)SpmowN`6l8J0C2ekr3}iJU?qS3mEBaLP7!^or`C+ zt1zzLRE=dVQl6D-*Xqq$%h8gXy9nHiJB$4L$gb@$_gvq5cJJ2lOBit@-TYzuvtm8=;pA(3{XSV(3ye>7PIG6Cfx?Qgg$qAiuv`j%eb?2B~hY zGSp{acK~(VjZuQvD-}mIoR9seg9xeymkLlI-SXWlqaWnt=;C(Vd}{4$59dKZ$EHGY%lHH|rw z3gQNI->ID3Rv|xs=+$p`2THark9$3;)1_r~4>}L|v;LOlxAosV)?BGN^lQPI?)56p zm|Tse)fQ*E`BU+Ndj}NM)Gp#}@NU6`usjo;B60qWZ)vmF;u%Lc%FV?NoXxk`PUwqbNeFz~9L(4VI zp2{r_m^ytricc-I?(+326BLZ@fO8BR)}uapPxa9jM>;YV?j6@!AX8*u7fO%nC_u(_bAZg*_Kl(0 z38GVXN_CL$VC}v+Ah=Vt(NN84-KvfHCy3_0t_TSbI+7Ej_#d8XH>4cV11Md+$|e1K zJ?~OElRpV8Z4A+nOoT6BRPr*Q<2T7vFIo@hV_7GAS&= zJojd`t5+Gv=kiPg<$U>$-~BdycEcRy#h-EJ^((K42FyI0cKY-xlJyPgO7$vRO|v^_ zHqSb1Ly*Lf=8IR1X%rmzK$^&WHn-|C~F0nmF)7Vbyb${VQXujSTlIzp?&X zx7=;I^Gk8mAtx{_t{fWfgr0x@1ps>5@tI~>qPH`rY_S+6*@Re!cO`X0h;UOj|75uK zj);W`+1Z;wQ*mZO#8+(8WmdItl9~H%e<4nrK5&)f8K?r7$>{JEZ#PORzI-A1U+(A_ zW~K4ws`=&rVKu!R)cQ&ar(#(|QjKy?_9-Tag48u1T9s29DDmtOY%bj>mzEIU=+M7= z_@-W7{$FN(Nma9BQ;N)K>R7EX^e^_Pv+Vlo{Mvu*Rx23> zVll7HS9UqRYP4?oyIu-sWLkF3kAXe-%r2GN__h3L&17NMZI-nd2RzU$VQ~ADc4RgO@ia+;g|knEe~&W&e5Jq1`r1w{f49WuUU$|g4|K^xII!+0 zu@!|$u$}vWonpwp|F2EZM8oJ;7grmN9^I#2<+IhlW=f&a5WX|Jr{R8uH?}QLTkbBY zL@%`Jvdj7Z^3eXpV%_f>r|)QJT0g39g&Uhbs*CO%17UPAd?!AoRAhypU(vhT1BMUk zRpXXpnEvWj07Yy0;x_Mfmv?EM{ni-{zEWdEbCCYGM;0F)$S0qC@i2Ay9VKDw9X4$F z#*~qje|B(SKe`dHnmRcK5w9C?iGiXkanBnav=xm<7yf3r6@u>v-F`n~=FFr3QX~#s zC^m2@_sU0#XHU6ghvANe(~Lhn^5_ZUt24mq4m2+rbFX`mnA)tX*~6{$R!K%+c}o69 zjvjvd#+56|trQgW*i6Id!ZQcJq(tX@qG4S3zduyr(u3O1A~866$e54&$O4PRfXa!Y zMM0zH600~%(8FvANEsR92wk~1GIFewgluvqnk+DZ^jFanzY&)QRzBFVTKSb_g&WvV zvfp5-2@@X%q`cc`^|^Ly7x~s6Nc$a9RwQMN46#8$cLumbR#w*R$*$DJ`_r>_)E9%} zU~a;(7t?o9!}OP8zj)if$*cgy$WpuX9re4eYN5X_9rUt73)8l^_~%A#dfl=xsq#(rb#>I{4jne^(clA{R}+5F0pe(C>g-Evpb3N}(k>TMF z2}kH%RbH3YRC3`IKoR)MdYVXnS#x$n^W6luGw07UHP?VDY2`A{q-X6U3lJwNow3sK znK!RpqeG`s^C3W;RB8asCqA?P6#6JKU@Gf@x&q=*r&on~5~rFApL2mN&z-Bm7x%>M zY=?(Qi2>(G(D0?Jd3`iBFRw$j1?3AEOFk(ovbiy*?c;)sfceXoS%82L$Xs1?{9Ea& zEE~-%z##1WK$?m@2F0G3QD4^AKN2nhG(c$12JxV`kZb6d_0cT^V<5=OFg_}iHUKjs z{lIa+lu9oDO<)T>di(`I&EQVX_PAM&ZIw0GpXc>;wBGH}17f86affoZXZ>o0riO?` z(abM8HNg8~Hn7(#(AuUKVG z*ZR=V(2|nr!E@XBXg=(zrIk!djE1bXre=(!@Fn98GefYmGt+KzqeXF|=XzA8;N)zc zwAlk~bRz|HJ2SK7^=nabt$CwD{Ox;rd0YR8uSThUaWkAfaaVfNScU-Nhf-t&-JbqM zS#4@E0B{N3>ieuhiTo2JN4oD4EA z7~6eZ;C~{7f`aDX@58ybtIh65ofw3hANKofUYM6D44Ii=ug7}Z`P$1f?!;zImRn^d z0ZFHyQEsgR2W`er`xU1POO4Vnk_OxtoNkyTl^J3`3I>^Z=~CqD?T^2UdRE)0(dA1) zfh}A>+3bzBh09r^moHPJ=Qvk2DE5wT4k!$oT)K0?Vg?1ITp|HyW!#ImRNtf`Q{0H| z){j&Qc+quGk1h4ZP%qh+FPr+uKT`jBFaF*=#|N(i&3-L)G>kTU{_4Y$u>oaKdwSLF zD10pr$TUc=()7W}1)_t4?eeM*a?g(M-m@p^ZM4*VDgdY`WH5Cs2Y^+Mk+tyKdwq|G zrEar(|1%L*y%&_4kg_FuI5P>CE58rwIGkFZv z60A^#v#F%Nl>U*dR8d+~SrC`h$E-0wtLJFTox}A;0iTndQrT3slK|b<6!Ty+3`$TG|6R*xQ>2HjUC#KVtA#9z^IMkIcc8bOD2$P13Ur zl}*ci@nR!^DO)A@kN6~giN>ibuJrReGPj0u2!N|xxo?W)vW(apA+pZnd*I|18!J^!Z?4I8cWEtDU9&4tuk%1zR#*^Zs#kJix zS8vI4^)M?1Nv7rt;{vQ#$*2!(ZamSqUE>4g(dRXFbr*1!13l=kR@8r{Sa4&Oj$+5r z>d6U-B89&Mr!5XLip4R|Vj~O+hyhR#4^$rUV7jhlg4#2epLH8Kf4Ger z>&oIG6Szp0<253*< zM7{m|qAIGoV{<{XVt4mTd>B4TL@azTL$!CUOYFDTQ7cEz!%zH#9=?>l!b=n?kY zwCO8nP{G2H4tQ}1EDos9sBo`bQ()W;+$^KHP9HqD;;M*+g=%4%g#}@8D9OwO2GW>* z-!oi)`Jv?rOp{B8SmCG}VB{^NbsT_Vs&6Qj=vLo66FUyJTb*N zLUGf$RL0@Km;)Z{4G6e??OOMaogPlM-{Gt(e`!Bd8IgIk;g+*7H1&HNdOFXtyP8%o z3z!?9fCa+LNvG;XT+`2YJyMqqA3D?k2VU^> zf}(Cl&&)a70C@o6kM^Cj(stHWCb$T!`x{BiL6c_O6Ya+-n{+2EE;Hj^zr`%ZMAv@#Ub@GWUH50M*ooxe6jr(Dra1%}m zLZfhU&$)Xq$+tmf^N4WTm?ILk91?z=jVym3DS{`!TA-jn8<_0djn39QBw^Iw+UFYy zW#FJhvyyw~iyfmv2!1q+K@8A&cog0dR=iW;G~=6ec%tinPuH6Cs-IP*ndDH;a%eZc zf;1@S$e$AfpE9thT~w_wXpuUWmnI~@^_#k%@d33Y;>E?aUgx1JIX3wU3F!UH>)+Sy zem%NTvxUWnaagR&q9qS_$ZUJTM$E}6V}79ia9;lcxVVK2XEax9(~R@CSbteoXOcUl zFL3ky4L#^Bn=UjRRz&-$S@Updo=0}J z5EK)3=a7`(k-!_LJqQiKG_ZXl4fjg*@+EJpj_tH@Uw9*EFwlmP62*9(e(k;FG%*?; z`DsxRZ7j*LvG0uS`nhkME*A!z*1a+~t1Y)08QIX#FhO5`SaGLS-eS|WZxtO9c{T*I zx>v)^e@1PuE`AQ6j2i^BIa^d^`|i9S=V`m;s7nqAyfFwh@yDPfr(y zdO~T77+6d0VmI{emSq`g406EVawt(SG4bf8^N9^s# z?EV`95*m~l#Yn$;O{lAMSXzS*+hx`q(nQo5(wmE0x~-E3c}+#pNK|>_*K*?du~jy~ zjdxt!cHbU1N^EU7^;C31Wsd^~53&SU7v~n=7!O^{Z1iW(dVSh_@mpoF=5B|qPw3?fGLrpQx1Gbt0vDq_#W^!e|ivhG;f|g%MP+NUwu6jJw+pdf|`kR zr`4OrrlzoG8Y4-fNh;YRLgx&_eXqY;7(CW?%9QMZbuX*~&36ST8-*+gTNopWpKPX; zb+}3;`;*vW|7gPvN56iaZu6{HQO&{ucPIUA)aOj6`1VJ%kWqnea}{QhsXA7j4$jNJ zwvdUH#Opv^E-pN27{uUj~Q3!WTsKNkqV^76YC-|+ItpE%l?j37V1TSPaf zo@)6@Mla%KXpx{>!d*Nmv;v1w8@MQ)*E%Qi0sc~zc=r6vW^Tc_f#Pp!x2QqxvFkbza zF2fARVDz+U(}TP`Kelc78k>7n`Q8rfvMZ~eXwlYI>ZGjkb>YbC8K)bQR=^)|R#@bv ztsVO~nL!`{H%A>@5tTb(e4L+s;_jPHWyr}%TTm9bZU3vZ!-Z}M@4|LhTfE*nOw($< znNosM$By_IC=@qE1WAN8ZPY%X9FI31XP3ezH4@X#?00zL=XFLUNNJ6?0H-N$z8s-t ztu)$(R6Xq2v5%#tXbt0J7yaGu{ME{E3y!T$bOOPS7u;Sdx>xRSN+RNzKtq+uz{HR8 z@8zqK&xvANe(=#8rf_fh$sW8cj_r*4LiepX)lp(^Wc()aUc-%;IOyB7=f$ z{Kd#fN!kiD=I2Z9ZFezsnxw&`yAB;Xuzf45s|$T^G!L34E26=afNFK;@vwZ4nq8e+^9w+#Q_C&B7G4n0BGJTI?NS#hu*!@H@q>v@Lf>o!uMgY#Nm`bnr{8WJUGN< z^E`D-Yur-$MP!fj1#fi=y7t1V=dYdMoax9hPy1h&_Qo=yH}iGI(I1xGvroSH{O(=o zi4$_Vxw>s%>-2EU`ws&n9~NVk@!$crAG6i$)0f0w@ zwAWw#OSw*W^oj2B2N;aMJEW>1b$IpV-!ByE26JJ&YNvg6aH<*sslX|2F?}#l;2QwV zDJG1QKg_V$KmM50u*h**j8Y$l+||6i5)7_CeFNbA{$MDW@rrV*Q(I!&t#1Ij2Ek6J zQ_-*St3}0ux7ocb9jK?K**2YVY1Jx;>nJHXaXru5Oi~)4e!)p!`_4GcZXHls^yt}> zAqo13M8B`wUun}*0%cPujN*Zu@CBV!kQcsw%{0&tz6Q_617-% z#l_5IF*P;aH!3x%dF90?cgt5X&Nhv>0p~c^H}&*ok={LYB*w-!_e8!Z0Cj#@I*PO@Q04i9#oMI&I$cRoS9NK^|0O@Isi0h1B*#?umzu;w#AQ z(4#H&eK){tjMPDaN4leXesV%@IIi@=!C_jqZQ$2PZ*`ayTwB^s+oW}y(SsXw>s(Li zRJB#;AFm{Uy|H5bmAUGzy1_d%zj}9 zD+>=s{2v|+pQ^}>cKH2q3$l3F3W{(HQ%s}|_WL#Kbe$gFn~|S96rMx@vQPNI;mbPk zhjv_jj5-wAv>q~*3-3!cr4Hc`Fba?)!VezS+rtuV%@yV=$y8J{Izm)!a_>>6YX!5T z!15J-@L_LLHgYRrQM8u_1%>Vr`>(lX&{3vxnk(4BrSgORuASLtF$(|bZM2mK%@LmD z?;pH9=KsyZ{9hi^Ley&OQIMPmTwKYFEyU^YBhfa!zL|CyrO+P!3AxMqv#+{V5L%A-n zu75T~*bO!Rws&UxtqO(9mk2Id4CLG)iwFuf{{B4)FCiim&Oe=vJR^eiGWXMe==ZlXBRG?w=hsMrjD7*MbP1C4~(do|uZ!nxU2yXQ>5(J;Ci_`d$+OX2%&R*-muYtg>U(ebhFzB2$fk2OrOn3g64# zXmxA&kLIbv_j#H(H%~p=6mjg>A_Sx8!k(w;^}X5Y4>*41`9m6;b*pvPj0rUV3hdOS z-*{>WTk%-yg9k3a@dF#CUcRicS1Y4z#;dH#PoKI7+~BKZbaVy(u$t?-xwjNirNQ)P z-8^7ZF)1;1?BvN#z~mTF0yqa{{VBu@;dQ^F%%BRtm3b!P@vG#0d$s^=U~9^;Ju7$8 zfPS9+Ug**VZX8 zR#f%Bb(P8o2EivN2#+nD-VJccu0})Jl*MNo#LJ3cU7&r}u3S0YOhR&j&C^TjJ17H# zr^yCS=H0))j5Lh;lL{H8Y^bBCZQWhXR2kp^wn_GRy5r-niI~Po34)vk?{83NN;d=? z_q^EdQ3Q!`w-1=z3b&Iu;*CfRP_VA*)r}S_tuQ06F9R8*hzdPUSWx#`9Y6ZBGe4iY zBfiU%nq3+vv0V=hb>YP(91l9E=B8NoRDNe&^aruO*qoi}sIF1Bg9bWh zgEpgTAqBy6Y^;3s*Yi{FHmppM&6(+P;%lQ1NH`!N+vU&cM}kzQSC2pj;Me#*66><1 z_7H8;2Zwg<+7(!4G9!c6RVy}#Tq-aSkB)9ZHJp0jvY^dqhJ3?`zsS*Xj^T*zU8|$(`|N$DA#47d6Oiqb@Z;;$ z5#Jr3Jm9UP$V8uIQPBI49vJes&rvFV_n!n@y^=-v-Qk(Pq4()I!?qL~JPEc8jwoaq4J}KvzX4VMb2kW9k#aqCAuyF!>O&FE$;z-=$~p2(vmavL;tU7en(C=@(n%wD$G= zbxE|}0WSco?gO~*h}7WFeUEd7(bSfvO!2-Pz1+5KHlK5PKO3Oo_Spg5I+xF{<5)mh zLyq_0>cRn-$rwzWNLQ7vq2cv}goK+nPo6w|s;9e3R*r2$en9WEU*cTBKZmW*^y5d& z32pZucH?Ib7*`>c8qlZ$cIvS}+fj8%Cy(P8VvQd=_Ht^f`P^Lwk7A@kPaA!g>$&l6 z9o!6*Xark9i9p@)3ZuhP)!{EM_Z$y6ec|j`M=bn#i5AQ5uayi=)+p^gHP5!ZxBt;Q zb;T|d2pf~6ks0GA7g)ag>9|7n1c4Qc8v{C_1)X7U2BLbNCM`3sKVz+Oh?f)im^T+jLI1K zAG49L?M^@PNcpNibtm2?H6V77J|Km(n?l(7BL2S7_vN_4i7doe`l|lk)efHS?z}d2 zy5|{H2pVG2{Nof2PU}vV`+k^X&E$g}D=@&!0sBMaPr+{fPphxzypqRn`EbND`CQ3I zAnO#Y-j=j}6g`9#9!uBFAi?zOe5^Bj9W*cbgi=rASzc7auzLb|2A;;i@E+~mizW?m zo$gnJms<)VTqp)Y8<;kk@!89^R_PXJTF5ef=skF3|Niz4gi_TRkmL(Iqv7J3??a8i%$eX{3vf1wAASd7mn z#Uo~gcDMv0cZa*$Fng75&iEl$ZJ+D8RP5nML47;|pOj(4W(-x1I(jsAjkUM&-&2(g zn^azg#XSB>PYZAxemnHpo?TGlc*9s|9}#-kw|y<=!(qDVQk(TvX5pE*?o2?TpX(=Q zKk89D(}230XwhzLHNZYO8^8)h${JoNy%Mvp>f5wmq@N0JP3xL~5U0Hn!_r>&{NxBK z&wW5`d%Lza4DXiReR1<~?wl{hrSN`kE-8{Htreo>Qy$Ily3tg9+caB)gF!)7GiMUM z-|(x=W8WcZnAUSzcH%D2fbws*AdQh6cpNnBB7Z;!16^ixWE&Y}o;%n1(<#sD=R3QG zm)orE)GsD2sB4{cC?mT13>aX<<^l>Oop>SEr^of_Q-JboJVTD@_3a%Yug@XhUyoB!vFAL)jFTG@sY<&-Av;5FIYr`LJ=8P zgHsm|hH0;FYidxQ?{c3Ry{UNRU!nuP{rbsgp&Xm#YHp_J=l%ndcDCU|okw!!KN4Nn zGWeWAoU>v;pFXqoEY6rzw)BO^V;_-T0Bw;6+~4!|?b{9!gJ;BrGkLayl9E!>$bkdt z6{TZ#4Mnl^Sl@UbQ{$w9SIPHLctU*hPjk&XM`G6b{DS&x01XP^XUS=*6#nz2_GXF>bwXQ0x6P=?xF|@8*AP^AJ zX0({M*RoMEn``P2376*A+*rZ8r9>_0)n|03iGm5rmi(Q!cuPZuxI*bldwSlTTm9FZ zVS0;Frx_12f0B&*Fw`u#FwKJYqcjYa#?grdBli9K{O2osOq!7TZgggBQm0SLc1!3d z=4njL8xrHz`RFGHl4=sI5jr|73H$~gm;PwYRkm&|{FCGjn5m?=xYK*9>Ac5yFd#(F z=^Sq8)r+2aU+<)-hm@|hO}c5-x`)R5{M~L| zJz=Ifz~EN-XJEELKkHp?ukUjH`s5IEboPgYJpLxX&4L5gb^0X^Isl;&|Ikv~Ci@Ba__Jpdm=i{) zmegTGVM&Z`X4yX5*H&t_p-Y-6L~a`&@~Ym|8Fop9w@+siiz z;&qlAV+^`H+-E#2aO8*r{kP?2IxqA0FKqp(rHe%4uz#G*!CG-Wp^NQKyrZ4#lzxZQ z9kbd|I{-uRU2k1}7z!CFLkonnjxG#hSN*nAziEEpEj3X1a!7-HY-_f>0SFN=_noc`-CVc;TNen}FYvx$id$$OYfTORY5#<)XLrxQPn znv`0$e_#5SC^mSERdk5u@#PQRf5q#S{yZk(E{Ptozvr*%PSZpBPZgcEx|1mMAdHgy z#BJ9FFlhDa2X#N^Sp?V8!i=0ij4^5Wd#iU1R@Z+{&8{QSp^sZo4+R9o9sEnrXvN#? ze0!le%x)-(DB2cc>&68pxR9CBy@Y~c*Y4e`7Fq8?T()}t(B_z#O~YCqR(8ys7iT#% z!>{ije+o!UDbf}Wd>WHt?e6FQxw)-l1n564LFbc`r=RZYdre8u;KndW$)ip>n`ln9 ze-@*hojcJHI6J@Q6rDJ6-cZM(DrqqsRK%{VyLV&W{MD^#UNzDeCks?bWLsf}4xzyc zF>Pg(_ap9rwHE%4L=zf?uyv9;**}`==2Z62kUA5|2{8+Err2?*tE>O#g{9aiuQ+n- z*j|5s+FX=;duey+x1C4E)Ks|qGd?Cyg5t|^%4$&wUAlakW_X+CsD4fn5wA8BoVevS z8MwEfs%rd~C7G)XPAUv~8e%u}72QNLXLd3)d*U0AF#h|xwHP^*g%Y-{54QTD=l|#^ zPsQ1@x|nGrOv^rr=bd5Fvs(Gb5#yA3C0yB@MT>&FUUHHbjqbwfY=hdDMj#V>t{;@{ z@lAd&mC^#*SbDD$Az6d>0QG>lc_NgwL&4MJZk;*>(<@3!#gKKG$?zHag~>QLMvhqY z2k3w-KUp}MKR-QoyutwoRRLMCBfZ?OtivRs|gQm#2pnbeMOh`@fzB10$DRmgMm z?P>X9Q*+8dta9*S$BT(*Vq#$B`w#mdfVfaI$x;on4fYT<(zS+miqhOqK-N^Ac~Sbo z&wUfOskK&?nhD+*dGIhE9(Omn9h(o@CqS{$#zuHY=UFgUxM71tjs@QI$-Vd9s&ktE z*F7(9FE1D*f$3AUU3KSm^1c@4ldOZ>lr}m%@tNGp^xS}0J9@%}^UC}4=EFJ55guT3 zH=QY|zi;=A={LE7b;JH6mYC4M3_L?2SY+= z?>ikUYW(rzoJazgsk-S}24@Avk)Z1V;(LbFAy^2L(Ye=Xtt?DljY;;o1$uaFe$9{% z$|(D%3$GTG6rIEI6DLyozl>L*yPLTRFsTrzPo5^v!onS2R>&X zDe}*P*$00PTwk(xR;(!Y#zj;i4vvmY!?c~e-Q{J7_LO~Bu+>Eh#En|#`R4MTRRYoM z#b+!0JaYS{|A!{#X{_SwfZFrV*u;t|X-a6ZUspLs2QWvI#Vg13cH( z)Px`T^O?SdTxaxXd|H*c-7!Zy*Xx!ZGw-(l*yL@W%n*l%is#Lqtw$>QF?VOB*~rM5 znuh=j7&>DxY0{ch$?ZwGujrjP%T!I@mVwzHb`vl-c4!Epejpjxr`yYl*awSksIOm? zl@+k8p%Xn`UfZ^*C@bS!bf~PTyeaBFT7*duK4b)S-*aT_qA(F*z_zpmNrLPtSF`HTmdt7-%uYb7VKY;rvU=hm#G|= z*vwFu6#>9Qb|4y=I9?re2}$8mlF9O#&C9(fdr%44g-&S@*@QTFHJp~3tt1B0IZvvy z@j#Ah=kH1M8q;0L`MG<_blP81&(QKi&h@1v{<@i&&>07MPo^HXchkn|jHp>c)_~d% znu2yK2433SnWzl|g18*KF@xSMaz_>y4W==o$_~FY^tXdwh%Nf}y)`b|OF~An)VuSo zgJ4YivWI8*wW!G=KHryDfewJ3Y>!?O1MV0Dd@X3=i++ja6*YeSNpaLBNz@qU0)WeL zC!GW}eH)p|gx}Kmd_ZcUJ7e`PskP9H!JqsiO(jwNlUYzaa2tLNN)f60j`-g~`1y3X zfN2R=&i`e^FOrmIC2Uekapo6Pl*cbe_Rg1}exEY;x7t4Gchd}AD1!FhSusz-aUO4e zt`|Sj&c90^8hw8M#Q*tfe&J_JGeKl^hOWIYw7>j!m%~MD>Gly#zui<9GxjwQG`%nF z#_?2yULWCE1KNX4^Cub#fDadp;@%V$`;Dn%w9T(u`!60NmpkCDx6nLf_xw**7tfB* zYGw0V>wgY5ft#j7NKpRM=0SJFQ$(^cyKV<`mIr~C3t#8P#S7gL`jAcD`WS{&rmrHIS zj0~;cX13(jY-Iz_Pycj~GW6_!yD*`(1B&K9U(>J4zWuMY$E&hy&*jrL@!!8so}M9( zVFYq&mY;Cr0EoX@O*m>;H=}?5Nq7r|0y)cS`oF(#o;CH-fAgw$gBAw1ZJ$NUl3n{0 zXW$ADaebaF*YG^&{Z~!}5*st#!oQlP{=>zvdCA%V6haQL1!KA{E%Ng6Vtvt$B&?T< zVGrL^4B+~YaOeu|S|fum0(Exz-&S*QqIe6n60{;px{Yfm3z&Sjq$~=2Y~S!9&w9zEj11x`U&n={eute)QwyBhDT%dPI^Tkq>7} zf$$v9>(isXwGtmKG2OXw3tMEuKP;_+~9sg zgntuK>=OY06bxo&Z9wlo9S62#FNK&&=zQy~9YDv;^M`ltETipCu}QTmUXf0x2A@Ik z`Pa58|$OoSOmN@Sm0RB_t%0U4w~x07j!bz zM|a^_nGNg)FiU?U=ZD}Kb@dH2=Tbo}#pr0HYev4Z@T*}d9IzsBl+BDsH5wFL!kXRWwy7=pNOGEL)grVQIM!%i!{FE1h&hyj-yffhu8Y_noR`1pRYb zVL8peRpn=!R1}4&0Rm*CruOTM^zf(y?*`9;fht(4bgntbti=f1yiT3UR!a`eLQgrB zQS2zZbF(Kr%2Jo9^h0RE;gp-5J^kZ|nZDQ8N*sR`Z&eh}+q?}BF zpy0QU-j52TGtMha7w5k+hmU}oSxm(mjP|s{q|M=`3I`(_?ar!A?c}Qsx7SzA!+1!$MwnE}_%&fTNOXO?Om%qOjPHO1_kLAW`577E zrL|sESkxhcA&HS7zk}r)Gig#WdJh^FFolYgo5WAo=;1pN=GHfsyi?mr6EwS0NLzsU^nq|7zTY|1fSY}*GOWXRp zZRec9cs_JBj~Zi^DGps|nZ*&$I9gp<*&Y_@_3M!Fo?T78hEz2MI$ujmYrv%#fj5x$ z{GR_<{u6OA|4-I1YyHHD#f&uG+f+oF3KW5DG{AM=%%di8xo%0*UO!`NMz%CJNGL<= zzkE6J_0=C5g?~~P9?)`|@T9N;@QL{^*n%uxe8AYm(pH$NdK+LGdWD`wqix47ErIN5 zLgn)K@tm(KeTIG#pnLd6OtRKM9`Hf_{_Q4AJ5)^B48AS^){`d#^F>eIW?HaXMfyNGuQ_BtzS_Z5agESMB&rZOXFdt@i3GxdWbv{O3=!8&94;zyD73 z{z;p~v#9(j&a{RMnP_O}XnS#R%H2I)@8Ji?8+%ATw5f(4zmc+G87V1SS#H&N$yZQ6 zATJ|y4x>lsV@&r$<^0Hxv-(hR^Ho$eVPPl)kJ9=PY6-T|Ft3Z~`CDXv<#`q%G$DA1 z<93(eF~&4{qC5pR<|O=TPs<(=mihU>TBqXTcxaRq!0(Olt1Kg)Nw=PtHtaG?+T>WN zQCU;t$9O>YH}f{a(MLfCuus+0E>tc^)F2MPdyE-_FUe*?R>D#a2s)#nGq$}KH-0^h z=*{5OR+ArFE}_b0cB&2)!`L)2iPS$XTD?#Fu1yp z&t$!qn`eBe9L}TR0Sy|2Ubzd%#?lm`%&+F$&O25lNF8)=hl<3PY{G=GnXi8#Vp$X~O1S)RuF?`XZL`lqMsH>;yUlZS~I5&chgp)jl*NtW2@UR%%e zTCKN*;DPeTfd$*PO_VukOD0X-37ofPTutE>_02oSpG3tLazYe z5do01-MvO*4?=52B_%)y0pNpyU@t73J$vfC`e$4O74mnGg9_jox0z>T`);kfTjs`@ zz+EstX-oP2&^GP6#uRAPtSY)zW#8re4QhVQ6mGuD`AI)I45A8MFeL5r~3jvvo2$FDyu|A^?F-%YmVHOKNvCeQr%@($#LJn~*vmd?2t^Q(iB zZ!n*M^NzXQWvJk32O!?_{ewe+$uFv>5zVMXNrwiI=LnkO++3-PYkqR-?voGojE!HD z@Bn>9M5xduBwzf`9ulOIhU3ySFBT~Cbog}$DJocYfW3Ns{){bT1>lXK9+Ej7KMlrx zk%>tOH$A6qA6;rl+x!x**6vOHwu zO~yuz7$?f3gGxwlI9Px_V(rL%j$nd9416`l{O0O?MSZTf9|p0D!ot(jlOQD=T>aV` z;OyRrQ~!dLQZ_fudBFbCJqzERQZ=k<3i;t>+$HZ}QF}Ho3mV54w}gUs8y?g?n}rL| z^=cU!0(2zd=ifH#a>DsPqbI~qUjK~we}&=k%L8_!xMo3eXvoS3o{r49dk(XqsY-Ll z@QU^IE%JOW{^)+zWN%0?XCAQ^R3qr*rWtn{wXe4e{t+Gi*#vO~%jjVLiDNdro{aOv z*C4atgRYK`12aC8I3k0DQ~?G=0Z?0O+oxT=F3|=6ot7%xgW~!r=NzMN{QwPXH2Sd7 zol}Tt!hwFL`Wx!lT${K0Kt_G2 zt%1w*^PT)#h370k)bXxLpTqi=H**Jz`{R=#JZ4fnATBIu=Q*YIwF`*5GA(1J@`Hr! zE&p7)a>a(x<%DVk?L`&QI?iE1(f-XYY%Ty%mSLE~;4NeK8Y&*3v|ab<>oE zDIoY?-Sq8eWEe1(4hFXWRF4*w3G<_GD-UT%8fH?v*Ov;^WvA?HyxdCe`ghanmsoeu z&AqI`(lJ`M^(~ii8;}J4s;QC7C5qdP9-KT19Ae1;%637@l$u(IE8g9^<}bW1)%N~N z=@&3OY0?esgaaxZ61;4xWJPQ!&YZNSBFMi8qZGv&uLsM=Y?93RVX0MAtWkuE=ssef2*9B;t+Nj1yD;8`B5msXUZ_GiC*PTWnFhb)7=>{f`3NAXp-h z%)tnDQB)i=e*A~WwWg7$bT-#GjwM>5P>0Ye->bK2$w4G+q}cRmq+PtYq|$KCAWUv~ z{&dhCy(Dr`FCr_$_m2-6Q01Ul-1^DxSly^574K$2ITiUc_3qz)@BFm=P!5R(v$h~) zmGU~YQ+NwTblSclDW{@%iavd^IC2wU;RbY%XKnuAf}#7_Z5sLCx?k$5F<`6pLL(fYH1-o8ltJWF^a+$j*z5Rv{@qI0&A(u*d#~TWUo9D| zrdJ5H&(XlEDoj42w&A$fk%xOwf!tK{%c3+~t0ofz9vxw-kEtO)*q z9?YV$jtcp@tb(8s*`uzG9zPz443n3C|9lku&JR#ankmW^0q7JI1fPxJ_YRl!S~Nvc zss=8D^NrWAj}GNi?ank>r>${W9CAKtu6|C+!_-51t02<^Zg~k1_j# z-fZ>W>gqKgKQ?_zdjqqG{C(nRC6%j*lquA@67PD&&yvRjPRJGOix4SMVKdx{(xJyB z+xWdxwaXjdR##^rFJb8f-dox?tEYnSFj{3=80XUWZeecz6Z?4(WaNo&$Lq))88+z8LBUho%*Z`h`g4|=B{ z3q(b6qxItN+QOT&S?T>eIe-4s-{Aq=f~ zsZ7~X*^rb}nUUdRY%+N8Qj!sJ?u`kpcNCMIQdOv;J6OLyBuO;vPFXD~+VN|jPr2C= z1Wb1hH%v5&(5!Bq^-GG{{PE)DOMLoFe16#JL~L5MLZ>bXtdV5c-&K3VnW&I{Dou)8 zhGw(}ddzNxxv6EB!vtJ%-OuisxqQxqI^dWPJ)vQ@`-k!P|wyOp`5FTd|u zjhV1=LHiDh#fj4ro;xI5GZ`e|Mg&nBpa_#8K1ihr-qz!y1D}|ZAtBD-RV1oS8)pJ^ z44U_?vGq=c1I0?uCM|+vM^k|Vx>DD!bN+Qd+X3#u9}rS8$l&po>UJ%*PnNZMQsdz8 zWZSmijvpeZL(;H1&yET)Pq|?9Yu&H|uK2b}>cA@?&6oBK3tM>`O)E1NkI?7>xJ`<0 zV{7a8wY;OY@X)8rb;gXDGqBsx;Wuu3p6#ylU1jxW+xs;;o0|kCzt`{uOV+GO`gIro z9MfAi&D{JhxDJ%OTW{+)ks#f$jXJgHr8xcdi`z`yqA&IA*`R=mz*X0qh``21BA*y7 z!-|fEm%yM6m^gi5*{HGcD}NU7atfO?O$se~aW|xj06Z+L@$^m>|ItBVNn6>yF0#_a zrHR)H>vgdg;MLHfx4GV0Xv2dR03HU1qvcd<$#s&W@ngn-H72|Qy#CFoGmYKq^qlyL z?nBVfvVbOIF9F8^E`F+}ZOInr3TN>_Cq&ch|zA-8xBj|2}=Lk&9!Cgpi_k{Qmf*|Cmaf+M@&2?h(inx#l$T z#11VTBa@H-^>K|Avl{)Dnv36)fLWhN-S}a7;E|)y1J@ItVk}cFpk-hYU~Q*mjSf<~ zhh??<%8XxHoa(ul{qeOiB5^&?UO{7<=)4JI#+W|SvezE27I?c)SI0U2u9~@;`eWV) zCJ^toJhT|zw>EfCsv2nVz6miK$DHdlZhqK?xOnO0Ki7h=F|PpvO#JObmz1!nEmKOe z_K6j@B->7_HgVb8(SAu)`2H0XsDf9`tXUX1PEk^e{oEJ(C=OvjloNN}tb2(M3bl3QliydR%Ad*Z@O|2u?!)jwIf`nr5p+V!rtWFc}&^?S`mL=kNu&l0KLwq7%Kp5Axvs9RdwFqkOY1rO5ZpL-SGJFPxJCd?b1A?xyzq$hOnxIT2ByW zjXnb8`P*U%86+}Cv7MbA87t!9@R|{a{Glwm(usLzub%dq9V`w+%KWqYkZJmw&Feip z>@|B}x5KF4n5$;R=MUahf}VDpj;G1~!xqC;XO8Y3*3BgJs%!tI@mi|Ev-c>w-@~8R zeDI)ygFtmDrBe?qIUc<<#fu;SJ0{5UOfmQcav@`eZA&!B)#<;Pgq)Yjd4P1O52_AY zNGbFCf5;DPYpBLVO3mz6@nymHWuOI2h``1pag_35OU=6~iYnR0w^rYE-}`veLjw+O zv_s^^+4t@dJKFj7vfhc6C=Lh5dFY&m$0skII!vGv5#|cIPF_w%KWhh*u4r$KMkJgNAzHYy8ArR9eFsH7a zJLh}uJ!G#lKut}I#0qIevhD-^e9If*!7x_24AE``}UHJtO@B{nuc zExKOA$N=dJEvmEcmo68`J0L$qMrg?|L`^w)ykZOUeYSxdB2VU%Ojl|F2F}3W1BI@q zXZ-b@F$$$sRZ)yprv8~f|NFr^_d^H(>j(6s(FV66)Md{8N1JpSr zwN>1@ZV&ZJ`7hXm!DJHLV>UMo3Clqhh2+Z%Z@P>o)muY&&>lQeur>TQUutQ~A#nKn zA0U~{UmuRL7ill}5S071G$X-M*M=i-m_PqB z6c==8FoIbwY49Qcb0|on4j;Y>O3VM~ntsiQaDEd#)03@kwI)6d&SvW2puFbnC^jE3 zphblaX==)XSI_X~cylo8&x~sI8Q}-=QtPqG<;Z2jG`6+c>t0>l+db@?bPoU_rzxou zEBA`Ef2GmhEP6aZtQhlqU48fCTFsEDtTdX`SR;!O&6AwWnKS2uZpsw1a^Hu73Ow)E zR1a9m}Gi*1=^~)ff-A8)g-n!P+3NqYMn5qvH=SUP7Q+ySBQf zCORza8xk|JuxnG?)#d1|4X3Ut{?|x86*fB6NED8@{do{J< zyWvR(P6iWw{VV6rRdb`#<$))adI((1)2GO(*Wj-0)i7emOra+Ont}?G?+aYE*P(R^ z_6Li}Sj%Vju4b{_`qU%g%a<`^GT_m-u%90jSorzi0BLOcY> zyh$47iOkEQt_zZGWN$t`8ED;EH)xwmoh+secGy)l;f|-Gy4K*V&DF(6s{P!T*st=s zs@69Ra0VD1o&~_?l+p9yL;CBFYpme|*{Xz5=7cC@wmH#(^p z_1T1rzH|GwRrA5jNjn3ps?=MQ#vXO)xJF^nrFOkLDzQ1 z<&yZZoAa)XZOE;N_z<`*y6fg#qpe3LjNLkZ9Y$Dj#v@EU+QIXIlE*BY0=BiSxmteXtc!*@>slSe&5F@f zCm2-HySKsnk^=Vwos6RB3+4M^I5=Po-sf0Wo(*VhY(OdvpM+5DCfmBQ>H4YZs)6QI zZdNxsy7txLl_LIStr8WtZr*$uZprHOa380SjTHnPsRY2Yda)QIZ&?_10>WzHcFG@uXi; zMRb0nyZfN6=XYIvksP1l^z5g%O2Xew;(M(D)x?{|mlV?4g``A-*?B^R= zNFJRu+D-rl=95nR^Yt8bBG{@!SiF4cXfU<%p+@16uT5Ho-4y+aiTJ&Mvc-KaG52T} zR}*kQFAt*3+i-C=WY(m;6tzz|=W4HrgibGf?$XmQep#Ga=sZKF_Evi4d2umz;&nuR z`;5WfK58vvjK_@G#1=yP!z+H=hT*vk)O&@yFU4SaFY~@9YxN~+Q_@uZ7x2Ij9Tg{fefj|G^S={*&509P4BJd%sIr8o%C%+X`LbCcHWkkr(*j>)JZT@DLpa6 zV=#w(E}hJqHZ66z2uj6hE{@Z=#(h3WmG&8bEGa6gFWLGg<%OV|&F`5%*;#MmSs}XU z=@sz0M+G02Zipiy(N>B6+V*_6KY|x)z>Tn&S;kruhTc-*>N)ldeP!b$O)8qho!+Xb zZiV~DK7Krj_MJPsvuh-ApV$1AQ?DX)u+lHG(%aiGR&?y~bWkpJ={GdlD;51qfqj1u zzqXjvq5ewco{$l^N4*g@tz$H%_uN*MBlJlE;FJjfDGRLEI~7XNVUl1|^Sr1QhGJr3 zGG*&OPrn;23qXN^KOLH8D2jk&`B|uyv16ZzEJJnp)I%y>;OgU zAm5v(ObS6I;1#&rg;F&RSCUI1X$-dwyq2Q`1L|mRZ+=}AJDoAhqS~S$o^i}E%b_Rc z&8SNPN+gZMF6l*a@#V`_^9~Fc^{pej17evo{~y&Gs=tS;7o_;t^=@_M#q;NA3XdCZ z32Fcs)i`4}lm=O*MWIN|E06j6!?uMzr3<+us76LqrlzI!@-+yqt3P9}BbS>o0IP%<;Hg|6+(tJ3xBIRCRpxsZ(WGo54iCE-A4&5P7$G)~7Y-DJVN^ zz(?@cpHw4}F{lSu7XLK^SI1Q1Aci__`5D30hQ{@uq$B)%RdO5mK3pCs2oe&yT?5@K z$15#35*39uj(k~0etWJ&T*0e?`|T|HOW`&1R-_HEfXnSNFlaWnUFdd%z? zaXkqn^UUK$`Oe*vxpNJWbgKb&AG^sS*5@l%rifB5X2Mv}o~Tr(r&x8~wMF)FPxC+e zey2KRic-D}24H#%RChiCS9ID$7#SvrZRJUNW`D;oK119H#Vaz4I0lMA}KX?VpqG zv{sPrr=4Yk@6vZoU&+M;TUlCd*Du=XYaF2lGM@LRbM#LvnuX_IkL80g!y}*~@#mdh zoc{taNRyQ0M*_iL-w=M+h62pX+Z$8~r{n{_AMi4%1GO4bqU@%#Q;V9i==iG=q%3b)^}Ky10A2I8+7MI zyRI;HJ}ctP?$$T-(C5$Varo)qKmF#Ye2j+4QIwTaS3K$~teO~c#Gyl*=qmJ_uca_W z1Y0tB1N6n{q4~+ZLxP(f@k24IYvhI1e|d)=gZ0q*q~CoLUoMFb`1KKh!iVxIR0wP} zwjD)2j3rw(e-GNe$Vdk(s|Osd&let5Q1Hbh_ge;{=UXv6c!QC$H8Z3RoeL`1S7}4L z{8r8zAo?D?T(|%=_>+?ppw)US^HbRtej_@vYGppAl2X;vgMMrBr}JR}f=xwM8(Bmy zCzztb?$+|4cj?mPA+aJo^JsXsS8?Oo{?b~P4&{FT6uuq-^W$x=d8JG2VnllVd&#e0 z4HF>!#uqFK55U9*ReFCop5B7_PH!ctgJE7j-ehM*eyS`^a(IvUUN>Ksy?gNEZoeqH zpi_L9neg>xt>jh}+pzK2F%|l0qf_0pLp;d1JjlECv-{Fq#wv724Zq~R@b#1bi^t6u zjIc6e+yKJ%5YX$+g1^OnB<3e71d`+rp6?y^0?|y=Bm0b_X*;l3)!{emIhzeXNcj5N z9seIbY?~L!qr1*sm4U$zJplj5tDnu2pZ;IHpSM*GXDy)$=N+c)N$ODmKHV;(sEdfriPj@ zwO+R+V%lq6^-&%Je^EVnehBle6Q8bWTw%4UVdWW7Y^H*Ir=4UDlg!;n`1l`A3F=y} z#iyI4OyIiuduAdC{H3u|)-^?ZSUK1;!TThSJ9f6?b$iLu*gI_$>fiv8@&Agvt3y=s zlZF3~HuO_7N_nN8vIuM;e9xX_Ei7>hKRi-+rv&Ez8J7zC>#`i^Xjnh{r5tKn{X@C< zUb*)Sc|ku}#8rDETW^UsrmR<-W}M>Bo!Wdk`S`IvZ#uMh%a~@2(r~aiS+9GS&hGbO zeM3WGOcCR=p2`GIH3IxBZzqM`H_>g(K}xPsH=x@F30;JUV)4tI0wM0+Wg-VZXC{$; z_^TGdK&nZEhsh4kud^aN+}ZG8zSIbNv*p5^^9Oi-i|_53BeAl!{*~8efJ?&Bksd6q zxN?#XJ2$tt?h--%ckbN&z`&HWv}enmqM`$z$5w3%(qdo$g1XOyIwA)z7YoHfSZI}P zo!eS$=XhNR0X=|pNi+zKb;TFPm;^|D#CHK?gUtsccx7l(eW}t{_p+}4K zH6t@~M*l_9GX1e*ksZ;ZOI^~d(tS{ZD1r=N4^_fo{hBUigQ;d%L zQ9v{jsH@M~yd0dF87@BVEGq)<2*qNkb%)AY@`xM!*6Gv!{$0@*0Fhz?Og<2QeB-)k z34;m5k}3@HJf!(xL*x_seR{>0wC*=A?+JZa1G^!^W%}bgk}bC@7xUXw&w+ib_wIdP zB3h>q@UNA0_eW$cKvFMdWja&+jJB;3cP?oBxi5IZa8*TriUZVJYriLvS%Byu7sXce z;^^m0qXd^CwYogkP@%J6cn8hGg^?24xyIG(?%fo@a$w-p&&F?CKfR>+Sljc$JCIDl zOaicx3VY4=wFTdQAb|tvb~x{N?`u=CaCOScn#zjXo+cyFqB;}sUz}!z2L>IQ_s>7a z^_KmS*{`Rm_x53OgUq@lKtv4T;AIZiEh(sIkL^B#dKbl=I(2{fB@!{pSEfgv8gTsG z_jwY>y06Vi&~@h1rs-U9DmiJ=#O6p@uy*OvF<>;p{fr+UC%$L;O)v?kW3C`^YVnm; zKWtW2!W7@~f~TYU1fNSX*}Q7YuZPrK_Vg>=VV7SdXG!*pnDaSoSl~OK)dsh4@MVw| z(~&%(YsB1i@P550G(Z^o(+1YV`ZYtwbG5B$> z$Q|H0ZLe(JuY6ry7NZy~ivZI^MTiJWIP1D-A{f`{(^Tf6YQ5@b{scwB*)h&` zdeFV4gsr++OA_s^yp1cLXN+g`8^y{rNxI9*`8kVc4gJ)~yV8Lu4kD9!>C)17`Zo?9 zw55e$(lE8mI3Juaa0<=e>tFEq!lK&wJ*$*ls~eKomb9MWr+s$fLAU0gFU~Y?^WL@% zQx@Jas@fmOQm8rTd9wPoePSm1n+}S6SgC8Sr*iEui{OrE_)kG&V6^=((}O)E?ib9| zUAhI|gWdvdCLeBo=DOeCUWZ3GW9CdVd63k7k!BBQ5#NTAtyK1qU4;*)q?(*P^Qqa= zXn3Q>1Lb48PpF?2x%p}8EvV9?EcTjwv`mzRnG#C+G8$Yn``)hC8zqp>k%^z~sbMw45VkdYQ9 zBUMdUmZ;T!^}5-Y&)N;`Fu>OS8b-+2r2~X@idNUm{1mR{G)i8Tt?t)ZNvT)xz2S9T zXs|(=!<3Wej}bj?`vk^qEkwsXSN~+r_<1IV-F0ltm)=j0Ox-RC|V4esM~-D4FMC0;tUH*X&M8gYt=B=8vOSnqf{ z6{dV7y1=%Wi4GaR*HzxHy>D2>o?BC8Ep%yIq%8x?J@&@w+Q&%N5r>z&dKGRw_FmVF z;+d6y*KcV_A~b-esXCuI)vvoS-_O4%LEGJ<wqSXssQH;4g3am>T zU*U#~=};qE1YFv63@_x!)j>1&$`@CpZICDBtn9zcpeZI@Gs0@R_R#Y~WjZIm=ATuo zA3xJ0F~{_FQLk%G#-m4X1U!Vg!}q`KEIY&Mw!#CaECWg+MCat?2_E6t7*Cq%@$;dV znb{qRQs9q*xsQK(CFJNGHFl=$o>Lcc`03}*^~hGYdU~o&+@z_YvAcQs{S*3{Jp%C@ zdf)bO_G(m@Y!e=#;EO}UlUCR;<)ECM^nVr34mXUubhQzUte-SLmJW2PX;j?YicJbA`! z!EKV8kC4UM5b$&;RnZC_8cx>)mL$7V`{0IURXc#zX{Uqbs+uKoHo ziE0;1@#Ysg66lIg!voF5G<4Q@w;5^CaS?nq94UseAK5sxW8&8_^<$XS8z5Um&WsNY zlbSlUUq|~JeI7ilW(0H~#->eCT6vdeX#|!#*8N? z@8_rMUeEnJ>wVVR-gj;9f9u}1`;RM}=kNC&k7GafeLn_ZosYbLjeI`A*rU~I`svaK zfqYu1cs9sM?xfoFKE0ndO>~WbnxK-R`kH|M!v`JA$)Fz8HaEg+ct_c7ihJG7<6cBQ z++W;0v@aSP^Xu{GWwiH#Kh2K7bgS(6yxZ$PM-#9BZHmQWlu6F52S2XLiKNykgbP=% zvNVnd1l&1zvn;k@J+(LF^^aXjPWxE5GJ_|k#b4;^_WN9-;_>RBr4$Q5qyhpN0rick zeaNmWh3+d=_vn6@JEUK6v>UfNd$fHwrOVf^)8NGve=@4GjvX-2r_)RnLrri+m`DL@ zuYMXyX)>v+84bN)ca@NDQ|4S8VE5sA>Z0+>jX4vxZ?9*SvZ_T?KJkO7ii6g>L-(uS zntpfBe|=sI&+Q6>$3{bpq>C;RgbetYZX^-aSFjBiyo#W>Akbo&fMd`q1Xj!fwRx*6 z^%M^N`t=KT6l25E37+g4aqir1@sNR4kBsS7*(7bCR_Ts}0Bl@vhMK!G@ifh$4EuZV z=5)qZP*(n)+dk&XgVQ`dg;I131pLfNd88N*^up1tt5#)Dn`H@Q(!=M|r&(Kd`WzqH z?;D>5P8RG`2`ppJ3I`u6 zns^s!+suG*7wfN_jlOO)L~twMzH>g6k3*Hcy>IE@%U^4&)<(s!zLIBf-!S1fG%{io zCXDQpq%r45H^(47;uO$$_N7qcXYCPJhXe)1Y&L2)n#m-f$5WNz+}P|A3MYSg9wdXf z#>(0FmnY3vAFDG~L-so4q#Ve5bb!N>baegm4r30iZ5Ximoyy_~g_pq;Ka$4GoqGgd zEd_MDtZsWb49`%;t*s z>uZ^L$OL?Ce=on;P&|9o8ZGe^S+{O!mx5=GJD2!l9Fq=(N$Pn=JGzHbz@cI0Gh&MH zNIH)Mi;Wx=CDb9b9$POQ+8fp+WIS_>r--}))G_Jun|_pDy;Q2nJH|K2uTA?2k;+4G08NLfEiS5(<5CB_5@UTwW$MdPO%95?H#r|AjOcFGu-) zH6`3`Z-s9V-roOy{J}wYDQbyG!mwj6lTc+7D&Gk0u%Yca+ zm$R4(_b*RNYM0Y`*zttkSPGxw*MVmR<@k9 zoE?b9+U@7xBV5)yp6{Es^!%cUdn>+7oHW>@T62%2{MdR?)Rh6%ThA8unI`NbDkGh1 zH&}1Iu93i%0@DC-N8~Mm$^#1hjR0<2cBDzOmZZO_lcVGDQKFH3_Ag!MbJr;DB6Km~_@#Xv^yLL5t~Psy zpCYv)d!VDksJKYk?+Khr?@sCXTGnpJI7dx@=Bm!qh7WGmH85LVWL^B=+_h^?^X8=z z*g)N>n({8&XXJCTCl>#Y{QS^bQBnEg*2;Z4%2>@?LW@eTg#;Ab+(V9-fPx;x(}_wi z#eK$+?u!$tg<;F}tk!IkcWg$GZs9uDxyS$stLt zBT9^8M*N+XHCavV8&{FL$E?m?ZdFd1!0IfZQHyWCc>UTm-7~?s@WUc%Xtb*P1}arn z*8J61g=oRVeZHuu`|Acz?|m=!MJ}8;Y0?#gUgnbw%+PS)(C{RA=m>csUnW`j!z?w; z?aH1%S5ncn@a6O8YJ{Jdphi#G8*AOGUDZ-S%+?4v!b3Z*A8EITxoQgHv_=JvY33;% z`)&1}VI(J)1^Wu~Gvm#rQw(pKT?q*hk*;IlQ?32_Sf@;Qi@IaxU8*U{h^#OoD^{-yGYwEm)U;R2EehYJrM)}y!S+OZ>xbQ07B1ik2Z>Gw5Zhi-Z#c68uk1et ze@xvMoAEi0QU$>1Y)eZ6*HWb=XC=!PP7K>&N&z95i(BGcT{{|eJmnGMd|*JrT6&TC z_mZBzkJCYJtOxt%2kk-HCjqJuGX9Pd@yNghNC8$-@?l*7f{;a81y4@DB~0HYBj;FkI{bXL@=79662c}lJhXis0I*4akYeF$Ny>Zdm0iu7o%)RCkaI1~%X ziI-X@bB-=tNb-NdxptCGLr`q!TvDR)N1_;Uvk=z;Dj!a?*9)wikRmSRyCR)qXxg_=b@tH$ca=EaL4h|V2Ob6M6XY&b!qn! zZQ1fxlEAN&5TyISqlr1a=(l~A+6HbJhQ0WMFuv}jm*?s_;iq|>gc_sFKtAjeg&*MV zWFYP34#Go(iWK#QpGKkdU|dZ=i`TZ4-`b8vtE52r$*W_bwGWQ^RhkhbvXoC!IT!F9 z5~McfNSu6-x&5Dh98MHSD{#wrZO$Djx?6N^#KmQ+I8OkRPoU_eo`tqN?qx7hWI;qeqRZHGAGMeV<=2+h+%xIV&;g}%TJR3>x)zY5)cP7q5b}2QsZqYPlwddZ``Jh@cJ_6`E%x90VYY9 z=l7Bl^OgFun8$9s{QLLBo_+Sm>rGtKs#I9*)R}Gn`KW)JO5!~{3?AlPqa5;|zv}<~ zyZ?FG};j?cg_y%>6d)! z75%~V^_xK7$iej*%sG7jydX|U)lLo`NfXwvqsLIrhrUdx?rrom!!qqQ!d30Drjs$P zc0$Mxs#ss;CVRNGbl;;naaSWExW|pGhq0yF+x9qh@}$|B@f;spI7UvsRgk2UBP3rr zEROs{4a}~Kw3zTjKvNU@7XI_G4Sy))=p`LEZ(K2~gM`KsH>5UAX=V0>d3BAU@0nNa zQ*)~|n?9@1dlnA)<}DpK($Z=*8Gd+eh1PHXSzgP-uUuIRM~}Ow@Q#7e6J=mVir4H| zz|;@5y3hQJt${2`D1C985T;6gDwV2w91M-V%dgED+L)m^LyOcH%pTJ0fo1L$MegS# zJr|IIe)^Ocx2UVveRyM9N+XJ1th^Nxl1qXC&EQ3bXElUHpu!{qEbo%G($`O}n)cld}A4)g_&nDow}9siUULTF=Qk=>0p?a3C?C&=MA|#)f5DGT{)Djs*nhaR1&l zoi%E%*AZ{;_@jeolkoX_>ckJ3AD4N5-BJgKp<7pN42Ei@^|)-VRv)W7Go=$ZM^-1R zz)vFI!#-k)u5KskzC`zV(yO@nM@Gs;e3e~(L)5WpbbZKSuNhxUN^IxM0eNZfVW~3= zo+hA*caq%7r)8esOG`PRHkaj0al9!B-Vl+R(GYpLvxW2E)+g0s5{Fjx(oESI8nSZD znm#1CHNO_;JYFO-9mai6kLJ*tQL#IN(d{DwBWC(HrkxGX|Kfyc<3@0*)S%48h8?|F`^KjJrFykJqI zr3K0d^zbn|8;t2}`}S`Wb7DOn;nD(6=vNlk+>gtdedoL<>M=Jl2`$a-7NU}-ct&bk z2yb!gBMY+jR^#! zE@e5N(T2sVwcsS$MooLCroiw`+a0@=w>vmHQVmKwGU#vv}-u3G(N>_OlIwo^>V0a+Fjhi;H?>G~Uu5~D> zE1VT>f7vm3+%f*`#EBC}j#R*%r1k1u#*=z+q{dkDZIi-!K(-!$p;>NjWWa&f=)7MzUxsI)U(q_|0MXv(?4rKCP_3j#vcAh!c&o z0=H^ew}lSK8dM5pX$?%FJ~Jid>9?PwPnnTFW#!~F8F|kz!!h1FNAF2# z-J)^$A7Q=3I}#oLjo()5QZxhfTV7}uUN-K+WH-7Xj6i5ZF};za0Re2<)j6xmlYd`7 zGshq-I$DAm4>3K_HIV`W;OUk#Al%_dP7{f7Dk9|Aa9PMn;T%A zlatkHvr}e17yBu$Zny3>>;hPIjpfhf$auq=JDk$qVWho~=gb2906DI!YSJvOX)1i# z@P~X4Rk%Z|=*r)}JJa@1PEK^salzKD&pJTdK-kPYcex5QPfhqw2{yB|rCT_ic z#_Y8h&1nVR&S&8nc;QHb_ty;HES&}+k=0M!bHMfS+6;D(1XMUor0|vc^BHnMi_g!yf|ulp!a~jH-kppI0y$B+3y>ZzimHvBuA2Dj z)kKuQJ9bQ#-W!s+>+Rej=3^c2&Pj0^ocd_@GCZGAtB_Q}WVot3H_y$SHd2J7(032U zzB(!X;<7i}`=Gk1YoENCap68bsjr1{;qJ&`-{faD$V&t*9*hgl2;*oGaa5f|QjnjY zjcelYkbn^RWf(bSGw6gZ=C8JF+_)E;e9k)b-hQ`|Z)Ha&&(;f@6 z0k^X-+*tJpiV(KNE4wjG9+tXJocqZI{gst(T)k>)ZoYNPmQ~nMLp-*9R0F~f*im@h zH>YsdvNVV0`<+);<%XTBO-fc-oO|bB$o%0`wpZFgT4uQxt=fO(N)eMBTVHU7^Z8DB zjYUnx)*}iXB|W@Uq@7Y43on(~zfJ?~r#Llv)l2`xzCAyR`;KQ>QRc>b&Ux_jXH%Lv z8>x9EX1bp7*|X<3aW{S&eYiZhySMm3!D_(Sf#}A7K z^u#^?RS)M0TRT0xbJR@Z8e9QWQ=t@pC`vDLgtgfC* z0;&!hf37;2aKetoi|(ak*RBgPm#N=Zi*_n~9jFOgJ@HNLu!?O#3aw)oDwC8H?){7< z;hZ^7*2KXAKflcV$beN4t6%^@q2|zj|cxA^Z@lt_^QIW4Qv>}|+KXHC8>db2g=T;u_G z{pg@>{v9dI4kt120k!LE;o&Qh82+l#q*Muj4Y##&o2l%~ipb)Dke8EZ68^bklFw{) zsWN^!J#sJ-M5xBR%9G5cvzRKf=>ffa@9`9yE+OuH+}z2*XlQT7Ys2U0YSIJnh`sMT zSFc%9BQ|j0v?WC1%eZiDZ3P)9WY0O09^@vk6@<;d7D9G2wu>Hnl40V|$PL}5;e)Q~ zQ)Ub}r<(+f)vIUE#*yt)v$dvv1NdWcll#g2>DYj-Ov)ZRlP#+?^ZkmXqT*b0+)!MaJ?%r9Rdk|^{XLeMS!soH=WMpm{ z)~;e7U_4b`QE}>a`4`=TVKW7r0Af;XVw@&iU+?6U#a+u073i5^xC@Zf%0|jleYRmi?@sX?%2bT;e1v_I z=n>goG)#FPS#j@(Eg@GEM(^2jjsAbqV$!Yi8Gf;n1w?S>=3N~}olkhRs*`uC&kt(w z)a0-ihfimpPew{~qxZIrA` zrXqmQX+r($dMcJcVM);(o)nyBNV`03WF z_MK}>(pCwH^^6TFc?p+>R2iWdzaW%hjyEj$11m352ufAihR@y)qAnt%JGX9yx%ArH zupHSrAZ6ze^L8+usgvoNNb2f1jUkrN+m}2_``~I*029!>iq>%r>C~IZ=Lv|h)+Zk~ z0BAuie_15Wjqh2s74r3mIl}XPMIzPH6k62%a}xQ^WhHG|c+@S9*8m}Md?59Jx_>y| zWdCx>4e~|nKucr{1(LM?4Uz2U&>O6)htO&OR%2uJQ?Io>Od0$#-=Q*J`T3?P-69g~ zIYE?zF}(mXr+vAU)oSs1m;$V8m0)x1!q@?u+EIC!qW z(M|plkQ4dk_wH;^$d+#yJ1JOayOPbJq&-x9X>kX|FZJgO8j2Q;t~?`Yc(5wl1z!5L z>Y5rss!TX!nlWO}{ej>kGA=Dt?6&j61lG4FPc|R)RqnJ>(kZ=vJu;qf5#Wt~9vM}h z?BnFWZ=nxr>91gWzCm6(nmYgtx`t}Du*8$0OM}QMjFIHo-4TWT>~qQto6ZyT1}`ZY z(P#hYWe?0er>rMT`T4VR3sie{{6o>`+!|c`m#azC}F4+wYqYxa`iP8&pP^d zwO?m7F>Z_C-M+7d;-%1Al1Eh@hh(7$&rQ*?CfakMgIno0tLwMs@ggbB;Mj?~4o1)B zIp3VK7%~}|zy7h5=LrDqgi&juj)&^}!JlQGZ2f0o8BT*gE2xF*?)(QVm6eI&0ij>F zEG>MP=0KAdv;KLA2b6m3%!a3`9L!C`hVW}&kEuPc`Cxl{G%Aq z{R3Ug$k?z#Tfkp(I?SS2DJ>!aL;FAYu#A8Lw^-$~NX4wU1^i#o1r+iv;Nz`iHiFU$ zgl~ROA;+lkt}Rl4pg%Y(OY=|50O1G!n}dLtI?;VIDHUqLS#$+{1x1rXJvs6uuQ4LP z@+WgxN;QUbP^igl60CD-%FDfW``rgV=9NQ}`?7LFd3yo(XWS`Rzyss9BMT-rKyt^i zPLzQI8rS{$Q|?QAJ>$2Me(;f<`)J*~b!*VA+!U37@1EWVM{v{GR-|{L&N1<%!|b*8 zGo{6_)tQz-p(@uIiW>|z5HqiinLLbd;4unWSiVLd9+(-40q^2cYc6$qyRQfnVHhNM zJW{E~VE23iMT(`2q$QWr;>Djh!MA5eLNG$%{dIZxhy~JpnV+_=pXXaU1!Tx~; zB;U!~X5^45PY74YHs7P(LKgqxVIb{mRsvIS=dyKPK7bU*<4**+h_R5!8gsMS}ur zX}{oXqoqf+E|ygNKdrKle#9k z(Bj(d{O`Qp9on!gTW&hM_BK^W`miKKKN2!Z);i1{9=Hq}8h!noXU~k#M(kHK@3vak zR#O`1d5^Ghd_y`+rSTY^ZYeOsP#6pg@FkXYf}ca`x0Me?7(e?TT2nXYO}gF>`j)ng z-FxMbl&xPtfniBMdn5G6bH|bAPj6kv+rjA{R(z?`=-ImEX^W-S+@}+ENQlLVS%G=z zw^VySZ~W(lvG4a=4eXANnesB}TCBJ^xJvh{N1Tz0X7U?PbBQk+vXx&K`1R8|+dEWr z#87!rzLjG0n22Zky|puA1A#50TNuc;pnmmE%v|@8nyKPF9>-0d-{PXzI*qM3yu?`Xn&g<0mDx0Td^6o>a@@qUw{4ji_N0HGiP(hpxgsj zMMbrzyZ4n`}D+QQ}AMFCT>zL;S`O2&?RJub-47ihgJf)-5|p@CdRXSdY+G zXK~$Tvz%H@=fRfJ5h=EZn!ae+SoEJ3XQVlOcwo5qK62eF^RJf7Hmbhd*DWAKMw+hT zH=0_wL*tt|7`GVCC@G)7gm@R35oq(gr6VAZoBrw{dO z2puf&-_V;6!}bg^BYymTC9At!UJZeY>;a}P5CdRNK-13mRuxur?}???NL8uXfw)ko zfSG+*|7v-xC?)AL3kLwQY?jduR|r_qw+3{c2ED|nY?`5XM#cypm^Dt)n^xmCtrx#b zxQ1bJzX1a-ZYJn>Px}vk1<>&$B;VTMzmkt$P1wnSJRv_pXwO(&Y$Uswq7`XUT= z{FE>%%ZA9HEFC5J3B3{ezy7$ufF;!ZbomLJLs+U)BK@h)Vz)g1cNZ199L z+rDFqR^c^osi*hIw|L{Q)9CGFY%r>@JY$kP5C7g0b(G1hS=fUMO0qB!q(i~zoSXhp zS?rm{>zB9W0_=;=gnnIHN-;7(Zj|uq%&OoqC2np)UQK3al_6t#?fu3G`@29A0K(sY z{`~pni{Z*0ime^*3HEL3N73+dwn4ZHZf?Kil>Mdf-v_sIbdj|iY_B|j=T1P-v`+XZ zT)~{Q)kCjR#lln(xE#EuLYAgj4o2 z?jiGu6oP}Tyrbhm-yTa+YqstGUh%_Xk@g^pl0%2S%F62hc~bX`*o%(u3NMJ}s$5i1 zQab;>TeRZB6H*abeFR^~GK-YS9W`y|0+n~vUoa&{&A~K@FZz1aA70bfXMRTIpq{QxoHtvzM*q@}z1Im$9=n2Cu$$_rLzc0!Ct`y; z_Sx4QpJ}NsQRBG#!;k{bKQv$pnQ~aJiWi!2V_c9X_8(T@NjYjz0-Se~J%8x@%KT@eFHEs6BuRLNhc3tLOPHaKQfCMD^{D}{TKPIq0 zs=42pG;~^5PPLKoe+qCretmYGq}s`&?3muu&ze)J89svKfdiKVVE}rCoAY1`yO!EMmXL|ReVVTSuD)?Uqh3Kpl;xYM=y9(+N;DT_%*w_F*DK4yi8Fqb zlmwkRwH-!i@uT@4i>xtbap)K(O6m7Y(*D=EK4?NcDB^SSK>h~r81L(hvuS}O?(^YZ!cZ2;M>uMVOr8F?u4G@l&Gt0j&y_>cCw8c z6<97IDh5?4qqlpoH*9)t=};ct$0sI63bb`)6jY82&y`Xs4*;pbA)4^l$1kO&7UHmG@%~tPu zAvdYj^1rCij9-@thS9flS<#hC@FV8W=SDqWmJ%Q|Ss|sP1vw_1cnrMyzWK_0H*jzi zJBT2ff0{Y&IBTchyiFyfjpX-et{;lAC{U>J+`2geoHUtkLtQQR)@Y91%KgpjacC9} z9`QWGH8b}8;L*M^qa2@t3=P=g&9KvIXMC;K4{i zG(q4`>rK=6W_+mZps#7#=_9i8V+sZZ^vMpnQ9 ziFHORkF|ZXaZ2JbA?MbI=B3Wpi5>SqnhSMtfhCz1IaaHudds^${;m-T0R>gnt0pE(o>rVSz~lq4wBZl9Es$?=qzUE@Jz_+|K2J3YsQ;Q!akiu6H$=4)XU=3nLKakrc6NJSd@O1nAw09A zy>JpAIAAO_eeU7Q%#nDz|BRC^jSPkA@#%^JJKqxu>pTVYvg zG%gB#2Y5i^YPl9*M|KtXlQv{gyxO;=08Zoh`|9bqBzL0_;JLR<9{>v(0+lvc^DUJs z!(M55I5i=HVsUG1F#)ja%pZrn!}Df8c+bB+@zJmb`G}-%X8Je!TgIKHtu)xbWK_k| zdkgFL=z}hvOd14Kx7^`!yq_eUoQ3eqWR%5m#aVGQerafGC=;{~Msc+6u)VqbsilFG zlkEgY9ut6Fyo;8VKpRbB^}{27Cg74)1i!7)ZSub?x%MBA4}ZMH6Pfy(e^rzKNBtSn zlyGAnfq4POVexp6SEUw>>z21y!mQqlKy2DS(b>jP+4@ZZ0&ForY? z*!!Q~4$qT%rBrZHko08^zkwm)7Ct!%R{5_7Z}BeytNioP3jG{6VLQ_Doi_!Cl1z8t zL?Co+n1C|ygX#Y$*p^_Y0^hIYqg(m-EIIqH5&i#P=YPH){}0TLcCe=qQo*SrXm!@; z*~vTVrIGLdm!+h=m~aF!ZZkZc12b3DM00+A5MI zo?hpBZMC9N+`Q@?W*W(x@q4v2F%h);gi{|CgEXY3zPB!Cwg&-RuKowhZP{uqB=ZaX z7yP8Kq&+q*4?7+AZbi_kg%%kUvw3E(#Q)dd#|ezEDQsHTK`%c<(qsr}FPy@Zeb1KM zXtKAUq=1c&j0Sk`*sui8>iooBv=e;Sa+2DN%y=wX+d0D}rSG}~rI<|5*9AUv-N?wX9JQ3Yd&QYCU&wEIPA*fKDbJ%e?<2dcRL9sby zfP3tnFAs8-h9-F4gW-(GHb5cm7_HlExxHXu^L5#iZqczD3o~>txz}^csI0>M0PsoU$&!!izIoWLK(7 zukz&Fkh~4XDrzxKOBXF7850CDz##Z2R#sOVOZNqNObweu*(h@9gM;3lt7)8FSQrIk z93iujy=tGA6LF)YB@thFv)p1iNGP%Y5z8+L3j`0HKT{CtDRBD0o8G`7xq-3N$MnDd zjv$h<{eHV#H7Eh9A|xWrji=q{)AZFT&gjt=Qe!}KT>7g&Up%d6X``U>M5cf8OZEwu z_)MNE=UG3sB5M$&EQ~KEO%x4E_GF%3B>e#yo-hVGi=!u3{oJHY#=>Q$5LwvUcG z#~C?2|NHOp#E9Vdz(~KUuF-M;r2xD}qT3raYU9%MEMOKAGO});><|#=s`N-2GJ;T~ zoHEJX;>98VnDF~gIU5-8Zj4eZ)9I>nA>X0$rQ>Pr1g&B2CDyOVF=5Q%BWR|4dEEBk zC~bW&+2f%l<3MBiMiOJ#3~z&b;@v=@8h}i_XU8Jxl7Zbjct3+*=ZRGXcvRu*onq-# zQbg=&?s-;ID#X(JaH+M!cOD2jX*0!^!X|4i|64RP1UDoXq2b>(sY%yyht!Ukpbcba zO)WhlTXyT_Hepv$3*G+1xBT&=(JuwI4JnJ&?5H^iXkK1PodAg<%H+f~x%MtUVP9q^f;;^axw?$l+19 zbiISnSYeI{XF}gpLwhZoL_Qfv;PGSMo=#+$h4NK^k(A%h&l#F5QJ-Rls{uUXpjtPs zN@@Xu*8n~dND6t?1ve}UG9I`ahiH<-1Brqe0e3npPvkF>MQN2*y6ulF3t_?>qN#c? z)6{n^J>Hl6t5v=zG-g(MoT}`b4{LTMM_p7J==Nq$ol1DeG>?;~4()1MX`rXq$oQv~ z`0ou~*W$&XFuAskHd)%7p_munBnu*V^65M+AdtptJ@Ive4%F1-Sv;JN`)665K5f#) z(Uf5RbJV7D4<1bD*E{TIue3;Z1f+iW%U5(J7o`v|qqZNaq0z2Pce+ON7D&L*9}u|K z8*JO?aV-+j^M+vLCUYV-RE1Ja{rz#Ikehz-K zWYHpwZ#sG#g?}@8bI2`GyT07`z!AShIhq*J+5k7v{YP(`X`Ji3W|DrD$0={oYysk! z@F)xCU^BBW&%G;z(OlQUrT4@@0p>+`UpaEVo_^{E2F)N$zuZfzAzP89F?!Rd?}17j z6Eo$s-7l((LLnh22&?}{n};;pePJQ^E$VMAo{#qqm*7<^zx%6hNqti*lHb2y|8!Sd zh*R!T$+!)9fw2<#=tFz>W17|$HYenqNtk}5vAMZ}V#G!t9k1@)4yf+Y3GLpkqi>r@ z3*W!mm129qe*V}z$KGQHI60?pd#Mv^{P*Nt-EGH}UR@lycjn&Kvrg!C0VOnI@tqmp-dZ2wFa(b!rGV3W=I5a~ zTfaxn0MS2rQh?;S`dx>A(dqhXE8HX$$cPrPHGY)`Z&F!B#WJQ0w2~1qsU0_VEOrT% zcNDt1D{iA4%?VFrwo*Q{H2V3nS1ZAjVvn3Yy~M`Goz~1(=64cbn8HQ}9!A{)^cW`_ z>IDQ&jo=b3e?VUYG|VX}-MM$~`_vVRyM!7s;9@4_PncXan#)7Ff20@(Y24N08#M}0 zPSqU&Q9kx!<9%jekyuvx`}^~3;O0skVfdB68P?P8Qgkn-st(oysT(~4-mfd(ji zc(6Uynr3%@XI$!0z!wfcq1oMeaqZ2I=6*uyA~y~P>v!-y{r2zwU0dtAd2`;>71-c_ zwbL6LOETw#3HRmBtsZ$U@lb51g12{1y>El zlUeIG@N}7$BD-$cH3tN*yPTLaTD!QD;Bl`QbuaDOIXo`}H9ePbx%K>k2H!D#;#DtH zXoYvVtqPI%H-U(ab+_nBYdGM&G|VWGEWYO$7`|ka++g8L3X=!jPFoMNhmiqx&q86p zV_WJ<(tW{8<&o-w?tC;V7kJXZ+?vXQnVptP+F zKVq$0Wew1cPY=WLXyaESI%0u<5wlXa0m847_1fUf!Mb%TrTM)4vLQmNq29fxcgxmU zD08E+_q90H8W`$YxHk3Z^c5wNIQ?K5 zK^98~G;Ij``gXEsf?C6!Uwc+~HdZ7M6mOP3>)pChzAsL2+^Us{8lNuJevX;e+qKm1 zDDD>2O-guG7J!|zS%E*wJ&qTJF{?3L&R^`W`0H2nk~2r%2Wx_9QQW%2$$=({HVCSQQI``=R^0*a zK5!riA|nY5Qu#YY(Yz4W%i!YcGM^rl^ZUqjzglj;p)}9o3+Ov-7s`+XflZcM-yIn2 z`@#1Zl-;8-Tk-?vMKoAgH@#**FhQJ=)HA2b&TmHz;@PobRu`q(>ws5=Se)I4Ei|k< z4kq?})}&AjSo~eb4Ba-{;^=Td7cA3K2K?1^-jRA=p6N#Jzz}`8175ysHt&mQ48+8P z?13E#Aeb1$S@7EKHY;MPOzc!2oNk(d>FGcA>ddeFM$J0SuFLa2(bOHkOD-(Xn9cJN zTsL*^P@@IVIz~r_zOK&{I+lK^Z`9lc2n{=KQr3&i%+qJL7~Q-eyFD;?dwZeZA}bde zhlatA0Z&Am+HCo_ty%kaS&H1TN-$v-7&C?&+@!AO9170wqPaORJ2qRCgtpB#nO1JC zrnx=(aL5?^Nis8|G1$9%cP!5yA?Md`oa20S@N5l1%g9CIq8zUuIqS^yl@I0)4+P-k z{3m2>+%jiQvTK~0zv(%qi}tD(7Bq8qaB^C;PqE;U@#XnvHvgEzx%ew5X7ZFNpA!-i ziuz{<&ftBxT-9^mJ}c^HH?e8olcMF#>-%iVaBXbRtV|qMpV~%8M~6zu=MG*O9XoT~iU;17;_ropCyyU@sjLlvxe?Luu8~unw0zB)<4Ev0o7o`|-#Uupd%WHLW#901NA8_a zgKq>6ndV>G5aT24O~wSk$-WpBMSha-_RVga2PxefDYB?VR85gMWJ;x2q|hkby`6&REIyEB458tEVsTo?euT{j*1(a z9|$UkH-r{AkIoB$v4Cs`ZQvGVOJ#{>!O}C6b}6prn1%#KX_%bACZSi;KDCccre-C1 zij^NdS+TIRN___GJhp;U`F&y{2~xMwdU|QI!)vYW9Guj2^Zk9pf3zBt&9QkL-eq2% zkyB4ABRji%3dKY>r*xVho_Y7GEfMI#>x=Laf;`FWK?#Z5Q9JUXY|Y{qO79?aVL+gC za_ripcrRvr`;1*lM#cjsgPOZdU}M;}eRqc*!+uYQN;<7*UL^ZYK1yPH4z ze7_UX?q;p1BH2~%oayhjT_25bmuOb53*-#$@ky^;;j{Ckv(D)1xz8 zK0An$%vk&7%v2@*)OE z0tf#t&Gby@^_I{;u+bpAr_;|7ojy_P&kZ78J29_v z(e&7_wd@R{BCf}N_TI%6{(JW>LgWMad*<(tubgOSv*f*KlkAmwF!qQ^=!e*kP#@vs~yKJlO3`Ij|V1RQG{(L4=XI``IqFQ6!#?!Ig z{Wx9hhp4|%VVk)lB5Fp;?-N4n=!-sR*pBwyxb5=mIn^Dz+16{q8LVsyeN}Uyb+mt# zwOZ}h=b|f}E3Aol5P}R+sj^be*7ceqnx%f!uh)>HThyZto==tr4ySPo-X`=Yk!^_d z+BvN;9oMbx<<@Vfhl2yWpicYukH5VZ#{V6AOY~&f%P)N#*^U>7Jp|%VUcS0(x%IPn!^S|e8J=d{ zx)BZU^lcLc6!s+m;`T;*BABiJ`jxh|i&s-Cv2owjvpYw%rpP9uUIIQd(Y@n+_`zPocd;6)70f(%6~<|bp#~?5JBr0pVZlk1VQabq{Z2Z zqf30(KCZt8(A0=uq+Z=MK7Y(9p~VZ~(6A-?qwF>z%t!L#Dpxht`V zuz48+54TFOrsR`#;vRog$-!E zFF7pk^qAGJsfiF39u6_=!J##%LaA;H^2LOvOef>y{uSBJV(nq8U{?YhfpJP@FUw60 znvV@S$m|r0jdN7g8zNcDJ9$hF6C`K`O~bXc{C~yeUAoX()Q%u^ESor3D!*NPxcy9_ zj}OJFmoHvuYxel;a_iRp`x+t@Y$-d4+xA{DP%xs_B+F)gFDH1Z3Io%cwNcRh3(NZ% zgE6S?8bgOviooNUNVfG%d9m@B1F!G2ZVc?s`@xYKJiB%L)~R##a0A65N9T(o=fBx+j7Vm|oT3K0dw(5QT^V&|?J-$R1zSP0Q z91b9zJ-;N#JrT`q(*#$&QC_AEkCMc*w{6-t(&tMgmd&hYV24)Xwq2C!G?#okC?htW z5X|m_UL&rr9GuiNeCW`<^)F@DWnMTRQ*PaRXI#&b|K(ly{Ps;WPA0Z}sVv*HZ#@rF z*h+jsG1uIpPILGZk*uLtTq{YJMtNJFjeV=kQ#`m_8hJT?1XHjxF1%aIkM?x_FHcx* zoyM5E@y|Cl&Gd>3@6R$`zPU+0>4&h$} zhUBF!qZMz=bPZ(z{FhO~#p!H>D|`FjW<2N5SGRsMqxSFbv5I5< z>C-`UWkPd~Lh#EFA{G|wzgACqRn^sTxZ#p-jdt)GsATl$~KFEi!EcN0`BFTy>D=WE) zRRc|#UEvfUuVsS4{?yfR>KnYW+8RKw1ryu1Hmc~gu*un(bsTHt(;=_+03mZY#bp@|O*wF|ywL{@-5|N1{%+B-Jh<>?e0w z>2^LnFs@UF4g(t^krWub>-``O7YJaT4KygiVs*#FjVUvTNb(|yB_FOo(M_5jB5wMW zn>*^_)Au@miMNtd!`()1{qW?ShE`3T_R9a;xB&#BswN2m)_dPFZk#=Q8g0j3Bz@Bn zRwJY4bF-OKaRioXAWDxOEj2rI7d!$YFtFH(L_58=tB9(AJ0YKOc>}ZOWr~27VP~BP z42*&H{?mow{a#Se1ow2zDKoR(LG~Y;_$SBC1nP28=*C`hreb-)`e-}t)xjulwA@SuLZWY=8b_ipAt(u*J%!1 z$Yi$cE|OnjgT{tyWIB7(1=n;^a6<4{q>n#YxUwETV(~bD81fTAeeK||S8ImNgCjp` z+XHX=#r4eF*neJ^#r=po^YhQ=E2}K2=)%_g6LcH=K3OPTK)DfqBbcX|&)2&LUWjhk zK3Yf=p0YcCm%mVuV~v;=sBW!azxlRQerCy-Hu;SUTwKO;QJHmlCmMETg4e$CzZY{j zk8UGmwiCBk=2PE0vaWb|`07zYqnb&RKEZ8LJwo-;MCciHH1}}7lf%?|zdImlH(Cz> z?4x+FL){V;XT=EvGSl&7z?_+Im*+ofWE!lT<}JNGb>z>YqFDnZujajat}{8Qi6)d^ zF!xjPn9wGpK2+V3j23weY{TCN<>Z=%BPmCl3$n^ezA88EUgqFhIh@r6Q^tkj^z7_L zOgHv;d!Op|e88E_H>F;k_7~SyR9D+FETGnpG*%pIyOlhd_FsAg9yoYLhdlCluoaP- z6g+{`bH>#<7Y_{289q=u;V|e4@S5N?nw~CSCfBOsZ~ONy3kHtl61UesIWREC06t1f_=#n-~8{r=p{E*9;?Z z(~C1$G-u9642}ky_mY?heOzTMOrsCUBj) zb<_C7{Dzwoe_Ib}qAk)bpxbAAI*x5uCDvi_2=VsD^+TRxI7oFSF{=sLb+}MVR+&=1 z+RIthAj{Oa_3uSvxq>M7CxHZTg_%ma3A_4vg>|m&>z(b&KZwrX;X+@@(VLn&2ChC3 zBxs`5ga-?9BaH_xJxciu3jV3%#|yrGovNQ;Cm!?W*Rz${6oRvE`Fne@%doG(-KL@` zG&F2Thz7sq0!U)kL+#2xKl>0#&uvbU7`TVYomi5bX1Dh3jq_Bl7kOwn>%aFInF z7uO6{P42@=dQU=4n2J1j+G19;w_LB$X8GD=9sWH#5WKK32ispQmmwB9xv>16@3R-d@P!-&0hEWyz*a!CV_^@B%k>NjmX@B(gf zR3SKONf*g;dOlTE_VJr^YVD_(feREPeoyVej#FO>`uba}ITzanI-kdHT{u?{IwU1p z(y&|%6p2t5wYoC@_4UPfGpX{`gKgo1f}-S*qK?l8dpp~Dp?4I63phWSrxu*4yw$TRhMdKq6qM#T1zSe1u0b{Nsov6`E-bKKh%kM#! zy>@N?hgdb+msjHE-Tk2s_26^#R`g1$XLPzg6@)Q3QP{6pGji#D{|`Gi^5%D*<1#Bq z&VY~4j9<5eR*_(t*0<}t<4t8ZAe53rz>~T{znQZYa&9 z0n(enGXaI^OMkm|cZlmWDo9kZmfG5SSeU0NR|SO2hkL>bnU*ePv7O6_u3qie}7gl0+!9x z;#oNSv0HK46$~GULzH5cCSa63n(`LNRW8U;+dgV#3wKcD!2#_7R~+owM^RCGQ$?hk z)j$nE@HX7XbR9hIzUqn#i$x1IG#?FB*e)&L)4A){e+e%3Ac?2u680>zvf6?S=<0^~ zR(V9Gz;Og$>=4TJ;KHVD_A<2_ot@Qp#}Gy%MO$E~2IEd>wg`O6uQCA?g#cfPV}6~~ zbc^^JE`BIOezU7kD*yYfK1UYIi%N>nq6Rz@aMDL~T1pQ!5w;1&#>Ug8wZ5d>o-8D# zL38u2X!y{0-kO=2k%nGcHHe8BH41vkcIZqv=Qd(#44a<+{_rZ?&-h%j10#X!&CjvR zM-Z0I=6Gjj(AL~?E}Az+X>;#@8*RZlIJp2y^+;|p$}`w-rYGgin|K+SRVU61SZiQ* z2ACNf5r@CrF28wPGDw^T#w_aRyEggQ%MF6j{&#I4JT@0l*WB2hs@+TW^rfH0xp(qwYnpgLp5aM@7Dwrx&DSX3FgOQShsQ$kG{Mo-}Pe5Ml z`SXv-ruq8kf?#n6Qu2qH1`fy5KMZS6s4YwQqh7Ll%wpW|q5r?+9q>u(I5wW(mN)@D z2(0P}m#jL;2`Qjol8Cx14D(96dNAuwZ^#|{+Ps~5`r`*qAKHQsQ@@mf->N!N&@y`Oh`*sD>!#IdA71w(DV1JMG zI;2bZd)`rXTIHilI%`|+xB&u-A@8L6hD5r3(W5{l5;1otR@lUal{Q|qOJxCUady7T zQn-89ZsCm5=tIjPaxm3}g(mYlIJ8@wfMgNdWa0#KpSe|9B+D=M5waNZTZC6u^XBop zy+4y!`%TaL^5rnDcfUT4e(Ae0Wi|00(Dcd)GfNE~dbw|$#6o1t!`PuoH!H($nEkd7 z3%ih{p=kr-q{kDUca2HQ9S!jAKq}DZ7YK7^C8DDmxyVHDGws9h(I69*^raH=9=$bgu95%U3Jn(NW#}`=>$^jSop(qo$R%-}HGI zE2kiPgGI=}t$C3OYVVFG-hFxT>_b(9aQHpkl^=Hd^5}2GGYb8DzD06NJXn{71^&Luj#2x3*-(R z1oV2oK@=SbJxc=blA=$srB%eHr+3KJ`eYocRi5$wMny} zvr@fc7)S!gB(;mTSr<7YGutfAJ?m4NYIXMJ>d@Hgd*jJx7HAI@3!FjX?#j`(yk6dp zotk48qPKmsv2ok_tHTZkTeT$n0`vlQHFuADl*q~|AUK#KW%}vA)~tE?`6EFh_C&h% z4YP8_tD+%}y?fU=J8F|&ohHxEEle-xd*{wgONpJ%XE=leG=@sL?jN-<``+HQCoCG} zlhlq?SifC3kD%#!)6ksc1)lrlUH$@=3R}^kY2U9Ns%3H-H0I6BJo?mP!~bCK&7-OA z-?wkg1Eq{Lk8Zc>OQD$RwGG$K(O z&+DV_bU*j-yVrW2_5AbP-?hHix~^jH&*wd!=W!m#ah~s{O7)1C3N{R{Rx&I5t#k{R zgqND+F-AUq#R?D91ky)sB{wOTLvFgeLGXz^3+5FhOhMPn9RM{DS6%t}6s{TWc3oX7 z?TCaIs$P|M2#&P1=cD`OIt+Q#j5(V5LDz#(E!wW)-GBb`g{|w|-rluXxbQs%R+f8E zT9L^a(_^RPT?{@Kl3^yvUI`_;duTNckB^^q|ZCY@$`dO~6nY3@n zQc@*C~K z%t#Vc;)9&Js0R;+OL|*%dA~FH+k}LV)qh&~j_nt9h<2*fRB6&ZvZck=n|m&d4!guR&M9b9ntl)&ST902H*bAg|SX{`{IbORM6){#b>EYvML{ z%@yhafdX5ChIV}|SE((sZ3F@T`4A7IWb^_mD=)`N*z|lyb^{2=8>8ux-jf>?YQSyP zy7LDBrvm!=7e5sMYcHl5nD@K#e>}3Jxan}OxQ>(|HJPG4Cf z?Lr1I#l;22=OzAVP+lx|K`*bLEOa4UfY*{@;P$XY3HW)+mSvKm#)sG=MB4zgA)nf@ z0$C^)US9{Z`qcI(zAYovk&;D`X8C*=KigZn5cB_x^A6^5b7+!6ePwPv|IegIiZ z@*7R3=6~^F7SVR0#?2g z3RR8k8x-E|-0glBnQR3)55Dmo*sXxZrp9n4x8a9`qq$Wh=(%sGGtLlF1!1u$D7A95 zrI|G4i;%>g%~&tOTe3z36u%K87YYQ6!ltd^bZ?wfg`1nYbRsdOb!( z8;b}6OwI=b_{PmxpfZOA(71lCt(+@=Omdy+w6h6M@n1jswJx1V$o_Xf{V)b#*?D>R z`E{CV){=4iF9*A23%N?or2mZvKg{ekw2`a04Q|{|_NJh}t)Z~FOMappT^ksrx7a7} zi=aF!`%sb<#a$%SC$=yN4~A!%l$Vs?BI`>Q_xiPq+v>FI!KYX$sYAglL->g*$J5ugG~p+dx3l7;?h$^W#NJaV~6({muw}#--(?isRUg} z`+CZw!onO-P(mXI=<->zZzAIWyf%_c6>Q0jW*TB~Y-_#6BeTZZae&&`a6%YijA$Pu zyYWl8Y45+2Jo=5M>%C<~S>kR6TK}2pc9VEf+XOH8Q&Xcac`|i~zseCW&oVWy7Zdu~ zlk`x?CSl2#yddv!C}A|g4AcXPGQkwvupr^SK!#@QFm;2AqxTuMGY*&JJF0)AR>2o* z510RW>|GFcV%Lby5^QwzoFzYhmW#09LmeLzQ&v<&HKKW|(?2E-n>F#zyyrZH_0-TN zY~-bHY&g8_9)w@_hvWA0~#H*6Bo;OJjsq*P_TU93o(XwJ3`OZRBUU7V*%wF zH4P1XN+%4L+N{+SDsx;I5GEl4-w9JcasBe~>pp0d@rRiKD?!;IzYVmKW5NRtQ4@z0 zfe*uFi=~s$yBjU=>nNXcLxqkDtYt1=%PmiQh8r7WE&>UhWU-6GpqA91;x?$aYd7fN zn-v@DLoRo$1wgwg4zqeyZCvjL35Gg@?u}f%;f9y?jge1-Jxo>onz*k=Qp;kEdb?W* z`;{(U6>k_9@FPz59v3Z`PRsXFrftouZ5GR|mTF8JZ#}bk!*SW8pBI|{X5UvYA2Nhm zYTmWzP2|PkKfx7sV?5Qni#B{pi{?VTvVNSlk|eITAY*|3NOo}WpvJ4q-Jfj`R#di3 z=0*#!fdjEudiSpG`jlff4hKf8!eMAcgWbx6vjdidE4SPZf#Ro6zn$msA%u0nEZOVj z|I~lCh5MB#0c-2q;#IE#jt=Q>vMp3`P@Xa+>G+%a4a?5ozGS7nYR#J5d-txce7AW- zzd_epP-{5WS&4G>P2nruEvx0a9^i_%j3U8ui(`$o4}+G+{(#D>caKirJx-Pi)nl=x>BE%YFq zQP{Sg zh!-NFR620{`uL|#efKEEpbrSc=q1-k@LO9Ql%AeWv4oJ>O8eay^9l&Q!C;6yI)4!x ztGV>-(P>d_`9ppJ?QX&NZZ>Yk-=2K`J=;Ul6)WwhPwzY&dvOJE%ZxeKn|&8qQeI4e z_sAlHt|N5&!}^Bc_Ji_ZkG&ah_8!w)Jp=Be2Y3$*5)4v9f`em>=56K~5Si`{Y>Vd| z)sgPz{(h`0fC8LEy7r$r1RJG{7k>tPO7n)&200g@cOEJ-0ADO%p_+vW^j5y-wvnV= zW$EyG$4K+X%%^0mgTM-eoidy4OxcRJqQRp)Y8dfc_Zs8x1iJhs^|ga1HrBSCT=h$3 zild_^+%E*A;aex|4k{F!M=&5@P(UXmUjrF6Iro|lNQ<$?FjuaObdx7-+_kII*_VJY zXuK~`q{8(^E6@`x16rLP9N$=N-(zn$X?=(+yf3_31y&&Z3WWp^*iV9DL59QXlghd#}WjE)23iSOR_Q$Paqc#5tDYNpg zNx0#hi$gHazjLS5+*@nePS~IL%ED!U+6~iIumuO?`32{OCFoZrHg$>wv=*kDXdU3d zg~h-IL^d)M57_wc`$y)6dgMAqc5^%G@l=#&@7QHFaOb&bI&xkw&BAF^sayPHyvh=AAy&`KSs*-xm;2h6;|wDo#&$B3KKT{4jE@ zkDk>e>X`mCfYWJMcGEfn_f@Qy>C=s4(sr#tcknHc9zZ3!H{!!`9nc7WnGyo5?mGwe zrtMb+=^%IqZeh8oLvSdXsJb0QtqbK-6_vV#?pxiC7A+ilVe}udN;}B0ASgXLba?xh z=kKpRGw)EX2X_t)Yk6{@HC&T`S5`Tmt{auhQ)eGOTo^Eab4fL*A2ltx>s~-g7aaFt zF@cAEC@x+A+G#8q>QS)f`EvzlFudxVYX|?B%1uGpN6F-Vg^Zo;2{}n)l)R!dn8NR{-A#eEP|g z!?BmfH0NCUOAoa-9yN)<(tRIa{JfJ8Kq&_Mf84xTGT>Ucre@u_^9*%;0Jy=BZ%0&7R3?ELX!TdXSwsnbH zFe6lb)5X%T(94@W3$9$%ritwd`xsBks}!IIJ%*uEw14r1mi2bKS3Y!Hv;zGt2NFGV zFEAOS?p2+wXt>i@$*V6+SwPL%xhiQ)%BJJrM{W3B1y;hj8LU0`zR~CPQ-^5wvwW3S z{^Doqrt!)L-XsrdStRud7_anM)~N@SdLaglw@*w;a{Z)Qv0QI}RfDS(LQ|^?71FmuMQq2!pHtuxiAQ?O4s!V1+xaGLf zCqJ&Rd!VYUypt=Cd@DGyU%MkzUG6wtG^a zUu`{Cu2L;d+;Md7jmG43%8i?U0@$l1t`jEKMS%%HguyD0AiK6oM9R^-KIhi0=Jg?} zpI#ri_)A%cpokF0CDrFpXTVePvU$xMU+WEXv}B1VPv&H2cZ`$Gf2~GInv6iIaf}2r`|a2VdX#+`99&CQWyt|&^Tt~$Qip! z1wVT_hx|ei=9uX8G$OuD(BrP+evNR1uaSDifNYoQ&{VMZN}S~Uh={s=rw z0XOPZPk#wUHPl7VUlYf6ia3-MIUOp>q$o6kWsYa1q2)g(yh)a}`}BJMqJK}uEs$7Q z(RJ}4FPP30$2hrqd>Q^k#a)tl^PYj{GXOtUBBaSS<1^V%!l?Sor@w6V`$x+kBKWsQ zt3*&n_Yy^LZ!R>BN!D@boF;otUcoc_+P<5A;M2;Ut=qJj0U?)k>Z)Y2SC^jx@bE5A z9HIR4t<-8G2_k{{>Q$@eT^;%H(#k9T!DYWc)z8ZNs`;7 zNaD(U^0|@xDwUoJ!?sDL{XhA-f59%Z6~Hqav9PF`58aaARgy|A{3?$EQPzfLif785 z`-$z3ZqZ05sG=x7K2k6H%FKzUWQ9*Dx=gUOEyTczdO*es9p8z7ZUX)~vc#%3I_iPj zzz3lbW{ru3ur2KC?FNkGej!Y0-($pgxXKe3=zG^kErAncN-lug0Krh^P51Gc;%?n@ z$~(;0rBGzsTW9mniRnT2#VMNhuEcr8{)*R6(;;E17pc5V(0yz*8)BK&&Bfpidf^Ip4Q0a za9*q^$tE15u=)047=QY|ocEv?;s|%&?{7C{?eY45I{zSMx}p#F{#(FIt@yVE?CG%AEDtL_*vSeZuXID5pTq5R>Y^-8(wrx>g4C}q|%4N5(djX;ZAb$V}8YEhB7 z-`Ltv^Uuvl0(=iK5g9DaSZ|aTmNd;M!8P)L@xrzZ^+L`}gw5?jiedWa6zC%M!#E~K z$NoNZwRH=}K>9BUB1&pprfXs^^op|t{lQkRQ|Hc^pQMZKAKF0sxrkZ=V-c}TDlnCx z#@^Rt&hMhz*s1Jb#y6Ifk;1qagKKh?$ z0n*yK{7L3vn&yYbtN7oJ@3&;+l@1aw5;{g};<(|JG4-&U8tQ+U7fJUn@XBnm+W!v$ z;DznFqmIL?oSrh@wO6mEHJ?XS3^gGmhY}+6anW<@->V5is^>C^#Lthiu$k|L2a!u7 z+kXDls#~c})4gdzE=K{AV2g#2e7i5Tp&=Gi+W##Q93CLRJR<x?b;y-pqN-^1<;>kCkYDs^V56a;~wT41oFuP)P3Ti<>peFIU6=+{NjmyqfC z_Uh7|IlAvHXNtwLzXH(r@4uAT<&Tb!C;3@tJh3k@d6N)Ng?~n9%a#eu)RilZltw=oEON)+PoUj@yH{IXp4 zp5I!76U|$+AO#Zwa^C@+Tjg5PiFXw|F09Rgjm^59ptSc$!FnXY0#%@d!9#}V#;eTJ z_4|Da__XegZkm7Hx_G1F_M_{fKu&#^T4ukQa`toErpt?twbhYm{{w`!0uivMw2m+s zvRujUXuBIrf~yDHPoJ)Kzy1^83wr?p;kr&^XHpCk@(Myp2K~c;U7o!Vg*^5qFGZ=r zQlJM(uZ}%yj5h{54bF0{0D^&k)(R*Ps!lAh&xU7Kefm^ladmQFZ`vo{hw~D0yx*bnNXqg zF>treZu5;xIvZGr%KHj?CHtIgS9#w@E^^0TT`Sw>LjMrpFIG!UZS5+vo-qc47rA7+ zTeM)-z{xmlvR#eWKD2xyeq8&tW%FqHVN^}XZxGDM;SLH!#Cylvs$745r;lq^dSgr1n3272 z78LBxb?-6=g4Fr*x_>TRRrDU&nIwbdP0~K@>GgP}%G}2fAErR~x^>H{_dAuZJ=*`r zDxG50V`p|lHrRzgenOIsJQbXZy1$&c-+r?dTi(47^~!sI7K4evsFRKUJ0d^ z;I6!Rb5qF3J@3h=Ck>;d&sl|%+p)={{;9=@e5xe;YY@_K#{GxQ4jD9n2Ho2{cfb{C!QUxAlEl3Amcyz^;gRn-AF!a!kI zg9J5b))+rPP7s-W+%jG&{l=7n-r-E?a$)5>Iyp7Oo~lrgN43d*9f zEwN613zl0}2BCk~o;}sY!);%TH&twYV~uJ_y#xn>M)K50{0U4(jOeh{I>ku+Z>-3g z$9Tzg*u^2khK+94{Rf+lJOupvXjC@BZ&Tt~ z2E{mfTLx@R&bmCKg5qoqa24Q&B)DRyPhT05%W_1gGMVxL&-d-yx3_P<$By$)%*^UZ zvZOw#{=V$fmoLjv7@s^jGiCnPqqVK%eGCG#A%2B~P{|PP^GuV;9Rd7+kQuFFC`W`4PgF>@${EsOgUKKL16kUY9{ddgAgR$EOBH3O4&+ACzo?Uh*wjv_JP;crVz zNrd~HHOU93eg0f9SEB(aBvrhQ!A-ILm}Rw}l^(vaflfs1nm6nj%0`e&V}4G&P;h1h zbpl3-%Wrc)07ogjBl3Q34wfhZ-Rx91mGMj0&L24AtZRy6!mpv$!`ureb5uWnZs(C$ zs|+Eus=9jEkReXWV^8k8d!Dg-!~_OqQORuAwrx@AB?nFt?7ooQQt^n!g=@Z=-mEQm zxv=S%J%qbNq}VXbcW*5qD~CjW7|KHO@$fFHPHo6g+zRK>U% zH;?OZTu(=OxQCZiGfSJ&_?tK8`uh4NChOo?L5lZnsNXPdT&p;ZqK0-)HSRS0Qr>lL zKEJx!)3d#X33flXN_M)dojo|~0ffYYCr^;Q4sPsnJ^Nwn-b*@Ij3nc;w;fs2s4T*I zkfxNhN_6(V+H{MBD#9%$5=avo9D-J24rp*csUXZA*b1d8=eoe`Wg3t)sS4#ou_e2a$omEdj&efO?L!ogTA1w9P%e-e`JuSRDPwlz80OeA!<+ z!j=usMM#O{IbeF;v0%#!Uq{r}MFj`b+59cF8@42dk5INAI@_Bi-SwQk3|<=$y`Z-t zOuHrSYrfqjKp}_4vCuN-I%Vm`)^Ous4Ab1^Vx`Jlz2(M-vo1T-_fc+C%u}RbGvTKo zHxw+D$OV;@mD7p0c*~(fHGD;OdIuT~_-1KFpnUs9qfZqgb zl6yf?^Ln{P4Vah zwk@=6UwvS#cc%r;kMSpBIN{@BsW5S>^@=r-=hD`^x^m#KUB&9|ZeRa>vXQ~&c0IQJ zwRn8oBg&9W!}+skwb#2B4p02hBgq>h`P-S9@J@|h<*3j0K9DSb%)v>WBKy2vyoaK; zrn5iCZB~R1L_CmeR~S!AVgH>HdJ*m39sZsJ)-wRRm zE!*VO4-cvJh~z1VcGNMw+l4t3e{7g>4jW*?R|wL|^&w?e z)omh8m0FDsrgv!SvaYxTc%C_-5fZ8Pr(6m1hTmAzfh#L3D<_wBoAc{<&+AJMWI)hp z*5y4nHG=7*_n;*(I#4w}lORTPz9m;=D)}em&&b>D1goxXy3kDWW?0KM1Y?cfB2SxQJyAU6Fx6UVSF4*lWYa4?TrrdX zxfnNH7j(4t0Xk1}^H@!Z^|1crwH3LyLj;9F`%Q~uC1&Dw zP4!zbh;90|YN*GO6m_Ts?n&yIGlw7PTWDBU_7a$VyZYY}qshs^4rl2IdDLyXRO2;+ z@t9?wQt_%*{0Njn{t0z#4)WQ(fx@_2&M$d~R5=nf@xtMZ3}5aq7%mH1*9%P&pecmy z+?js%?9snpbA%?}q;y_hsZRagoA4`J6sOt(P7!b)l-IeEiErPoICugla3IDF*?TA= z3NH>&iLC+ugopa^Xqc?%=$9_Nygz>aZ0hx?00mD_lE6}L-)%l?O~+%)^}jSMLPf4( zTKqt1a9rBu@D2u@=0I4mQ4NwxcW(1i#d9Fsy<@rz*qE3G1`}rzK3S?(n@-$UJ1gt- zU~tpJ0LTCF&ZE|>S~Z@US3-i;Gi^N{$1-phb4#}RPI?}Jw90GE0!f#=Z3GxdHn`E? z?!c4^;inrF?S)wVQ@Ek>LbswZ1wMi+K*b&CKuFnhI4`ziM#3O9veo2|C4ae-hn4mB z0q<|@7w#?~z0D+B<%8fn{bNA>&BcU4`G0=&e=!38giv$d9sP2C?$-|WA|nA-_`JQ5ygZqjhH%A@?^iBhX#Q3rK$R_vknZ7JgmCBk z+@noC!!K>y*A;g6b#W6YmauvM$q45=1)B<*PJR#!1$tE5HJ5DdV*HPF>@!LR`|p9# z6;Rt{hc>Yt90lexWa%c;v{v(=liRQFy;)}2wi|S9J_&L*Z}7kMB0ZR-px0tFN!%g( zs&5V{{|S^0QFMdI=44_f3~zCf>5KN?!LE z{|)#eRDI(o9z>3y`_v+IRqC}`T&qsW<_F49prOGe_weztec0ys=L3A3Nc1#fwPL1k z;13ZVNEZ;`|!a=4mq)S-bcJHYpTjR z%cI_E4OXhvQeu8LU+IZmN7MPhxBbs=nsXkVTefj_q=+X_CgP`vp3+0|ukml^)ptVv+HK@$m0ExsX+ z@SzSXutjtReP1~DW5d?%Pg3flE-r95m)qq0N^kG`I9Xr>B9WMzPgstg^pM&5!uqzY zH-kR%T3uCDvDMud+cmOQsGAkG;WFaH?}s@q@CywjSDaC3W)&eoN+<&R_w7rf|G=yM z(JlOJkd*xe*5mDC&{y2|zu^4Zrn{mvd~)0*2YY)~IrU}83y@sRu(b%yhTQ2YGuIz& zt`(UL=;F|}jlVqV!Y?u2de~tPBhSjoadUmSq}HH9?;zJBjAf~;{yDxzfTp7*nV)49 zKYq+xJAPG()F!Mut`%n7|6Cg|c((bZHDY)p|0Zj%QsQTPP?-6TFnsienR<~wjG{QG zHUO3r^nAW@&_W;Go$KPo3mUkpN6o?$1M=pc9cGnot>I`2v5D^6AHcx9ObRJtN zB9ShcIy2*redB}|p7@s{NpOU6mSi3{U;LK`0v31g-o%QLmzKyCmfj$!1mouc!Pm-_6n>2u13Z z@oJq#LkflG@#7)e=(g$@^zEE_jY0o;i?=d`2D(pEl1dXV3g6`yf6g8wk0KQH4zPJD255u_o(#Hyw_Ku9 z=I&TZ+rwA9%({QS^treru5Vlo&_|d?0AAAn?x92b4{o(27@rkK$469FWH=u5blKXo zdv{_M3<4Koo(vS0JWILYCS0Yzy?74nIY_0Jwf+n^=@m!X9MYc6SR_*$()KRZ?1xe}1#i~}#yDW{j#d z^l@ayg*6=}aidR3P9_v8>$N^EGXH}IBypyPo_lNl5K#hzN!Y*Jx{{|_iUXc!sRMlo z;`EgH))p2D`L5GGxOw$zmRDFf!qD(@wAkMl11jj)rPZDelm{TDaQK*+nr7wP3mWyM zTeoRvhYI$B5Y-l~?c=#`0x1h%7^&ccxk*#T>mD8iWDUf{F-;g@d>(i;)$=`mlD5m1 zEz^FGpw#?YU)O=@QBl)o&+aiYXyfH>c}s5yf~P%aN>wQ|g9E^L;WIqHb#8Lg>fv-X zw0z*w_~pc!t&cC4*EKx9RJk|dUZ%&}HLY838S4JwWQQ}|t%KX%8hUnNVbc(mbf?{C zx<$WUk~&3t`_!=dq+3J1wkKFwoeT;Lu}W%r-eHz>)v}kZ4>wn|NmFPRGi{NdWZ?aB zW^wPlJ?C-{RMy=xH{3J0)c4-GgWnEp9bc6icczkVRn<`3SZ0P0+~`G#IJtE2w=pg^ zf2elT>sm&(z*-%iXTVW6%p1&5I_5CsAo*?>HljyXl)VeiHoopJJ zCM1MsyB?S$vDSQcKB?F6@!?Y9ge zGF1xh1lXL|Fp?`Ks#Z#Vt4Iwq_q0*;h1FSqD$@7;vEywg`WqQ2MwgI z;TWse{-@5-rzdDM0E-i)7?_^yR`IRdwaY_I zu)1`I&9Ql-WN@cup04K3du9GY=6~)Ii9h00KTtYUr0P)(h?>)7CuVn0Uxs;!pPpb}b#t zZQ~xbh>dG!r!jF~mZ8xYXzQ3PuyHuv!^MLf?FUpEklD~VmjXZDKhX9bj%s=i=!>7^ zL<7$dd&3Mwyd(6Q<=Do`c!@Fct_OI z)8<4z-bnQolcEV!shA@}jd`k8R=jiwL~-shp=ke?S(!L~(-%1vRWnqtJQdoLs=7hm z4V%_;jw87J^!fAg5MOGUOq23J9{Lk-hu_k zzF%Fa6)v7J-o17jLU&9HpmyS3zPIhsXdC#C`;7I64)yvW+76q49cVUkj!8|m1LYyf zL_$mwXe(_gf<81=>Nji*>HtQGm6ABE`Gh`tB|l_IA4Gw%XWbgP~EMG0+ZAripBI)f(GEcS~= zRo&qY&ZB6D+aSN+fC+&fE6UK&9p!P45)p*z9igH26DM-And!tCC1X-SK(p)a`yQ@4 zn`ySP-9k0tC$<$lJ~Vycb+zuNwkJ)-TpbYvPhh&?_xV$&CMZl=Hr(p8Goc7EVLY)V zCc+eRKvkjxr_MM2?Ge@fB8L?vQDA&ty3Bk2Su=mP)aQ&0^+&f!*IZs+S)ZPqykq~< z?8L`zo~KgjJP0`%C6;ic(l=(^{#I9a!}}$5ijJ0T_~Wb>+2+H&F;`~&RB3C?Owo#h zQ&+vb)%DI}{jE>e=m?S*#X7!kjpxTdU}hn1A=Stu~B+@o^S0dDSmI*zYUT8P8Y6$|6z^5~JkHxY-SWs`S?hplB}c}WEZxM_ z$OX?oH_UyJ^@wg_qGJzRf1cIy%DaxWQBk+{h$CX=#5qPx9ej1$>bDNxR%V%m8P;By zG;@T7rfFulcuGX;!qH!}N<>Q9Lsh9XQ{o|Wh;vNLFPm<*wa=73cYqaff1$-XC6i)~ zEx>X4vxG4N0%pg&<>X|{aqf`3*Ir+%@~pM*m3@(sou{c*+wU9Fchsmqh;0spJ$`9A zZo`tDs)gAR9h3I#4t+8EgXp-`Sh1@@+RoyM<7NiA+Y8!W^^bHm$wOvn=Smf< zCOFkbx%gPuci!%Dao!}8z(X6urB6qWaLJPHwRUr7@u&}ThZ^16Yu@dkJFkojsz+91 zqyc3XGI~Tw$d&Z%pO!B_UK0{?)1>Hx(OsIC5q=Tc&URUE|80eP)u>M1;VY-<_BrEZ zf7&rIYwYbn$Ni!8vr5jYI>y{C?YL-yRoeI+I?vj<^qFL&vOY4gZ-HCt>;WhA^sX8- zv$2?|I8eML#lgeJ%70<+b#sDsW!m|J-mGt8s=hX(cUErf4wvcIOGR_VS)W?esstp6 z5^2jwni0OgZ=rsdR`;(AqM7S*wmi)9RjXGY>)u9v`R$j6LDKuFf!nuFfNSLIoAJdk zGRZ?!AfIS%UG(exzUA(_A5NaQu=Ui~2^&mC`mIYhF#gk5%V^yOv8j$iVfVlD{n4v; zpuFud)dyi0zIK{E>PU3QT9v{sC8AKBSx|7$q6-w03`uyH<&RP6Y3b>3Xb=Tc2|k$bJTX} zk8{ug(CTnKWJ!~Ly^j_TsCOImc&2+3oiBE|tIgD33~4bn_EdVaEX`|coc53LZy|rA z-ZMfxBiKchCADzBbvfSJzr`@7sW?GS-ie!E$jgp;mw$wv-$NN{oqvlxd^8;4GHmj< z40l%a_wU+lP*VQJ8AUVR1@s^5pJ|x#UZgOeVRu)pFc@ar*n^xyk}P)2)%2z23^(HdpA|e6J!i+O$NJ%P(p5%#vPP)JrzMM}>h=SAKD!ZLe#y`7>25 z*?b;G;fDpU#xE2zj2Zm@irT&j8~Ybux}xxXymXWnBP{&TVdX>oPCUQ!&(G<4V9S7O zYFA$fx>zlldbn&)e2bG8vipFS~ zMu;~#JakLdojY%!Y?qqRvL{LGXP{xvGq*n&%e1X~5-3uN=0*B4R0;}4%Wlc-zV!(C zmb&pYpZ%}l;E9bCc{2qCVQ~I65ZePv)3=Y533QOh2BwVh7I|9*g^i5%URJV&DW98X z>7Ut>H&Nw@6ciZaOhe(>HvMCAwPa1t@qYz{xqK*}&7knZ%v(y6T9v)5A%2Pf8pM!q z^x+5hZ%W=M|H&Khx#~RSjK6Qs zfBol@DcmS;o4fh{y;s_lBjt+iUn8gds-b8utN~tp&yq@mJvn@hg{gZlS&^2u!usR+ zWi3ay7nYovtdrYQ^?mq|cd9<=RQUHX@4l4h%=VLNC>4#6b^2u4)go6I=*<0 ziavbZpHV*RcQr{_{-Z~HPivJIwNbtB1tSiGXkZuDX@R2Bgn=?#RQ=}9*FMKz65qVU z&3nRx?ars-esvrcGV=Q>izAcqLmM#t48}>ZyR+~C3G)P^#YY|XCLE0_h(^b)Zj^7d zi#vP#xK(&qT7qt{%**2^Us{H1y@Y{C_Aakm3~=R z?rxOI-N271Dien$IVLvu{jC)GV95|Cf59`A1Ca;5;u{iHo&Dpd$TLHZq@VDt^YKLs11udlC6SZm>8fEH9xXym~KQP5wZ{ z6#G*i)>uy<{M?~8*g?}lmQ5VL@@b!Q1#UxYZ-YXeAiE$ghoJ23U1`=~W?XuDbm#$- zgFE~d>t=l$YGrxsA!{>#T$>kkJZKf?h_Bi>$)1SsmTjW!aLgzNdOUvO1j~)$j37cB z5j7PnQ3BOtM~?zT7U81~yDGvKT(WR_diaDRx}E5qGy!!U0XvBg5pD74V|xZXN%B~* zG;0x-V)#Jf^oz%=r|p`7X|w`_=SD);7x6p0E2HU-P^} zMO86P>}n;)cKSOHyT`xAIgYoPuxVQ2j=;Ne{QOtrWeO+ejbCLR)rN^pluADzh762t zra!DYK`M#9Xz8IiVFpVTUCTU4z634oh?Q@VHg0oRdCL!fyoPt%G{OA+1SQ!R_NE`o zFfb}X@lU@1XlJNqhc!(9QCxL+a6sEub>D9)V^{-bTqU!_M>s^HEYdK-*n6T;3# zDOJM>M}HhoNY`TnSo4B)>&B6g%W#p{efNFr#x^Azj?q+<+K2hVv-v|7+pmRDN1iXI z3)BcdCGr4{t7#B_SFIY9=(^q;!iVrcbjic$6f#@M?451TUUOjrw^}}Y@Idf|6=o8O zRR$|P+~Z}|uML}Xr5uS6wD}gq#6XFHiQU?(5Y+nWN z?V9Xbgwzri@CW>h*%rGUl1=pDSvEud!fJe zlGK^>o+aTXO#!GwLYz)$6MFoyJvbF99Ox*p%8QKE_;oI-I1CqT_x)X8+CD2S7_&6s zxMLZLeFzlL$Zl4TxZV4tmT-UA+5M)wGphnC+N@~jIYSPHx_Nj+-+k}5Azj~;PN`(r zi0$)obM1$8+u$_hinnm26rOp9Q{)Qxl9yiI_yN5@=vP+uD2{`iP`5zeRmKa9@5@%8 z;sw8DWnGk+(6$X;D^kAf?0Ku7yr%=(Y(GCazf5VMMrfRw(#h}X@JeP=KPrd065bD% z;F>jlbAf{-Y*9?ixJ~06%dnRK!=CVK=;ZP}EW!zKj|i=4fdv_As$wYMGAy>Vcjxyf z1q8ZRQvd*^fUCyQRWM{iunE}p?B=-Hajwztuz1~`aN#7>~(xzWVAeF z_DQ?10USsiOV!PcuB{gcXDk-D9K&Zc|5f|=%!a9>IvuRd>Q)sisgH?{9=`g6JpdsW zBUBVknlN_1s(dL?-l~OC+a4vOgG`mjgx5ZXB!~o$c*adCp?Wc6Mz@TFz?tWj{CW@pe0sOUe%SX_8-I^o zE=&qD!rrNm#qcg7b-+0;qU;F~%1LkDmV%y)Z>57kp!ntP*yf_x~z zdwn*sp1Am##Ma8n!(Aeum>1vUV$sw40PtV3dymX=aH#*u8*Cei)8S?tW7Iq%*AZ?S z7fd?+Ml;MtaN5I60NVwa;$>#avHQEXR17aRMl_50?iEaz_s3+ZK9_}Oy{`Zfg8EGz zS+V=ZjN%d&9~sr0S+nkXXSA@?ixem`+=HVBmz({}?J15A_Z~}z2{!HO>iY7cm*Q~c z=Q^jIG0wiy$lga}ve<9?($<%Z_r?$xyN7n!(!%xrqdIo) zj`g0^xio8)NZh8DJP(9g^&wpK03~=M6`arz$ybw3^i506QY+WnN5ZJA`u6NsN&K^ zrM+eI%hWdcoOz`eAx@cdbM63RLmk;!ZytfeS|H>d7&zU?37Wg0(jwjc=Bc>JE)EXk zD7F*#_wsjsoBC!+w~R@2+7lH8>P4Yek=Xs_Pmw#peM&*6gkgGb>#~m-RTxy{N)nyc(M;yZ2NAmYUznoc1RYkeUnOkH8{$!nKQVpO zKHl{=nbP`OYxj5Y^ZyBpkR}CfI_r^~c6FV;$5uD8&!pEER_Rn2jOrbk%?aE^Q`6&m zrH!FlzX?uh;tWva*;12SVi`eRXAc>2`JXkIOG3 zDzC5mCW#E%*i2XU`}@0Q&$^X}o}BLnPQwArawd33BjkFrKJ0LXK`*m5&B@Yq(q0^= zkdZpGj%b0%kqg|UebLpx>$9umpZ0rP9pk_71p60^R-g|-eqNz|W^RJ+FXbl%1>fha z*z~citYb-CfU6Hb_;iiQD|Q4l<1QUKXp!0w`}Xcl(m2)DKZ*`eojToc5c*`heXTr& ziBJ36lc<7tHfTlHJ|@qg38;^+Z<)rWj=!EHEm-VqW@M=y5&owYM>M3#36HachQ$>n z<3CkTvibBTYt@mjnpUL5?rD3(gC?AIHeX*IYC7gQ()O7}6?4kxDw)YzgG2v;1MgHy)s8ryqM$|P z1a|kxyHeI%M)qwl6RHE>)}o4A_QddtsP@ctdJBTqaa%Jp1u;X{TkF(5hQ>|M3DNrF zofWt0@4fbO{kRFrYWfXWwe0s*YmbFm_1&zB@ES5i>Um~hbICZL= zoQ$Bm>0N2oiu_6grGab5oq9~@wwh7~%=8-O8peyr4v9RX&Ud#K^EkiuDWlh!WzSlk`e&k^_d-lBd$G7v| zphM#KrKRllsXaTyZ^b-^)uozajxKh{j2tHwbj6nZ?SI{Ei5@Y1>i z#S6|Tffl!3Lfgd&+bfwlURv-Ze?G=fG;Hr3AD+iRJ?2N}@Av{hr03QFHc*=XWNM-l z^};H7NZ1q0<^2&SAhe2)w@GyJ{C?%k#1rrxUvmm@vQ}v~z5S=D?}%B%ID&74iAh3G zaBnC7X;Y@8&?beb<%RXPVLSYn;G9F`x5sdX==#n^YLg3LqvA7e5>N7d+Zj24pnd2E6R3X7>`&o-zIcunI_&xb29U zMs3vTG5)=kz|2doWD7x%#=INT)4$t-Mc{5(dzX@7usp{fbS9s5M<)Qf1+&fLc*AyJ z&(@uRU60GAa!v+sNngh~WL6^5T9hTVHBS79&@4DRV)^s7ZYSl--j;G@@U zB}{XZ5&@u~D9r%=dwAwYA?S54mm(R=Y8xeuq4#X%=ObO+a7T zKaI|xU>y!+`kK^6%>kYhfXKb=d8CD4p-pt^c(WGaVm=3y()!c9C6oBN|7Pug;%R_1 z-VNe&ZGMlcFi_Nz0Uv_Kg%sR;aEPyaq9yADT(_1N6#%ulCe$(ZQ1@sNTIF3LQnmOW z4P=(|bN9a(>$NptfQH;GifU!wvZRLKXG{|S?0+#$sz#6AFhCq8EMWk^<2?hb*OZ9T zI6I73*vtNcvQ6{B9?yjGxpR-p7zu?60|p+%_WuV1-(i-&_0tCr&fu=bO?Gx~%CQ;B z*NlZ%e=us)m7X=DM}KeV^>^y>lH@rLMYOFhb^8(tvXmRhpAw$j@Lm|; zo0}&MJz#EZJRs)MhGNYyK-8jK&l<>KaxDlK3i(2 zrn{}q8ip8FRqlA+BPUJp)ndlf#}@aiFu40+;9TYZ@zN*G1U(ku-IPH?l6T2Z#>H71 zUD-eJ*h6M_l#{=ZcXBf*vaCD1`CHd>AlD=>HB$fQdbNEoLYm>;Wt?;gi%o+gaCiE2 zBir_Wwrgh#{=b;d0w`PEcyPgljGQZh<8>lmup>tbXklD6&-+QP_*%bRV%!Y}nVUCI zN8IdwVDky*Q#i_{!Cm51>-eJ&;Q3}-EdH+R;^Y?icil> z6@+=htu=TFFyzaZv>thlffkImK`sNX7(3R|nMeJ~u4fkSMZ#Tq))ncDmipGB+y{YF zE`+%-oZ(5v&s<==D_95}IPm%1yG`<(b?~RC-3f93E^*APScSCQ2SN0~{EROdvQfo& z?|iBX35kg_@IxeRQhG1?_%kgqN18Qw54cQdE5jF<5_ussqR}qtmd>5$yQ5wQ0rBvy zSjv~xs=QH|dxu06(X>hC^&{8(HZ84)pM_Uxp|`hSNe-7yg;0g-&BfXRe)+-sTkk8MPt4VSI<|j>vg2*`Q1!j&uC+YWFpFnpktLjUIidKJHA!u$0Zm9&G z+uCbjLD62l+;?hPc1?A*_pcH$gfLaZ=__fhl{zzzqwQH%?{4d!UC>CKRIK@>q@)Wz z{1E1FuB_HMyEW{PI6}ed+wq-Y0*W{o9TKdVjBc~mn9LbF_9jY7y@>~wBurLHn*{dG zv`gyB#Q;_;vBV|E&xtRr?1d1TT>n<_!WF@}W>1uy(W9&f9z}+}<>HDmx?!#P_<$r7 zGOM+0eRN`R+^2X|tRgY?A!cR+3!_Bxfr@V1 z>+4nxCOzFdWJ}Qp(SbZ*wf*{n7cbb*&!9>i+1cZW(S^}fm6fxu`uQRznf!Fq>_=s5 zAZUOQ#F7vHbAZZfqo`ACZlMSW$DTX0#a<7DAj&Qd+&%uh{;XxOI$Q})FxVwdeNo!q zMkZMa26{YIX~XX3Itfef-MopRyGwmp#kD(4R)owDiyQ7s>Lb@hH(CEB(p_-v5E`D5 zOu|!Na+H4a2V!FOc9N#kbSDuQ9PJDRh*4jEui5%x-QFmr+OK}IZ@3{I8&qjPvUjbF3Mi+` zVEf(C(F5zbrz z7+LHguF-<~H*VfM(XOrLkaj+uCXQ{N$CvUa7}$_r3DDGryjIoLFvcK!0kt|NuKBRo z)#~W&*w)PgcQ}o8I1vMRZrwV;2n2>4TjbqdPW{uTUxCR2iqlWw{L*}SkKJgu*G+Hi zi+Nsuj<@E~f!G?}oIAop?CScBfMk?iTm=9b%bQxG&ds17(%XnlnH5AN*qPzPuOXrO@(`?3;TZ~nz`+9tQ zB$GnkMPDbag5PrV?#vhkAHj_W<(7NByW+;T?(wy2gC0F{tf(0C&TFk_U6kdK1Pp!+ z4UxC&T$y?G&(}+*1Fou{SMjOPXg6{QpV092(l;FOrhqkwMBBEBpY=_h`HI7XWD}m- z@;{+H-ghj0nWuMn=K`T>LC!vBj>hZ4%)?ybVo9AB6fo%YFF3@wc^%3!A)n9SW-Y(M>LNcUNEMIb!hhw^dF|I1+C2!i5xHLeHlA-PP6KD7p2hYU%UHmfe9D z3v5vrk>~^hKhKQsGvn1bYqUJXj{04=N1RURZ1{pn?(Nc-dYva1PyZ{8YNVf$rH^=Z zuIJC9b36#vpmfUmzu5cguqd~#ZxBI18l=IYJBFN5Lb?U%?rteTQjwI91|_9SLApdF z#Q+5nK}1PWKuS8kn;Co@4!okzb>8={?_8c4?lpVXUhB8lUTf_fPhj;2*xW56M9j!D zxz6)=2fzZjDR%$56TrZLc-h=+l>IuhWsr_we}Mp4009J2!f{Z*H$D&TAk zvgnvb@!Qz9#=z+vH8n#10kR8cxr4Gsf$I{0(=PPD^_&KdNM(sp(soD*Mi@3tl8#t3 zle9*U)b`~3A7w1wMRx4fn<)#4U7kYGqzOrQ8{JFxy(N)FF0_+>cHUKw=et8XzI{?V zV2--qh7^2t1B;N~yu)%Qyd9l1_?7UI5LV>V3be)pm;2v3Gdr0LgyxGFx~IkFIN@B#?C9v>N-u zTJ|^^jD2aaxAVPOcZrEoT1AtutLWX9Ig~S}KZx8AqlJ1*31~?#7+9MPa^4>N8s{+3 ze-4nNK#>d^*m4ozD|X&0nx!I`-~H9<>dPH#v>IGWJm;;`XkinBDZ~0?E!VOlO&Zuu ziC16 z00I#a0UdnVGj)#gebhwtVpFqt5AuuBz;+Z;_TH~%F=tT9c`t3-LaJ|oJWM;0mo|_Y zilpRerCz?c?(jt5y0`8K`#^hx@%1n}1f^)nZ z&pvu&UO69HsfiQNkkKr>Gp9Tfou6?zM>a0h9p%$TAHfSj(bTfDd;S|)6npC%TYU|< zAAI*R2;I!}^OZU;T-u$_dATm>>^CvD9zh*_YiFUWwv!IUW8=$hpo-Eo0?Bf^ALyE7 zN(1XS&)A%wJf$kXl1K{vgxLyg;Z zbKBbHQS=C)YuDMFcB4&YtiOk&w6;BhK}VA|!|vWAnwpL@h!l$Sr@LrQQc{8P7DBTkzMLndei(bit9nVJAF*81k zAYu8`33JKbCzqq9l_OI5ZWa2}p|=i=s>R_(=ORBo#KkK4Y33>EyJSy2Jm=%_8=6%+e za)V+n^1hT#>S8`0Rv*y@?D62fVn{GakAGHM$aRs-snOo&`*ZDK%z?W^nWXc0wfGK? z!nPUTHgsHzQp`IotQ)H>{g$DCbE1n%H&rFxiy!M@=pzwP;v^6Gd;LQy`W&s{F`otP ziO8{or*o&In+Vl9UTZmMOa6HS^f@5L5p#{CJOKcA*T$0sY zeX(L3t_X>s+p7ckmPU z6?6f}W_e4VDr!1ME1e}nU|RZT9FOa0RJ@Y1m7}188 z4jA9|ORl}0&5WMW-S0{BGky)DS!-5bxTbv9c6|jef7PUAdg#o(spyefxrTQAVkeWu z!ZgK7(l?ZC!WGAUA?$8oPlhu?Q#0SwZ%(+L1z2$kgC8#5{5V1Z`hn!@-^1P4yVYju z;8IEKwT$P9{U(N)s^FGH&b8b=g<$hLQO~E{y6f$`cVBVz+kN3mR`u^BUd_-NqYSwc zid7=Gn+fS5BM&dJNF)8ed!h4O;H_X~E)~HQ+bm`bzu`A>9A0TNL(Eq{+6Zq^J_sF| z4foBO+%m---opxj<4{^439zw3f3k}6O)jAb;5iYSIy!>xnwu*9b zb%{>bT*`_uE34!dv?iUh$aTw>V9=xv{1S!XAMmc{X^+Kshk((qU>CE9%eicsFK5yC z??oG>-uR|{`+nCtjg@n1jrN#>lSkqWCnL0v%ySsNeXO6Ly2Bcd-(8+G z&0LFkYqv6#*D5_yyc}AdA|rX3p8_+_k{DkCtwwN780Tu9)#ackpsFFqoFUe7hNKd6 z6W6h1Dkh%i?U!SgTCL}_Ev7s)DN4IA?wTvqwmOZxavFE})Ko`J*Az6k`YAY-8OJ+C zpq*##)`fd0=^wT)>&LgxYP~ZR`O)na-5MHy{^|Wd53cB&3H-@a%!+#1cn?pX8|5n= zp0&fpCM_jcH6EH6yF2;xi|Z3Y=(*ta1S>MKh!URUyG z#NHY0}q~6G}Ho0#q`<{~dB5Lep;wVVvajj|QticO=bLoqhy{y|`TnH*j zm0Fm+`!3XREo`=`J0QA~%GX8zirQJ$%k-CR1erOXkC!QRpa^2h;3rWj*gV|k6bX%9RP{*p*EDo;8N_QuCJTq93U%8Kb%+A9hCAo>TlI|?ge9s{3 zO6N_a(qSpbOEeVsPUm`G2}l$uG>VcP`GQJr2 zLTQ|Kja83CV*sPNA_}RWHhtUtdIMLbMlWSPt!hZWCQchmj+h0%u*SeL@_=18(wZgL zw_!6&4*d9c$;2cpg70az18Nv0ic%b*mug;jm$ZIPqP$Y(lBw{@jp8-R?#&Xd9Blf} z@}*JFs;N}_d7jx3QQ|;9K$CsaQpB^3$wp?c&IW`reUF!#8;WwD2ne$Zpj>)rl0T$% z|E9&NgA>DDl&K6koU*r{9@C~rv(m;HEbJBOtyf+%-@d65r=5js`F%X-F4sl;JMF;^ zP8KOBhM|#HbWBSgoWj00*|hQk4U-dBn{?qPw$LugnX1Ywhu>{RXpp;I<0LKcH$$$~EvJIE45- zCc6c<`4zoa0*3hKI9cU&i)F)2C^{>E9JKfHN<5M5=P^iy6J`|nY|AN%iO{*B7oXnC zzwD{L9*9%dbxNbAS#37NtgygYh3z_V@vJ9jZoVEm z$&>o|x^9Qab3&Lltyy;-w|}kM;piLKCpBEj>JWXf^5hi)LJo|eyM@Jj7Lyaz^z=2 zGstDH+GVmnAk-n0u`1y(Qy(R4zIj_<@e-A{hxk@KkB2lv=PPQTcK3&E9Rs-b4$n6> zt5cm+Wk>E`n1ys^H4jNYU}8V}tgv)5zethfzI^pLyP?8H@?O2%&d^XZwOb$O4Z;cs zr0ug+>c%U@X_znDjkSIMK0?ee$)RX`CAWS#ZA3o3$Zp81l)aGZTRUn(dG5As(+8#| z)lBoN5A%A?niOQomXXqsg+|yJjwL)V`I7$?lcVo#=a7Zq9$HQMQ+_0}7prEkMCYM9 z9^auG@-E&ia#t5I5|*T-#vIKF*&u78ZRFUPRJn==ODX3hh_PSLaB+Ad`UV>PLZGEhwg%_pYe!z zfW*ssw;|=1p~1TQd=5F%r?iHKhMh?^HQe> zC}}Xn?CYJ0saJ{_q3h+{=Q~ulJ?gY{ZLFhPH;PG!4x$`*s|1Z3Q&kyqnt1(WCe93#wF1F7lIB#G%rs zV5E^F<(Ag_HQZuD{yOFVc)OP)eS3QcBXW-YE{=}4UT3e{)saEx_qSP>Uz8+wc*LiK z1Q%j;6HI<3a@4=$VJSlN*7pMiX?D|e4(huv!BSp)Lv>!ajBVOV7o^NVY?f~v9}q>3 zcnqMJQe;JP>DyrX#&6kgK-R8iY*}Yj2#tOW_qj&hD6`4`{yC{qC{1?Lm*Bci2&q{4 z)uAnDKJ_qZX-GU{r=5@E4R?7@{9*9NDtS6PCqj;LR9Oq2aJnefMY(nvhQ-K~Go^eN zzZ+N87^q!k!D6PfQ!vv1`gE{*%d54nyFR9_#vIvV36-DaD{jh7EQQ%OdGy1vI;<7n z`Z(_0|4OW*S4r}^s`MF~KXApZwu_+lu=o`AX|_$X^DoEUY!>5hdFy|bvQpRAlxlSw zyhRdoowt1`u0Mt=>RZo7*)EaH`Wq64MU#O?T$On^Rc<9MSUTOA4$D@OZ@P8+vMQvJ zjP9uHGSS;)12j3a0lfE#2)xdgqe#sNvg!s8kQYffEom`D^%gaBLjIAiHykBUb zbNO9q7z*z$E{KSk>F9Ws=htvm-OJem#HC_l1&mTvEnJ=4UCb<8LBKdx#l^`?&B6_& z$E6}E4dPO_@N@%l$vFT8#Sh*k4&LPqFu9~W-DK3AiaGe9}hQ(AIirG<%dEA0BIxuo)(U7t{~XJ9H>yu&Bfi!O~u3oM&-r?6yE<6 z1l~ttU(TNc`D2lB-RJ1OUmTN5!N%MbqzC(&!LRS}AWQ(j5rx+%WpCjC)DFxB*jTx{ z01%7WyMdU+-Cb=QEnHneicVHeEPyZ|Kz8Q>7d2;WrCq{lsP{F za~}S`QJCkz08hgCK-vGfA$X2y2rxIIT>HlS$4dXHT)f9s3r4JVU%}s1s{%7OSoegt z`#yfEARbuXI|4NyA0qGlmiZm;L$<|p(1%Zgn(sK3co3`IXY{*jkEjH*prg7Vnhoz? z^%I_7{p7dZlm9qf4t39cMt`FVOwRpod8p4r_yiCE+HcL@F+JQa2mWNgf5CbK2;Nd4 zxRO9s|B46TJJcDDxYd8S$3qf=5j+6QP>-n3i>N-V_#dke{$-YM?+5&TEdbw9h(`2YfmyMyCD!^?jaclZtgbW*=i-w&`L-d`O84$@I`6GZ53ynp2dd4HMPZ#{?L zaj+k9SSNYG1K59=9!${xBiIrBHSbB0?J9!YF9QDM zMPR}mahrkyh<%0cq((cW0N<~M`)ywVme7vq1V)SqFh(c4D864wH%!p~o4#@=UFSO~ zT{{fWFQ58bfS|_#bf{fU^o%ecjtCH};Q`qHY32XE59dZSPnZb5ZA!Qg|COM@tq8;i z!|I5gKoET@-$_38F#5mx{BO|*A2&z?Bln>*5IY9>|4xgXv6etAV$bE|@2D5!#9 zav#^_Wi3q1EnI*>{;x4M1n9KDX#eo|_rFR|xDoA-|F7I5{~x+X@Nt7g9>m0m|F66b z{~vlC@NpwK;BJCnlM^sbziTp>{UPWH6Z9DSL+niae-*$GnE&4XjvLAy8WO-b{Z1M6 zf7&0cxdFq2;R%At{m1sl_ix!BV%LTBjo+$p#JR$J0|<`d5oZHIWX^k%llxD?hLBXi zBhEpmJ;Gn$P`jVR|Bw^q|5GP=-1vtFF(Sb@{T4J>?BxHI`18Yp6QIridh8TD0#OR#wmHHC5dt){S?K;Ty}f=POu)gF_D?tAxt zDGNOW)?a0zf`6EW@*J1I^CBkjf`8?F|G3`cvR_`r>{sw4*K)|||8c!Q_Pakm_|1|L zkW!vd0!ThiC;4 z#FY0$OnFbll=nnT`A)=???g=bPQ;Y&L`?Zk#FXzuO!-d4lbCb`A@`@|3pmrPsEh}L`(%v#8lu!Oa)HFRNzER1y00N;6zM; zU)Vjt!w8&+slbVt3Y>_k;E9+Do`|X7iI@tWh^gR-m%6JFxzz zS)OCTg8WNh9olmQ`Kt*Z$RAGl2m=1?C|HQoC@@Zc1r|)wKOXi#|1Gc(hXJrb*l&gY z=cp7uP6WYy8VKGoL2#1;!NEKN69lp2L;h;u0fEiog`5~?At%OJ$cecNmKB<0`Q-r3g$k}YaQCX1!MJhUJI5gfgrG~1q5pr zRS-=6KXzsRR>B8HOkJUW6_%lY7?#1@K)*ZEBlr+~D2&x#K?oD|kJ0+KGCnY3nhO1^ zX+h|(p!Hiv2W*u;4y{AYbkaO1d_fl>Ou|I{W3>LYln*gah5prW4Em?*Gu(hbK5AQs zn(3ru<|tZ!HT3$|a=t@}>WNMK&zujQg@NFH4FvC-Ah^+i;AkF!34$0LV2c{R?Sk-A z7Qk7IUu^?l)dInn2|#dzJ5r4xVloT;D=!WG!(kGb`?#RXcgX(!D)>QRt{Il5!6ZJe z@BCNWYQTv3F07W{VSXqeLw^mh;kX<@8j84T0XUKq*4++q2fXzD-qVvaQ!w{&iN>LQ z{%~G@tQZhu|5G(w>VFSz#Jme$&mW70fcF77M*&APZ2*|R1N>J%Iw2w)H|NBMXh?wl z|6SF;hHP-D|2@DFeF~WS??U7+1BWZLFV&&rB!W=HtO3mZSA81H{i{=-0QhlJRD6d` z>92BlFgK!VFsBBn_RrPr|H`2p+G+@|=fAUX7&u1(M@&3`UxxWBGlQRl{1caQ+%y;8 zAyb0!`eV(&+^|V5Sk-W;|1}Fgv_TPG&mW70=u+U|90eRPcLBpTJj(6LVuNUg8#hg7 zYW%M1qwNR_OMrzQSnBa-ngt<;%;luCL(<92-2phi4qPl};%Eh8ws7RoP=g&LM{ree z`vt-F;R3sk;XMZ4a{+N+gE8R!`1o}A7}9@Ew;!Am2f+?q1BZs;OyFmSK|F9x;U`u> z@I!wf_#rglfIi>=fUWni+zj+{BR(7w_(put&)w1RBJkbOz@dKF_u%_OL9p$bsv!7I zKM-u=9k8MYcMXE@8ve1`2WR$k?eG6T{jVSaw*uI*CeR%47K1PFfZz)WAlPI+Fc$~6 z!T*&vm>vIT(hqKmKc@f>p5T(fr?^1yxf>8{{zMf7AB_U>1a3tK**oz3v-iSAaX@#0 zo6v!G2A+R@4(APbO+bkL&vg>}{0{jG_{9_IE*8Mm3YXm-fMX`W#TEybFZ?wS z@fB?xY=FBg5YD3r0{s)=3W)vV;6UuVY~lc1-SN+22O|GE%(8!B1PERu0+0R8g`k6d zmxyHrSblE9M5GD=R5(JMct^R6w@_$Am})bUW}X7 zbUW~I2poX(F(CLUmqTR%-3~k;Vp%}91BZx61#~;`kBHR$c7rENh}8XdJAw|dt@x)i zMJx;GcHmnPsK5?R(1EK(qyoAfcwR&*pxc4NL8Jn@!FORGYRn7hcHlt}%L2L`I21%G zpxc3eL8Jn@9k?4rDxlkezd@t|x*aSNAW(sIkDm?%kqYPrUqnEZ7no-U9e5JNvVd*} zjs=kl=yu>|5UGG}2W|(E3h4IJ3n7vL<$gLPL^7b=PalOy2Glzko*~K%3`G9p!4OIV znJPd&((8b9??3(xu{0p|&twLXye~IAw?V8DI1LOsNHq`&1Lt^trX>heU_$d}mV!v# z2l|L`KpG54am12=ED9jQLjeL0;J`EJsDi*zP|(47BgC?RBJeYVhxgp%CJ{jgqZx#<(0x4)1~-W0eLW7wI*4SzynYUS5Xt-M9gKt!$*`9C zryvmE4hhf^h#>m`1%7ZILGArxkD!C|w7(cbfCIV*$7>Ij-G}p^4Fv&?+Z>!0J5&~c z^I$gxB3}T`gUuC))O|m6gztX*IM{lDP!WSG^% z^IZfc`!VETj^a@1eQWurbwYr%YzH@994fnS^+(GBLLZz~M5vB;->%^K4k8uc0KZ8E zkuR_h<=`feLsWn-{7!~LQ~--39t5)QlwrxxA%K9DVi5eY4nz+7P8ojT#vv-8@xe_u z2=W4}7(Xw*L8R_$0n-iPaxXCK+Xq=3{QfU^ex{082q9rZym)Ir(^GYF0)}b||5@Vs zl>=S|ZdFsT@Y=sv>=zMmq_AGQKTEs+b>JD6RUxK_`>yX$UMXSXW@7JTwa>>2$O7RL zBEYR-CN6ezj+Rac8|@D$@XsvFLBQ2$769vmJJNp23;H>d)U>gc zVB4Wx-C)HJ*a;i^S;F|h6Wc)G|`b!)Z zjysQ_HRMd4C~Hb+x;7&vL4pE}rr%I8SkJJO6yGxt{??#_(Q_*2+@%M1@q`#xqyt_c z;c3;BO?E67pK>~5*@!YxIl%Rx)NpAk{(Ar|A>PK=)2|d1;sk+g$ONdDbk&=jJw9i@ z<+)^ZM%%A-Y>JoxrvhnAa}ryrf})=1djkpg%Tp0+fdOJ?M3ZS)F(W_$S>f|HC_1xH zgD`mJPq!_1Y|-4jc_YqLYk8YQ5~;N5AyJ>=de!7~jpDmv7Ol9f@Os*}b1<|S& zncN4dG8WV$eVOE8ie^a!NyM(+zP5(Vq@#P$OB3x15vnmo`)k`CP~{%xk8V6}LtFII zmBr&o7^hCR(PG$ibyksv@kF$mE4EYe8M7p2QT51fy``j~!Ds0Tcv011Opte<+}(Q9 zKw)FH*||!7?%nX7Z}U!mPPQE|J3{IXH>pk6CE|{Sb<;{? zGIDN;4XsIrAJdEm2^r++k#*WPud8Q=t&Nhtkl?smM*31a0%|SxrnztP;j#}V0Z&Ye zKLKMlP6f?Q$Xz++4pY9Y8_TwpD>V$*1ejN%ucuE7y^x~P^^_y@3bSoUG8M4As)Vw= z?sVER8%=4)ovc$q`_?n9Zt_T5_EuANv9t93X5gtMP5FX$Q$Ay|yAR?S3~X);WfP1& zY(t|9dY4W9!}<~xeZ(gY&Eo#v?DHjtf4DAUE#^KIh4EFF7z>RbFWgw)ze>= z`KeHUW_rHn^2c>E3f~R(d8fiQ1)ZCW{Y$Hc)O8f=o`oz5W#|>2-{q|9co^xxDQmBU z{6=U$HcM>$sHp3(XP3nOKBtqau)|+p!nU|#DPlC0^|_mQ_alzR$D6hYHH+`yV`p@LT zFcx1yWJ(MkwM)wA(9yAfHlb+|vy21x;(hv_|IUX0{u5>~`9d?#go&_+OX!PH_;jjo zYqNEi+O&)kR3>AJ7f+|k+$Q*xG zUiUff=iuV&(sdykS_Kx#2I&B5KfiS!ix=?e;*tD)yB27YF zz#DzYHbi@lRpU;7JWo#v#$@iY(B@c?fZF4?j)H~nye0FW(Ny{3;ugBB`0RAXf88aD z>{}7;&%B`UK#>o(@G<3Tt$zB1x%*A)+rs2ksI8ttO#BvwN!KZ{8J{T#=f<8He=eL; zPb)eSd)Kt4xV2$`Et`?QecmQbW&XB8LAi(cJT;?ap{jM69oy^qt0JFUYf6*-+rw6#CpM~hh{0IqE z{*-k&`qPSaDjijBq8DL)QZYvV41QWGRqk?;wECci-tuXZBwn`Cg`k3j#S$U0cHRdQ zCDPp}{f(#dgM0RL3`-rw>$rksTZQwA@I?$iTh;6daxJlv^cUBzZCUI%EKM}*lAhlT zSwCMy(%aF^=zYsmSHSDK-o4TD=B-q%#Y02E7jr&4XgItz%&qF6NuhMu(t)x$*)f;a z3vC-tKG7|ggH)3h zY(P^k;Tvb@Yoy+NBX*_#Gsuq7t;_sn&dlVNQb47pix(3^Wo=QxeY&WU6qUzDr_9sk z->UOpiIlZHZINSd>c#Z-s_!>HGV4jz8%ztHrAYz#Go1PO{nrb*UQVzvr<2eJ-XCCF zr(d#gK&~=O<0^fdpEmfgRHF1#tI{j4&_UY#mlO~k`x)($5_CvK_ ziCzlGI&IJ@i(Kwe`DQFk=)HpO#o+FN9ijZNox7!^^8J+qY&M3N8goSvtgJrR2E3DN z#EL0~ANjFR+q%7g-(ZiCXEh{N=4>7!fHW3pJ}IvppwoD{f$gtO_`sza45UB8r z_fsiboz^1>Uz~qvP2#88h@dQ@FZwtR2``tXZ(_bXmtd=G7unC4Lb>r(@zpemQSok( z(EVjyWjlu|+i~*gF5M6rx2UDc0r^ROP46I?P_1_f0`4gfOD`({e6-}3*j;vL6hbCw z;-1e@e^tLXZbQYTp&_fG5gVe&Tr*r6E0e0?m^7vCZ7x$~3mW&GBNJ`XcW`$f&T(lt za}MD6Hakt9^JQWBoXX4LY@CvZYrcbg-GOqG)Y`*Cln&IYpYc;$bD?izWg^zB$7G7q zNx$1TLyN46hwnhYa++5=1;r2fG-Xd&a<~t&6r=nB zaXf1qw=~p^oB8H6`eKz@u|7_Nd2FzPPeE}hPQwre-COPU-hQHt`yUHguS+uR-CkpN zb62-bYtCP2Zs*K+6gA!bPN--7Ijin2(*@y3PF(EsV=awAgbEbf8FbePtxlJnh$&%E_d&~`Al!uVdSvHE7W2^_^{%-tQ2d2 zxTvD#USzViY2D!N@kCJ?cCgsQdtV~s>{4{#W$PzXLS6N2FP7lTh&Z=7_Cn$)_ zu(N)}oxoW{t&dgXRX(>_uDpP|iov{fD^2|V_o4@Fl`qZ)p?P558aYKrQepFsG7=8P{c;8tUwmafL0 zv8N!eaM13l7JFj8%7;!|kShFaijG*oLvT1$WpGf}Lv-!D)fydvz$!^KKDex0=Kaox z(V_GHp$-#EqHFn1mK6AC6y9Z{{sAMnZ1(nq!(BU~KRS~hF>Kc-`ZcHVU+WlD3G1xsAa2o#zRVTwhMDOBGPR2Pw9Au z&+ZIjdJbX&MCXXofJ{pB=Um^|*Jg4aO)iv8Lb?*iN%e4$$x6t0>@<70wRsgw$O!Dv zBn0g`P}Ao(l*U1J9pH4oPA6RozdlfAh%L@p_%jhrK!TmEq)oJf+K+m!{&|+ddHw;U|_)+bqXO z8>mO@86}gG@de_@baA?WB+FcvDkXQLzuZATCPzCbXD&eyGlCkF;$kmmVyU9iTl6FQTBM)J%Inup zU%b98^N{i-ns-8=LE3`|#re()8ve>wlIBy!W}j8+&z|O;;k3_fa1Nh86&N`$eqki& zRQ=i8Go0vd@0?sHe9>lB$cTEaxT8b@Q&z}AAyOGv91=xZCsB81^y(C`3tcwPKm!%8 zc}!VFvQbK0Gi4kJD|KTceKT{Js5ec2m}IEEPuPvA-fOegZ^t9uaZ71@i9f<9+q84V z&(W;!%9A`Z#(Pm{0#vk7k8B|Ad4(GlHf7~D*2aBhx0M2)r~JRW80+PQC~>KKgUy!1pLUNUfQt$rIupLe4+;3a2y`+_o3=u@cYY#7R}!ys)M<6XKk%Q7A<8 ziYh#o!oZ4mtB^?K7}mj(vQ2txAAvX3ov2-0K-v+WeM7PfP}e5l0tp+Epw2 zpsWd6GM0kH@0&aRu`z?l6m^%RO*!q&FMeplpzvz!^DQpgBL&Bbwo32b)J`kfWA0e~ zRvjB7v=g)Yje1_O5a211#`4_0Cq|SmC~5PORX5qaqz|JhE=eyH=D#Tx)_6VJyqvGw zvXM4#u9ubaLW)wu-R^Uat&;Rw669utq_F*j?r3{%8p~G=23ur9)ekeI=F73Cs}g(g z&vY!0*{9)r?6QV<5?^s%kk|V>;RgaQbyMIy_ch2L*Swcx?QyYZ(9cb@Sb%br&}^D` z*s3Qc#+=n2q9pAxUq&_h&_gSK&N@5^vNrV5O~}q0`br_sV+beD(>vpeIA#B!Z`0M2=;fZ9&;n@|{H#QCYlh7)1ZP^I(qFJY6 zSu#tCxsN6k^D6{zY~n@?$KrSFH=-Ez(!E0*LX#q9hfFAlrZtLVKd-!@@^*Lz;Jk># zl~O;P$ZOI435D;B?jy;|udA)?D%Gk8D<$g9PsxmiQwnbccC{qEJMci$nKm!ZI zQl8hmZ5mUrBby&I2Hx>z6_U`WuJ2IbuKS=s#BYCSNx4uX+_cQlEybyR@szk zV~%cH`X1akO2aWhlX@99A|1Ty$|tILd@oW38z+p)iu~p`)7T#rKO-=hc&{!{*vLCQ zlb?N?RVYQMg!#49Ig50=w}Cl3l`)*09PgDW)F0mW5v>aoNW84x_e_c5oK`=c0)@Q7 zYHR8BB3%+w4gR)R&IbZ_i(_I!IXGrQBY&_o$x0W=o6~#6u)X{-c}|AnZDU8Vq11*S zc_1WRi!$=c+s62H9$v#V9i-40D@!b-9(H++ug(_~6fUTy7Rh%STg|jB;Y=HIeq3xA z{Jf%(f9kSfRGj*P3;Kou)9ZW*_ayg%2RZkj{_tmd$+;<-saRhmdRL>EdRhZ2Z>0s5 zFBY;(8qn$26D~9xklC5`S=8XKaxXFx9$t7SPy3Yv{nu6iZBHM~M(X-nGSU|ulda{EUB(h~i)!MSuK znV8N`%wzZapZ1Gu&|^%i|mJl6iC21oKidm6UUf>V=0B-A2H#h$>Wc zC$eAV7p$pdFJEXQ)=KFVDSW}JFKp!E{UMjSt|;eb!FaiOSh4=Aw3+0Y)D(#8y|Tgb z!8*v*MFEpkvs738v04Z58`)2E?r4`O$zIF3*hkn`gCP*|(ng`ufiTgzh?z4uQ~n}j=?%m8P5i6p%kAZYo=fQh z|H&(Ox+lda@+Bqm6~9hou$8!LFzKS7@K|iL$cnKkr>FP%=Hm6MV7+Gpyq0D&B>|CU zyeVHaa6D|6D;m4SylNRm?E?K9nmhM0_rU(Iv!MmhyqN+0-q2V^2|BwDyCOd9yP7Z2 zlp3U)#VW)Uinl4Y^>$L887=iJB<*x=-4@_ziDgi@3;d}4{ngj844UtA-o_7Z@5tLn zBo40B6Wkl}J@`Qs5ok$=iv zJx@-~&^4qn>%q3yp<~zFRYXwZc>`P?IK{ij=_ARE`sCh2Me)qrI|C`l(8CWoYmR5w zCKmD3gUD1!U`&^?o%6IQ8T1q~PW&f1NEkLzEB<9k`wqDmmk3|orwC(iWuiyF$}ENQ z^iF=N3~6_n^!wtq(9;N z;P4WZ5vaZSnbq}3f=Ljq=6P=7(3Mc|5nRe+zgv34WP)$HKq=k?(u@syMbr;dA$1!Hx{CGmK z?tkW^B>F7-l&I2FxH^l_03zKjiwc$9eN`Ps=8GyHN>JpJ#Vjig6)$YGRN&FVxEl;9FrX50VjEXX1e<`NMg)w0tliD}) zucGaNOeAUL%tdS%GhXX`L94%q%0uW{Myc7wSb|p+|Trh~yBxK6^dQvtq!HvVT71|)DJN3&-kPjE=TJLcqvLUYs2s(xF+jqTpVAElXX z@s0Ym`QP7Vxw~=q41WXPG+$CB`JAUiq(|K$jWXjl1DPBHPh@f2IFmDRLCCr-t6oym!OX?8ZgbI^H{P){-M4T&s!Mc9Tt&U~=A zN3ZgX)MgN#JY(N7{gv9J+3edo;I{=qp-yMBp3aRy10F~F)Ze7c;i?#ZKi55ahs%*B zzl~!BLZ5XHZJY=ytJ!x3sZnnFbrmzoqjn>3v?7yom|*O17k7OyeZ{p~9FXUfD;HgE z*gsYB42&Qc`|^V?diKecl~~f1JJNi2M8z0;Vxz-IZV5e02W8tJ>BtE6UqU1Ngl)<6 zom*6W;a%*Q4KtZCS1-#f^d&e^0zK+8#|KH$XHS;ccHV|aB?m_GA#=u?Vtr&xDf@&> zG-f*L%4&L>sjaG(B>EANq9hvY4F1HpNNT%I{P<<_F(d&qY@RQH+7BvYb+(lf-)Anw zZpbq2a?_y~7yNhRHhRCW$+yoJAhr$mZG`V$I)bZXm8u0@7jOylHr_MuyAU<}mmk?sa`DO%HV zGJet^UhPmPXJWcRG4mghxm4ZG0|6FeEQ%`WD)w!-?()JNpP}}B;e$6c+d_vwwdtDR zynNC)YD+Es=5;vPnC7a;R(|iosE?6t0Gjo|zujg@6Lbj(dl`s8b1>$XIXzv__wRi% zVfGWI+`%B+4N^?O2QA!0CXiq=B55UX?I;{pgf}DW`x}lTMFc zwVv9=ai&XLYG|e?J5^)MpnH|gu{BLQ@~w62g%5#BgSXBsAW=(S+`ZXZMs@LZ5a(jxOFHeS*8P4ruA&7fFUHumnGQ1P54-uuw# z8yXvA0+KAE65{bogtMWVeySPeY@#j5avO5K6owo4mj@Hh<40>x%FsKfhe9UL(6_$jg)oV2%>?Q_^hY0i*! zU+bFm;YMQ_H9_Y|aEb|GpVXV6li47afL^21+8}-h(%N7OHYr43FE;P&P<|r%zICqiGY`?I|=^Ar>E(z6!-*QVOD)CMi!pn#7)l7 zEl3)untR3!tUuEN(Jx*x7MdpH7T+Kz1j}!b$3Ze8cqZ)>TdXJ96x&IGm+?l*@%V=- zHx|3KlA|!XlWL=u$&w3v!sHcIAGiHTE=lcFRJ`&k8&fS|xuAn@QplED2^yjs&o<3{ zwlBdoIr3Y)YjWVXcrI=d-gqvR5c$coFUEaDELk(mkc;Ab-mWz!054++J>}^9-8w&% zu1>O(b1Oh^OTW;3bsxhup4YlVe-cXFPkxtCn&!TXPi{~5N-*)1QP=QjSS9cYlit9Pb#OBnMVn3IGhtsLDF)|0(Mvo&D3aZW&Lc;soUd&;axK;x()8&UM~-Rgn$}?P8yZ zkgGLI_|%_$&JM7gH({H=S(%A}w- zF57Ed&OAHUjWOGi4ZO4%#jll3@ioq;y%TB{F08URea7|#{$gBZ>%2;ICVm{!v2j(XxWIEQ)dkCG+-s8boelCOc;TXYm)4HP9IbTS2BPOa0q>lRn#pig z+)FjvoTls(olf3`cCJ)V_Vu_ZiarPLuy?NT0uRoLqOIT^tj?7l;7c9g9bVu|R~1EH zf_L~jSNbUXlmQO$W}Eo{hsoq!md+K&sF@MUz6NOCHCIJZKu)606*Zt3@EzcR5csyU z;@*TmU7qM*^bFIUvdJb!)C?0K+NWf{n`XZrc11c@)}VRKJ>VVRsG0AsivH1No8FXt zqksz3oh#RXj{v!-fRCIN{X@()hk=i#l6M6LJ6E!S2SD|1@D6k5iXgz`8F)ttVB(_aA7{2n z0r3Bnyo=Vk@($qjIoa=)*(QF}j0^9HbA=Az1t9kVyu;nO(n{Hf3w+WB z-ofi!kpLb5vF7~o@*2>%eUbY1I*m7{_7swLclRWcAKL*0qbF`Z=1yk}D?F&{E~RlQ zjLLic-i>$UMfm&MPez*M<}LRqRG?bAzt> z-iY1^=VoWo=kcNLF`O9{)Zw{?{OPiP+kD1P&>x97@(%;&Yew>Oou z>qNd{lWM}C{o|owMV_)5k1x56)(qEuWitZQd5!T?-111A=$FEg6bX>zkZez9>LW>? zed2d*(ws1ADyw5qD&%E?!UzXi|Xe#MX^+?^wCt=U1uUDE* z(?c$+%d!$P!$iB;vDbf1!=)OB4wbq2kvl0T5`#UJbYDLBL9;K~-7|tO)of9p zC@wokGU8eyqvHjrB6s)fxbu}+zqs#(j*nFI)v%BRZ(+3bITCj7zxHqEJ00>@lE?l2 z{tVKE=c7W1f23wFvC+P${uO^bR1>k9Mf4*sbs$| zb%SO&-3s5u#FTH$EQ^ul#Q59vNd+fqTQt!m<2jTWJ~w7zM(9UOq_nUGOW`O1Di-_o4$q00j{C=-R@BtP^5lG zC_R*Es}t!yHac#m-<9H1(^KT17~&c#*?D>u7_S9$d+NM$3~W(GS0AP#CL?oP)nne) zTNh6b^Ge{i&Gy|@B2M}i(*5zgk3sJ!ZqxiJ_gej&@<)4Stx5yJ=T_CJ%%$ZsN`-Slm)AKofX9f9=8NPe44C}y2@p?Un~ zOFzC!7SGPOHz+x}&t6Bf$c$CjZIE4X+DyE8swy^X5o3|B^Hxh1IW{&nMs$|j21tQzPHn|r#~nReWaKQ!zB2xeUf)Q)CEvST)pU8Ey0z)(S@Yfbyv_vsPB^>ghJo_1hhe^y z@5Qb_PwdayUEktW#Mqu1VVZ3&6os1MD=KH6JDtsm?j1ORTSD{8Pmz+kMizg85rGkQ<)1wRS$Ar*GD5Ei-{rces#{jSMjF8vkI7! zd_*`#RX()){#A%xg|%b0VeyY^XhB%rT+cb~HavEck)PdMY(eu46%n=TU6@L7z1V+U znYOetH8{|O=V6Ux`@k2SIyR~MenKOyqy=FSOd94WHcXwN!Jcxf)RmZV`NhIRdWEZ2 z*Q19gG}&ezc?5X5$58!H0ZW#q3-^nJg*P?7SvYga`JqcNd&ljCP8CC4BJ)VmxF0Tl zQHGpdDTPdWKN?oln^`YaA@|`%Dsd(a5dz>#={V3aiN3&|z3MsZOrB%S*SuM0b&S zl5&`7pyd|Cry#Lkr!=lnvX3P^tH_F5@_N`6oHsJGhEe%0J{msWKGz!YoHXN5tW3e0 zrouxsv`@VP+6vD1Ek-K#XscO_XO=l6EG#_Ko->T*sGXzs%>^>b9_*gcN2`W} z`DvYz&LZK}M}J-2G$e*PoiuvTP4uIU$x@6B1StU9A=V*={E4^zHm$`!FWeG!O}0gj zx+Xh9WyYAWuq3TpJ5u|URwGN-3Db4gg-^FE(6yLbf*$sNByh8Nr~l5tL*k+E*DNQ) zPg=UApM{^pLqkcl5FuJaBf=uWqb*u}xWC0eIy>Uph`YkqOIk|=rQwkg0TCJli=d*$ z60X8|uwd|#I$5umLjnp~^+fMwS#p3$j9ecundAoNV3!_u_~!uqEf`OJfFx}Ls3kJ3~0A5=#p zYzN3azuUqYx6c|X$6T!JG4-Ip-P2py=q~7O?9kBS$>saj>&XlHqk4+U#tPRN70URS z1?A;YlTT&$iimX)6qOZ$?$su7#Y=%NsY`uRB`OJD?ydU_22)H7HR-*&$ldiOkw$oR zk)8E4z-I&M+Mk!s7e0Fqkdqznh}CEvx&4ctMoYE!%-r0;Y{$$?-K3gGTNcgQ8t;ra z`p~wIGe&Lyc^IjwpEf*_h<(30NfCMQsav-%Y25$HI~(TC{mY)d3qwqUQaMU0=h#%S z4w+=7I{N$Jr*wA)Eutw?FPc+M%>lj#JJL)4q&7?+h5JOY)MtyAl&k@X|9~$1+HUmu2r^qA84odCAs2 z(XuN&JK9T%yG(|p#AitzLZGLg$^PS|R*7!lBj#mUU7i3E;3XSm|M97!oL9KRKJUXCKU_+3=EK`{dvkf@yF>mI`g>t_&w1%bv={iz+)~x~Q&{ zuAZiXp2{9|3&PPZH!VFT-p?p#V(kuloZV>`G@>&wKHg8NA?ZSD4T&*IHN@_pP(%Fm zX_|~0VlzamxMp(qe`Y=T)?07AmD_3)8eJ}Hm!2gidD-bb^@)ilmf_U}@2+Q}DcY<3 zzO&wBxH8VJpgh%(b2;9HhG@h10NeZ5yzsCvj(j;B_u?H6)y~z~psmaAxZ|;DMF&>2 zHr&_u)m^pe_J~OHjp5GZIS)7@ZLUpYrEyzF+*NJDjS=udjbR< zHE6uLaM`b3>t`?sYPI@z-C0?#Ofw%966!EJ%=R3TWp*y-HLT&nTDu7YK`kX2mp!4bfs{1*x=l zFv+X4@2O|ZZm@WD*j;Zh*r``%@2s~Azgveo3R=5XP;En_xoR`mZx-5s zH$PQNjiBl`;#h}R2MZF3i;rFM68%!Y8v<|BpLCvgYBY?jU^fXjg{=w~+`2@K$Q%)g z5gI1V)DfMR6z`SdNqoGKc*(jh3q*BG)@3vh93ZkfqH>UbB$DN1DkoPZw_U~OqGxOeUAbC_^p*FPte#Z$X;J#)5AOIyQf+Lsa)xaaN5dc8z7$c8FIyWuc7L{E?twAR!QR>TwmgSBq(`)qyKs>NgF2i`b&ML%c&H^qWOfC7OuKW!>xN2f+Z1S7+<2hi~Es z@uff59!ea<9;?-86W*ln_qiL$pZeA|W=zhC7Dvbb^1Se}HLc1Y49k^stWBmclJ z9_RD-Km{TCEL&D`!s4u(Vq5)N16m_nt+zQ_HvTTcd!r2wDJ91zAvk5Qzz3l(K zAxsNDqA}1&eL|QaJkn`!29}Y#$?b+!flncDDDp`e%E-vXndG{J8Cml&pUk6kQ5hEBGhGb%t{W8Mk@D1TCJREhwXg#0pXkiBWH9Tw$p-NH?eY45#06 z)RkWay2eU0S@%T-AVCP$NM7yP-SrwVIMu8Dw6i|=vgL&Hg(d#?TUu>cxbMD?A8|Ny z`;A65pb^)LVAu170hf9mnq>UVhZMt{)p_xh>J$e+ELbykPUHF`%c`5Fcf41>V%)qNmX6D=OYi$)__nHBAG&GUh`jlr zn4p|tPl|O2M*{KPy=L8@B3%$9?YBqy~dF*&I!sXeJXNk}3pcG`(?pX~R7AN7k!{KKBE$G55L^{q_> z{h(;#hihgZHs<+8HrX1dGY7<*oKf+Pc$>jqgJ`3Ald7}VK=O~NAy#ut4T;q|uZBW( zNcqZT?a(^C+8_7SYqf#!VId5GF<$MLo%Mm@AFwc7Jzp8@Tb~B^Z|100;~?sI`UaFk zV*PF1$CDmex&HMzH^1`44flQW%A?QIte~Q0V=C^fD4dygOO%r?A#uBAf4r}A?Ne<# zem&i{?AG~o|7~NdKfSSi%iA|hO;Jw*JjxlefqCGMa9qdFPFaMPIOS-=+}sTj?GaQX zLmMCm`5Wa>ChM~|gtmv$(C3H~7Q98^L#>Pa?xz3L$YtFZ5TrqnKeXyT$eiUne7x#R zBKYd_348yMV@i5qk?J##@1P>Bus68K7b*fpb>DDpig*u-Fq!&R*7@79z3}Toh6qHN zB0{6aM@)%Y8m1*CB%Z^Uh22wsC>6@bZx7ubc5JF3jh7}!6K7fkJ0v1eX`E1p*>rC7 zY6#2FhF=R=hpw=wD60tLCJrhpq!9dt$mDT_SyU*t!pn+ey=fR3R)=Cz>}5s!ij2eK zQKXG}mK7laR(9>4(YNNt3=j9R339G>cv^O@-^97XkU@i{O!Xh0ToCz;WX-V3R%VTy znm5EavUMaK`DAdu6q^w%$BvH`Vk4$Z^^%ia_J^;xc*)>ZF4tIfa`smCj5Ynh5l21b z>^+Nui@g_nOue6*&K4B(n7*&cRtmm#Os}*@siW*jEhfn8sbZ?8QFre!6T!gNf)A_OZ9IdVYXl|S<(edbflLo z*+-(R5s@aRnkGjhFu}itjL0u;A)|(jj)s__jfS5~+ky~#IKL_)%I60;j9#*24+%&z zwh;82gK8J*?%MSSN>26xpGrf9pt8~0k*4)(zv`^d9qrZmb=D6n_G&+ojrG>FTnrnA z+%&5g9~17?p4(j?V~jU?wWm7k<8cKT(^Yc0_|Ae|hQ6SjY#Qf?6=-NkkdP%IIE%s_ z8%J|YLCDG!fU`rE_J*A-Wo>@Sv$ zX&gWF+LZj(yQLu`+4Fsk-8aTbDff{PojXYEL*Msh|MYp^n!l4sV(j~-Z|A4vk)Mc; z93o^#-@g6(`Zhm4qHxG{UGrDYzn9cCPAV;36g;lwrADkciiHWCv>L!M`+5zbCS%TB|OotDFOG%AJ}bx~o_ur-iY z^;_9GBh?{Y-B47%aqNxsbal3wdV0S3nxy;4v|{y3FPT=q^wJ=8p6ddQMuW*OMsFK$ z*Mu5_O_AnEt2N3Jt+9KRgPqPC)$7VA&*r`>jr*NRzGNxhmmC@6OAhDBouS;5A20=H z8;t%YznDDZDC2O`$e3~V3ga}>l#ue6`Np}Xx|pS=R$+Bun{l;ibtyLFl4zY&b7-KX^rkJRxShFd_++ZeVlQA&ROApCr8WTckj4gT_ z;OjUq*&_$&Ohy(O7N*nbbx~gOi>x=AiJ5K-l+9k6(KRlH#CYk~a-bv!jt{&L$O4~` z7PN6(jfm{6?6E|uH&E*7k!m;vZqvm|x2e~?I?#9Dw7N1d&Ei@uu6W61fvJa>4*o~J z+O*;&x7O{}y7`UN6}ux%l@-=~F~;aE9)v)Z`Ce#zd+`+knNfz-PAM)dNf6AWf{cc9=(3-v}QzEj4k&hkZL|)~j z-t!ak5*K~`HF@Q|aS66`ta@5b5j_EOXVNJ|kS(_stN!S^=GvR#XmkD2_2MobY3CptnoVht`TinxGCn8TI zoJjN&^1bwnF5}$Xe04@e#b&F%{8?ytc9v{U$mz?i7Rp56?u}p z7xzKdS*KQrBThr6iG^ycks&c*abby}8EKiNaig-Qk@AS?37e?d1XKPLGCi&;zahUh zzdc_UnGu;e9?YbTjEhN(NEbAe#e~O<%UTon=eUzuS}9-7AD>@KYgv_8rK!?ZWh~V+ zM>bmT5MuYjy^0YF+4nsrX{MgY(qSWS4}2AhkHe;*VjnIU53z1R{9JaoL%o2@a-H zQUZ)dl^YCnN=mHB7-%%nDMm?+8n@)-KSz$kj%s3oMP1TdF87!om&?^#+32clEH2-V zK`iyWm3uuEE|c4>&hDljJ~^9wTQaxF_kfQtZ{fbpk_cvHCEVSNlU}eOMCT!-a)<+3DT&VN{>u z)%JGQ>(lu1b@`xOH6fSFrT$bS;`Za)t!o_ioUF{jx%|xC;mEP8Cv~AA8fO?^ZhS{{ z=Kfn?et63|*A1_3J$1IXHEW79JUU@a79I6??WQfudvA8m%)9UYu`eE&HNK^B&+}7X zTtBSbN_WQ;%~&;i{}gAgqlwkuVoz~e;`ZGz=TW0pTX5T$8=egNb+Pra8^_%@Sr9=m zO8HbYiVG0ezlSf<$E1^Vn$FT~n~a-d9y2}`wAZ*V$X^#j!otZ4c5~>BVe431*duIH zJNCSvlk!aeH^ zTMg9UW$AKyh@S2QAtckZbC;Re%mrp@j+Em`yxuKYh|yxRPz#@KmXXd`wR{`zs%+xV zoqlL)9Mf~LQGFKNc(L;0=LJ1qU+f_!^?vOTpDt3URTH3fM#lTchdDJ?eJTP%^{LQB zh^fRc+>om7+{xAZ_NK;4s~jjvQ6^Iqr6EyqEK2lhzuH|N#X=1H05(ML+jSK9fbsHa zd$5BKmb%yA&zr(Ef*(IQ`rbL^?fZ5^0Oh!)U-5Ywduj&&7p^^hob)%dv6{dM|I^5-&=cCS9e!e zZ`FHM@2%=h>TXFb3wH_c8&+b=wt&VWI6#6DO9~K{5GxCD40%D>1I%Eu4iIK66TE&P#H3r9G2z4Z5niqQoFZK#ve4D&cmJub17-H~F#*cO~ z_eZa6-8zJ3t-%p9qt-}+{q4-CRmA3LC4d*3C-61c*Jefm#O4W>nP;(cxOAaGs+8=O zSVl{EN?pJqfmoD{m3GBFL1cMpScDgS^O0{Z-tfNOiR@yy$Ta6R-wA6y#(5Oe@Q9iz8`5}d;Kt7cTL3BEUYU-2R3k>b~irz_kp z-xxE-9^ek}lguQ0H+MJB$0LD|7EMF~x)$RM^o4So%@*MU9E)y+hW4-;K}47U8R4 zmrp+q58^}--DZ5RrTXjj`E&I%3$N?-`g}jGjY+Rb3n;u<#NmxxE%Yz+qx4&ve+@`~ z&|zzARWj=V!=BIU45RbB?)QguXm7Cd$44Oy>7c>R&y4CF_@3)T$c3MW!uV!~%$r>^ zJ@I*~Z5ggZL#A1B#Bh~FLq*XNE*STeNYhiF*9>Ijsbma30z0lxm6=4sW|QAKwD_!) z?tSS!*A`a~q;GiR)nZXsz5e*lBIUNH+@-Gc+i7Cq#*gu$m|~VA8O10X7r~c(o{_5d_+k zp#zK!M;GBpAgRUlY+B$%iY5pc6RlQn4#bimEv1Px(xF5ul_We~E~Td*0T~D~#f*^| z%TSpqhKaCnI}4w}(9Llp4{TURY*-y^SVwHpa0u&22=5GG9SPl^|1a*~Tz!0^UwXYh zj2sc zYDvQ7Rj^ukIkOi2*J^=v0x3Yr5z7;?n8W2oh;+%lY}#&XL!OAiFaB|8yET!3sda1r zXcg3Kv2)>x;?AUE6(V|Pk^B#9%)jpK@1%)^SGVk6tZd($Slo4u=985~qEo$v95uHW zpWQp0Mt6T>^WW)*>FYolei3_$odUH!Pxw;)G$ARHk5Idf?vd`BxG`nScT>ldGUc0A zrhS%N;YQ0r3#oMH{e#_O-5;a=kviQ?iR4Etv)$xIE*uFc{~48$4#diMem;ulXLu9< za*MI1^WLmiQKC#bOWM*=9_o>>i0)$;-?A`+Zdo|$a16>*GGUju%LJMu4#-WJk|}g= zWx3Hja|}-u4dPFRMd%+)LVGfjB$AEhSwljXNlNJTPV4{n2aavnqw7IBa(yFg&eTPgdC7m+bY1Pm>jeu zY&mcN{Lo=e@jCJ)5QTaHL+I?x5=1oX@%kI&iv~aH^+vO0GRrjB*N%;5$*2v-deP-m zKCbXBoAp!4n2Hi3bJ};Hn609@5zoZ!U>Gw7=;`iRDm?X2uf$@Noi~4DapB>vopDLw+-eIJKzn~y@L`l9?8H_4sm z$R-Di+#ol?k$bsW?i5FI6grH#TFXJBZMcdE7dV=Qai1YMQuJS6y639<)QR*^j5Hj_$~ex8@JlNVIxKX zJOFMWZnfQ5yt#5q_fx_XR_eeoRl1vmwtA)X~)1+T)h@DIXS@%L86Q}UF{UB&WF zcn|oL^)p?cF7vG#l2))s!~NlPYu&(IBy2@MrWB7apfC!TNd{7@QUscg7ruiZP_{LW zVerC2f550RRyM#O528g2kw99D_77YX=%*1AdqnA9wJM!XUDVf? z$s`|1DPAwb&?$oE`aen8ip2soNy9N3(hZ{55Dn{~m6)``X)Clgh(8n4 zcX}M(eV9i*L@xK<22RRPE*^H(ChW_2}Ie!gn%=kR+G%lg?{P$f94a1 zT&)*mZxy4l-YSA;5ITdvncJk3Eoes9m!UGPC#Z@yQ6C566KnPue4&&ZC|sOdL)C}t zI;wXI-HOLr6I55VtI<4tLaG{)t%}ICGqx&dG*8dqXR|XBdN%v0R0T^w>#$i%3K+Jc z4UkHT;X3**B2!7^+=S6pDZDVT7Kah%WUxCd?6cATsOeX>Oen%FB9T&*WEuW=amxksWK==hUdh-dG|5J+<|&$4#4Meot=& zMS{XM`?6huHo$ppK5N>Zv3F2KR=x;cR2WwF!)ujy6>e5O3-2xbK>4}yGJI9BS`{dG znd15)*{yUJHz=g1m{O8Ol2PcQ*GuXkqa=%~K%cj&RD6|Ut!sPNwcr+TqjIzF`r;kn zkaBzR9`M=XL*OgL2fC)ae(3$aGTZeF@6VJ|UGv`GD8KQY?s^^k#rwx%Vk6w-U0=8q z4tsYM-s!!`_q6hz;Q}00>_pA5~TD0c~1CKKQi8X!jdk zunQ9C5?0Bs+8qeR>BP=iI)`imC25E*v(Vq~s1_DMt-oaiCOC=eWlMyPgIr$08;Yrr zs5Vp|A0HnFMgpeCe0218-@sjF+`{o zNZ#im0Ot#u^R$m(5}7t&nLZC#>b15eYglEf=q z$7S2H15U!%;2Ahs*d6x-6N80?+2Zb)XWBi70-cgRq_8$!a^Ub&lqa)^K_BIoRN-sJoo@dD8# zSZ6dUOOb$}MYTvEphZcf5iu9ih?p!pAVEass7sck(FXj2VNX2*1)hgQz|YA%iSMK+ z?{GL&sVEr|DK(m>k2xH~kkn|NJBBm2M)Mp_>81NK82hVLj0{vW5LHi!jMIfK;nuWb z6wXFr6uZwT4&b6FloQaYQD6GXFSNt=`gs2~X<;dw*Y$e;Ht8iytTMG^e*R#K@grAZ z6)Oje=+U5#9AKK4eR2lYKvmujHp_d#rSg98PWcx3KKKy)8ayul0R9Eazat=u+lIlo z4#(GAzUOg3G#@+~mTLq8I6c;y+-Sah!drz#u!=TkT0;O2Cwx`NDQNRK!!B24k6a}r zca@NQRcE95+>E74G@7T(;ZMh1Rl;zzz3LKBi1ZO_qmu~mfROo=$a6R{;Rz)W#6C5! z6q$4(MXVx4BsJJhA6tqS`)k$2No4?zkryE~gU=xajKBH8KyrI=F^#lu)kUj9tLUw7 zvZSr8UvC_u*1q}VlC~XLmv!=h!1=>XcnwMb{43VD&d3Xsa$tJ5?2uAPVjgnvLyNa8zPkAG z;)j0m)E`g0`_NtQI{MU~551edZgKzOGmAf1ycXUC`{9}&KDz1PgNt8ZJa+V>umcXj z%fI?j0KsJQ-zl2D4)hZD;BU?+e>w~8&`wxLV5ia`L+jh&c7k{GHQ;*VRCjN;pA1lY zmA$^b{=ET)w$e7xG22I7Z@J!jz3oQ(Sa>WlRv0TD;yz+IXgz5Au>GL^AoXBLlC33c z*;)yeLgi2efvq`84Xcq%CRbVwR}(d==qrYck)n1{`J&23>&A|qmR;7}(yq)dJrscv zB2bD{0^K{6oxYv^;jYU|mzOWET;6?YkBzigGEPe%6SJs&t1`vD33M2bA@|~ z4;E(A-|To=pY1!_=emUJ4S@Yb;0XLNB;Wzq!fFj`<=)O~ay{-;j z?-y+@QMBn|hmA_|cwl010RSf5NygF$!-YmTT81!!N)a$-NCn4J4&ns|R2@egFE~g? zgE;tDS;>deB)^)F>yKQ1?ML<1 zuYBXqEx-Hvs&eGpeqV@9B>a1hkKXq2p1#!Lmp-}m^goW?-0Ssg0)5@0e(-@S4!mV` zY0GU_zw1+Px%UO0u7wNmUq12ikq=+mb#*rU?dw0b^AkU*_#y>_TdW3vnnrmi3}f5r zyA)nZTpGGGd>y=wxGr>Em@8;CZM*h4`m=!t>8}J>0*1n#NI=q}d?aAkVyqGa5kj(a zT7#H1oIKQl;kDIdJBWZma0C(Sh_vD7cpT*OIG*Qmkk3cGo`@bsUdx8g0AVS-H~c`D z3O_-lfv5SJVL@}42M7P21~Ge7-B&lk$#Zp7k_tCxXDk(TffSokKI3%@atk zaD{EyO&i)E*h%iDcQCZ7m8o9$da%hxCzuSI=F;x8hX$Ie6}1uVlt#Cb+90rLs^IZ^ zIy|I@wW5z0urVxTxrhzrv$eXk@SX2`2c>B^n++H)K*IpAyQP5L##sZlh&LRFG@1tu zhlgcUj%A}Bx69*k(+q=xpo+(fR>(x`cAE_lEW^Lyh2CEmJ%(q>bJjz7UM{)~_n>>) zeb!B@?h*Hxd(ut08^o(8RP8ews_5(I>UH0_`k6XVTCosjcOnmUkj^W3<8K%7O%n8Z z!BI$EhZD%L@PZ;&?S@>XP<$g*InG&S8_nlVIIBY1iS|DCsJ+^rS%(pC`Y{hHg&}FP z;;1EJBUt2SaNykHtTQab!WcvfnyP4SM5OUT*y2i8=zrRnsALvXiA5?U`8KU4IBs#>WakZM1s%9yWaWcuSm!BxlqLdi3A|Prsh0(h&%$i zz(wSp%UCLE4I@-F16j8_z~&R2#X<}vu!SdpSVFO0R<{} zuY!+Iq(qqQ&r+Z;Uzve?w>AF5wSU~#pj6Meo`W)V+&(1!t>nEjW<`8TZF!o!5 zca#WuM>mw!NOiLIAb&z2WnI1v+*bMsxYKfHg$c=?KB+cYqxj%fdMmR|T^HTjXVeab zIKjrMAi4=|5jI&iRkrl3>DzSCZp$^6+xZU*AGX+cdOqYKBDK9WVuUM!a(_OPD}N0J zfC$9q>kS8G$hFj`cN5=_NXRe>Yq3TCAQ)MSX3E9d~( z>#yM#94hTeU~ERaKOuh-f%%SS(dVwN$;Tr5Z%q?zdEhw58gUMx#*eNefjW z%~yNU{8DbxmSIpI4jfk$DlC>8?90bTMX?x`Otu_b%rrRbvC*Q1>ThuT%qV4P1s6+& z4+NvO7fAGUclVea1jg-kEiIZrIFK9H#!$7)jrOM;4BMjG5gYzjy!)cPw}vx6cy0HN zS|Ujll8M6f;ae_Q6_f?9T@u~>V^??f!Ov#5uie$V^~3LS_&)f~HJxj3+7&-^bu^mo z%XgJ?yQVUci}l+VzyG0CF4o%L`yp2Iw4gZkVQ%34mA&%#cDL z{YP)-Psh-6vC;hPV`!HsCKI@zpg*tcvuJCs_4nq?HO>L!W+@53#GGJ`v%iT@baIWg z-mNBYAaA5TLLQ{PLVlHFH?XjebET{U&ai8(;uQfE@Bm4JOYfvJLQm1e2t7$3p-K8x z(F1@I7e&cBXdSaoS*c0uly%xl0;^y%32%E*~j`T){(@wwzL=*2%$HT z&xQJg8F^3C9NsEkZHkR6?Ndn$n^eiL3jKl-1U|(g2Dz{bBb25>pCu3kAts=<=+dpS z%m+RI#v!iCObibPj=BM%H8}6FQG(?IxN^t0^%YG~=a-BmQ@GX=WmAcg!{J$4Gr}@( z)$RBGuYdi*onIaN@-Dlo1UqcdnJc}kdfDIq{k}>iO}zg2fBeh2Pfzysk;ngTqhE@R zEufw0Cy=v!M(8&Wh8i`G7-E( zzRNk~m{Pt1zeF5~9fjY7-(|n+dxbj_{Ed1JDh#n%-Ywr5xl^5tosF>$6@I;W8mP_F zAksWN1400~`J$x35p7ZJvzk@AI`o1a+P~{b@N5XdC$1_Qj9$4K z>Le}N4b9igj2?+KBg3_-NI zw%S?j?d^rVn2e9geL4cyj{!-k1{%$?C!AGUlG;GJx(rB%C|DW~JZ87^nnv;-ywsd$ z$xwp}&Ww_lzg}jGxWh!H3`$+?wHU2s=GZg#boY>(6VH9$eHShRTHQo4|ahbi;5hb18JX%>$xgET5UA{WMBnW6?BFge1d!t zgi!E+%JdN#IYY^5@HS$|=>mxa&t|hEj)IUcEIhB9>Z|Ls&+8|pS**&PMZN71-zqy@ z0H_v{M5hMFLeL0}goseYlFgD95B7>43b{a!MRlQ3rR;WQNF~rKs#?fr@GXluWnbbP_Gt7)mzlV;IR5I`#Ae_hb755Q{sRecCK}YQl5ceIJ7nbRLw$V-S}IJ zWMMWNAuSPL(L@ymJ+gbmGwC_vAtRnC58-(=GsvLqDxEK*@v#jRW=($0fflm5ZGK^* z-oMa~1T7DnsLdmXD`Afdr1Or~pVTQXl}K_K73fq(1!*>+!VWsCw)t&{C)JDW0o8}# z1Y!ga4+oCBK*Yi)8tf}r!?O*JKCj`p2S}pLj4yS0E9c#<83%ajSjBA$M5XWeDfqnBN?{-QU&^BuTh+e3ekz3&^( ze||&I5gY$Ld~WSnb^Ep7`{$n`%}49?c97G+1w!PpWtyMnJT5m75$zP%@X+F!xQhmW zDnJZ5AOQju$FK)R8-@d6-~d`-}gxr(h0Wb|n75hBWd=uthG#OiQr0No@vePUH z*bx>jv!&QiP+y>CC=&fCmh-rf#U_#3yIhg58(>2KA~Fy3Y3?I?hI`oNrobVjS7g?Zi#EjFCxK0}sW$Sg z4cgE<;n!>~+t!5Fv|^_5iHU6s<0xPnM z0JCBptcAksPc7%?#db>JWV|gVtT{uJjdNK3w}x_5ktSoOo}ufOUh*P(xh@Mo_=_6HC5?TPmqA3#Xsb^yp*=#K%N7+B^N z5;;5{<_t8gG&KfIe>^IYbMZvj3xGXi zZ@|Ee%%Bx8^Rv=yZEjwgHz&PWlmMKRo<{$j#2l5D19%+R@j0LY14byr#KT^|Wgs?S z$RNvwI1|8c<2l2Etr+jOHJU%i8G+4~%eJSu=g|Ww)aK^Q>Po;^eW!Yl`<^7ZmRu`t z^xaP0F4Ff>u#h{TO)*pKVeT-0zjVK2I>$?l#1eZu_Uc5CvmFa_pNPU^VYWeXMkE$K z9DXWHgdOpO7wUr&l!_f0*}-tEAO&Ec0pEJ`?i|cDh}UOehu(maVNGYCYeZt6N)YA=E4??rk@945zRAJDOJktei~@z z!=W6*xZNc;{7NvfddI@^ne@fJnVCJu$KSE1uN?N4Hb)}Kyb*kj+`90U$!InnPp^F& zap}hXL*KYzZLT+5(ca~Bc3$)B#Tx+xRshKVr0)XV#FNW(H`Hq&os2jYv%ugc0BfPqCp`PDvtdj-VY$tz1dvphk%zF{I&ZXgLL4BiCsD+}NCqq?1o~Nhfu4&zyczI=L)1+*6j3rdRMIRH;E7AiQ@y0lz`@>;-Z8Yx z=!Gh$WWtUHX*V3vTqc~_92GKQX>&}=gp&=@X5?d)RDPfwuB?S>svF=>nMx)d4oUDS zaehjG(*m>$W5QwK#{wlZh$oFi4ruXwBsZ8F$&KZx$=puBPb>GvU=?D|;&`wd zqy#F|-~@vorC56+O*&+3I}V{m7Ba&^=;${2jF?5?X&De^S(vpb93dhek;$HJ1&(mr z{tpgZG8S;!grc#y+HG_RWMplz^PQXB)%A;g7sXtPJ>qv4Y*41}T6o(n>vmmkJiPez z-Kr9d$5Tn^61es=R}{+I7lT*iBk{OX=-owLWCoEaV(bTiVClPn1w@Jc=k4op5O2;J zAxuuSV&kxCIPcLEWCxm4A^Ar0w-_tp5nTcol~62*YfO#ik4~VYd8>j<2b*4_`Qovb zah`4)=d;JLZK^1F@^07mYX>w^i|z*yj4+VF^Ae8n(FK?&;{=7;v$|fNt4q(*-;J43tJcz!2z<0-$P9)`>pe z>qZcr$@B4;6K);$!it_yh5?aaxTJ#t8#G#L?u?)m6r0Z=X5lisl$g;L*tY{ADE*c5aSZGhumi zOiTF&)UdWz^ohW`2ln0cv3a!kl|2IvnC(l*|0yD zwm}zt7kZ(;qhr;gwxI5+2IFym{}8Vx{EPD=Weeo80(Tsox=q{8X7KJ<~8A*Y}3@CDS2$a)&kW>_Tv zL^kjv$$r=gohX^^?=Y3Y*ia$!y4UL$#g=YkI01c9X2=?kM5a_|S0U=>c2*@-6(bIf z<{u0z#v5ij^ncNiW?&*{3+F@t|0UA8x37I^+c|xHLYl85z@cVZ<1{lDIEJ-yeqtCc zTWa-;lJ!>eJ?wa;VAy64C4%-y5Qc4mAOI+6F=G~82jlhOz%h?U$}kPC^MnClhLr*h z_Uz24WXG{|%|G9Yr2k5}mVxr-lEGyY0mUu`VmSJF)xY#K%6XYgpSLZ~#Dw^j)Bb{PQwh)BQO7@Zm=lC*2PG z2=SvTT9LMR&||XEd>QK#+Awr8Na;@HBd`^oV9vP4;D9BMm7gJ29008u=nff(rSfA$Q|wrMm|teWGY0|Ky7&c+rYY zfqd~%fx(U3^i~kFpwG_Eo`?8bal+Hm$)}~0c=b`62o^9Nw^t)oLS`h$Nbr;Vr-doY zlz5;0UdMg%y^+J!qk>TNRsDOVy^g(+QE9(pf8;)be>FTGAtw0`*q$bzw!cEWVxM>X zPUdQkno^7OslA2JHg=#PCl~}hl1m7y{RH>M>8}7EhB>h36H#s&& zzQun__$)5-Ykp-?!ogP>Xy zNugW8`VS>iNL9Lf!23if-pWH>V0``Mc%(>V6O;pw1Yp-d=3B8T4IQOg+u61u;dBIeL1Pu?DqRK-40HX9u4y?MD z?46J$br?eXn~WyOY+h*)uh--@76n>>X)d8Glzr_>_~lcf9{(|^;6YGJPlMJ$6IthZ z^);@?<5H`5wByd%5c`;r*X>I8d&|)K?~Dzj)^b1haB!IiJ^MJpMs-YajR-|GlAbg3 zXu&Qu+SL#b{Px^!)K0V8MTc6jeaG;j%C6APmz%Hv(lDPzaS&uT;ElSlc)Iw<&Z(6t z%^7l*1Y6UO)eWHw+kyzx5Ouv9PA*Q=joqAxAOT%W8{i#od=1!B$}ud^a4%C3%GV-8 zM}{RBl<*_ZF6%GYO#8s+#CV!%*CjbzM$U#Ac&RX;209r5kx;+NVY{eVLD1w{!#O8G zWYN3w;FQyFB{~v0y==yL&-u^EySNa(eUm7j)6i23+r~NXz7l3+>kQsTxz2DOe+zi7 zO2=R|baO^G>zAcjX25L+HNXMwZBw(+8zw_iRZlGyrnNShRGs#`K@uf+8G!h^h7-!| zG0XuVhWl*WD=d(gnL*+Saq*+glr`BM+kAEa`}vmVM$R4HmLB-qiKKn$WVnbwj9}|e zQC$2yulI6my!MU&>?Jds%i`}q1n`$O&?*sd%}}V8_StV6>jL)H-qY*r-Mz~a_l#jk z1RZKZ>1!4H3$8xx+rdBSEF_WiQCEVws4|L|(ZsN>`Xc#xn! z%(?tg?ca?}q2JeXMLRUVI|qYr1c?rb6RV9xcEvrP@`Jyuf%tLMsoApm-)Cr1tSu!W8t=4h7@`SCj?}lGy{{|I$G*PhX^V;_9mO5(QdfcHGCT&e+pyxgzd0>_~1{q=t zwlu78ygajR9wC_ zha+X3qmGrYDQ)7xhP5J-4SIDjOs``uR@y|oub%~d%1(1fOSQAVZsj~3-?6%^pV<|c zy)P7FU^{v2{C3+23I9Cvir8ybV5VgY{I*($bOWjtC3)jV3yMK@Q|#)p#dMy7=lF)i z6Fg_c*LbUM+y!jE1U6I8d=5YH`*Ei;L_f)?IDktpf4`xaX`Em0gi#K;A+gtmh%`Ay zSm-wCpw*k`E(Xn-#jm4II7WOKv>6b}BfcQ+vYhy5?f^m8X@iro#2ru{XCtG+n;4 zWhU=pwe|T2y-wKg?N*O{h9$JfkuK#)W|(X23B1%;OkYPhD7HPv5uIHE<6H@T7hhKaA%M}7?4-VI~c0OMW;`VzK_}n(tG)Li~Wl{Y$r0$2Rh6sbFPa~ z?Mn7~tX)2A3max*$I#UUH>*63zUc*vk7cQ%0e(P;0^%-Q=nc6DP7JG=15CbU_!$nX z<{;h=>q$U7RRJptKx#0W3-)yI)x|8l7p9%8*e0 zu^-@@xssT$kto}C+u8WD=$CLyd^fIH8Jhh*=d7jv4&m{Q&7|RHzu~t5PY2@lV0TZh zriuOX6k!-5oPJ)Bmm%bjf;ROnHx`_Opjnhm+3)W=p#+Zsa~jM%G`f(Uu|}qKEXp{Q zvT7&zkO-apTA3BH8X2eK<*>|pfuyNp<2Ir2j(M`Hb|MLxvRvKVm}&68`{2JVn*iWBYD)pZlB3$TEY< z1j`x=#y=Ph!7s(2I4L!T(!m_M16eX~&scZiA+yHXx0HXrW%JeEc5Ugidnnso(g!=B$v*tL%l17uy0D!RJz|9O zBABbgiS!xfg|03yBX0dA|Ts);_;&zyIc zz$4?#W09V*JeF+tf|Q4rcinq^Pbn(6kMp_$wmDjRf8n-+C^$^i@JZJz5mN&j3O5{1 zdSm(g{3iq@FuU!kBhm4mO0Q+HMP;_&7xe>|RIH-$B09Sq^P+XxPm?KRr09?~Ra$XA z1qiEiogWLlEwV`6hx3v{H$Nmv7k{+sw;xLn+CZv0V~S-pT2$yY9-sFrxPij9jn-(C zXn;-RO@F-~IMyI@9Z1NjBaakgq9)5I8MsmwhWV{_va3gM#tTL1f2Xc@&&fjGKV3=3eai zq!j)009>s!AS6;O;IPv}3C*0lr>wkk348ovfBjM%gED>7YFj2i<+|r;n26}*mVRaP zX@DU0oI&8dk9OxX4&fm24TuZ?2?4zP%$d@Rmn zg#<|2h z$A@3?nKoc>F^5VI&|0nx!-lwsk?OudCqTmJmrr3G)x-4!h;h^M`zrHjwFPiLaGh9n zd*V}Dr3biRF8D(jsu5*68g;oD)t;+PX+aiy^ss|*S*U6}CRz@sfz6svP}*QV*v;bg z#>k94G&@8xJ64Ei&L%GReA5hV`blG(#E^{0T^4V$TVZ3nly+gd=FYR7>5JsvxPNpJ z{*$q>*1`X%dPvP%X5es+#k492GEUaqq%`Zxn*ge-S-%Vol=AwMDs~mQ3BR1OXE|Px zyGY#$|0}wVhPhY@T2^7lhG}*@7x)f2-w>=lQS{}~K z^wB<&&h?HEjbx5R=_wnq3QU@+RN%YgMhzKdb$T>(njNZ|dmU=4mSdIvOLtaa^w^Si z&r~Lvc9WeZnmXNmAHQG9ruH6R9l?$po73tu*koChoEZOHfGlsQ@bgUfrp;(p7Zlr7X}7^~->zd2V#LUFiHtn~3Ef63MBO z=kvZ#Ehh3a`{)L@^R~N9rIj&kI@*~38Sk^Eq#FWj{l%A^1_dpH9`FWlT;; z8Xv&+{_3=>2)*n>vFBRifSjyMQkP1_FjGl#`9e7#r%NI=f{zU|V)+dsoChUGVHX_u zJ_aFC5D`WK**7+u4V5<)Xk`#Oj)) z{Q}BxRZyy40(x@;lvK*yk>f5=ljb`j*+6--P@M~xZUqE29`9yQ%#LQ8bgfeNX!ov?l^ZOY z>Ta3X&{WVFx4#%5MHrC_E zU%E|P>CRbpc{~<%3!I@@SWgm3f0>mde4UG5Hc{C+*UhBGrn za^m|1F8MiIXJ%M2TL~H@j3M;7w>`E#M%Zr1Svctjv*2zzeSuqpetzu=TywHT8EHSM za`Dd~f#=DbhnQ2*bhfgujip=_188aYY;$vCS?RZ9Iu;%TzO-_)k%(@#*jI4hh$#BM ztbxt(zIW|P;+nRmx4-8gNDfltAe5_?S02(TWbI22vQ!rP&yOWPX1So&)><$xv-&Kj zlbdkcYgVi^eXnQ>8~U33ES(><07hF9Iw@sY#inI+@f}JvHh9_V8L3LJE;lA$_MPp? z=G}ZPy)4~`ap>Ea_JMXwp0E2=%f;4>-JYG(d~Exy0u<8W)wIrBmTusII0cnS57r;Q z7`P~nFn0M z`jW-4B@940ZI{e@lV718@Zu23FT7chpCsQE?<)QJNak^ zzjynD1nWLIz{ZsfD<@Mc%VDU9oqZ__Vki@6|86S;+%p=n2@Bc0s=V*FLv!8H9Y3oa z%=y5}$lUa9*ioC~SOa-Ia6!HZA7-=;JwxTvygq=}rY50ULAOrA?PJsD+?@E1#-1L0 z>s>3tfCo*99C|BSGV`aDS)jMtuc~9oBkE*t^J{WKbB36C=AU5=Ynv+ z9h;B>F*%(6S-W&o<)ge;^(ODc+&J8s#L5e7gqhbn-jI3__LjHtdFXm#{?QO!o_oHc zcD&SA%>qWP9~s#lZ*JwiZJS>8K1^|H&)-KarQd1lM^U)M{e^5n6!bTCyCe|fBS6ui z)3lYkW7bO2l=a#n4ch^Y;pkEoO|kPduA4V|ahhSezGu4*&rJ!%l<=4v3?$^r2 z{);iQN>+^S5v6I2_vAmC4!jw^^?Z%J_%n!<*J*fMcJ!ppPVe!#v3%L>besNj)3?>l zo|chNNnTtm*Y-1yt9x4s}JZo z1z$9XhzF+@z0ri+K}DGKJbIEa5V2OYdHK%ML6wrmDP55xQ9;B%x{TUCh2{byy1J=OEyq=s2&x*MxKo&hEi5^-Lz@r8e7|4)h+?r zDQU`c+hLH|$KL(kb)PkCd{h+eYE62@!@9{q=rMup1BZP>3qJC|9n|52YSIr;7 zg*ZdiCFt|}>OOv`MbH|*K&9HFtKGk1egR`Kg6y)Ki3dJ&^gpK9vUi8{gP|*fN>dZ3 zI)W=aMMeQbRz@dqN8s5lK`Y7+&vcvSQQ%hK#W|L`sSIB)G^xx~BKVZTIb%Suf-|42 zSQhDVf#T^@`*ov!Sh1#q^tlHEi=qHguzM#2>n<4_lRI!ec0s>Yt^Q{|XN`Y`!1>qF zDL?rnkphXC9;Y2{*Xx@3S4-PwQjBcf?45<%+q~z4PMovsXhE%>8-;;N*3(u!wRLX{ z$Lb@`k>P_4PzbSm_@6?4uw)VZ6Av@V{T^5=G}oGoE^zmDLnc;jsU11YT1XW{L?`LY z-3+Z5Dt6}FPQ{*x3+@LVyyf-OUxtg;(J4}zwKNBl`Qwss41I8rW9>M8;;z7XTw0c=G-pA6{{4|eMHr~7I~{0-7z`z> zn&sN$tZG9?TAYXJ^dfPw1{jFTxPmPrh$K=#Xb?!S%*%6xgE}jkMkltIJXMTAeJE}Y z7poO3J7(YLR}5-rZc!b*i7_&rIc=E>A$G+(nvSE$5}W9rsjZi8*Nx%EzPwlmgSH<% z)?Xi$?^NJE-LM&rUX~Ar28gmlp5a{}4UBfX$NH|SA-tuL5`~&8k8qsw-q95!cXCz^ z(fE+wS%SUqct^1UWx8Qt?uH~mi>M}hp0uk08n>u_(&Sxfz=(c%2vpqm+B+HwEgYKQ z6L7I7;DB8d1B&+$F!apj1wVV%#2atkb3#@ou{%3OSBrIzNPXK-!PegwSUroGY z`Fy((#D0Nt&k-cfQ6#+Q-~H4!;P`Dne%^mRj`y)?NGQQfX;Ts-*|mT_faAPb*N3k{ z?Hn^SIk($eZ1@sn>iysg^2cly`;WjQ_`_vfN3jo)2Ija7`wbgwCI7LxAPv4U;_p#H z&tefS42{(Z`vx3oY4nrq2e1%f+2=LB%Ly>f9z3s+(x1er`@_TqK(_<(e ze^>ej6VIxL!Ny0S4k9>#<^wL^DiYN{R`zQ9BJ#43TgN+r>$D^wy)r^My{q>50eMKC z?^08fb3aq;D3S?%83s1bceeuliKhqYAXxL;gO{a`!pIGci=m9rIu`hV)Nj(b`qmMy zXf8L;Q5{l@2Qx=a-c=pEqH&5ofTGM)(^D`3r$^kiP0E1796~mlTAS4$W+t+oun>Fr zbPxb?6}NW98n6z_^()bUX8)tryeo%XJIreh1CGIuzVW4vlEBd=F<*vkNz*ZrxT=d7 z&%TumHHEbEV`?YK#a(!hTNh1BS0Rs75VAd@(9}63`uGtMbu%TXJYllU!7VJqn-bpx zt@)Ts7LAcoGb;+qR`d6dD%ds^z3N^|zJN^$f_}TFyWyM>ppmMc-_`JxZdtVX zUCJ8LnDcyb{(~?_ymY+B$cS&|)T^afG(fY~cNDupkKS0ysbc1u z(G8|14w1O>d=>ryF>itQosZl>t83sI%_AoVL^a*3d?Du7Qx4s^ec^3P63e=RM zH7on>x2O0TVDfFgr=@}L$l^pF*%aWCaeL^1oWj;1s+W@bz-StuEXw(J!Vik>KL7Yq zPkqGD0T2nTMf!@JEm~16%)LIL-b0rwGvWca#&fNP@ITaV)=%+tLlThc776J@jG6_Z z33vyGlEpO16z8dZ7Dj3z06Up_O@xxYx@##6IJ*k@>1Liw2i+=St#WmJ7_$;W=uYMlk z)t}Y&*FP)sT^<-eia1URe7sk-cvuXyGKkf$n_nK*YtFXkpRRswcV*7u3KfAEY?-5Y zfJj9RdsD&MCI@JtqF!Thr5$R9L8AW(2=F2S%L1pO`m1%Z=GeH)6y%TCXUbR0tC7OqXT~I;2R~kz`yw8ddeb9iLQ& zpmiH!AXMvB#)W|;)V&OmnZ|2$K?b|rptHSTRhV!f0sDcbYoQ6VR3k>xaO3qSsrc67 z>L&l&@iFoRI>6+!56$`d4>jMDGTtsRqs7rZP>wa9K8@ps9Pz=qvW_fhN1Ou;E#n|3PD5xL zNdCw1*$RgguwW=jPdjM>bEwHC$~aL^)wvT0+)d7?9u!J5(4@JL1DoXcpTrgiFh&RX zU(`{hHk|;Fu;RG}`j5|Ag_i%xk@oJh3kIYucm5S0Ztl$@4JwVC+1rrImLq$MW*rp# zLa1e93V*`yL!`48jt>qZ4CQ0z>FRr{Eh+54O-F-t;+|S(bQ1MBYJHjwQ;TzXauJ6z zjBSE=wp<|H+o!*%FiJrP=GuC|9e>B}9&+P5lk;?rC%AR*Pe(I^lzOqhAEgc3gKAci8g#BQP2Cfrpb9&xh)KYsVIh`}G} z!^ght?caU=pdbXDYWqEkk;7X*JFEF1xs9!2|AhPU`#Ruj7X9w@rW~@ zd4P3RUS?ZfxM`;CM%r7KV06Ual0%48A^q_ga|o1`U3!m;0FoN>i)mI14lU0#Fr9fl z-@?Pxq%~`r?Qg;ndYykwlcaPye5eXy;S4cnof+eYDe4oDbfTe33TS#c6;uIAB92rC zkov#YLVn<6m|{b$P6Obd1d;zv7UfkbM6s5pE{6fWnO-%`80E3OFQ8JIIqzT$BK%AA z7=)A)g=DCNFgkpsEp0=k2l}p;+eQn9-}TIYU70e-mfv1d9pcS(L&UU$L%McC^Kr;T zJN6znJ<3%L)N^b|sn7&HoT1)!b@`d{i1%lig4WdfL>Y*hYpZ_E*@UIsXx2tM6azy!Qs^BE<9$H=dFqwIegm0o z=PmXyV>9c&FMq7jzc8Y6Be@l*f*(xuHtD68zdUk2b!5ihV>ZZ+#L3yahrt;xlDuZ3 zK0Mj)fVnwcf#XOxO%tcn@^A6wx8Ofs9tiuJvQaWjkOpv{%SM*`fmeYq~EQb=@C)Yy;`|^>@JHa^WGxp zpAqcwy}$8#>&<}n^Y;L0Y30L*r9TtzqSB;1<#{#LTZv&zdc@W5`i~kAcDk|bvodb|a070#+TFX^hW?K`r5%(EdZ zS#7d8{88pb`xm61ehBYy0Ie;0SW`O_XBQ_^L)*V+_C{8)%q*M$Ccxh_K0ZcOPX|)~ za1%Z|7co<3V<$@o7kekzf7Rs;ZGk<)|0=YqmbRwO@}};}_O^z0iYjudz%e$4=FR{P zSYS3!V^cd902eni12Z!#3l}WoUsivcSeQ8&SedxkxnUVqTug1%0UXQ>Oswq8>_93} zLkB5SOLGes00##P12YphE09py#n8smSlG_o#uUKx?`epL*n0qU=-D~A7+BeXg8=lb zOdJdxY)l-i02U@Tb_OnPE;ax&6Dv0ZJ3A96m)^h0BrI)ASpdu|96(W(1qA*hJJ3v(qgLilG0*wh7JHm zX%iqImM)(EYF6=d2Erk2XJ!uoszBM)+!ClEPXLuLP(P;Bu#5^$CZwmcZ6_4p3 z96A2`D*xc32jJiW=&-S|GH|hRa&YJYIDruTv&!<1>VMz>jssql6Y$@n133Q)1hDJB zK-L3r0U`Mh!mR&2<^Lwt0~(;127sOEuaf@TQE(cA<}2ztGU^m#ersLmQ%C>(B2OKSpqy^Wj0J= z+>OsOfMb46gAT7hp?y`E9>Rh*L;M)mkmS!boEi*Y`4vm>a;C~=O_3Gt+`|-vpxZ#V zkLyJd)w^vmL+ci5iOvmra=?h`@Im31^f`^KO&O}~J=!mIPvQ9(VG1A*{)${)u z5dX%A|05j!b-4d>>%aaCj7I-|LV>s)P@jK2_rD#UUh03vLlZ+gm%rh`8KA?=@;3}A z15HKMUd_((uMGhG^RJQoGgh(wwfO&<*uM<~=*6r+r}`Tj{~uPw!phCb{7*Z&=<@VY z6<_B3sIJ)XZhvz#Kb7YhyCmPz;=#*}6_T=(3bF|di1;#}R5wOJ2BEkqB(AiW=qTD7 z>PX~Ta!SQfU@Sr44%zA`DiphqYiNedIsYuVg%~lzI@9s~;j#04@8d+{YsFpKqM}wR zujYOQ2?{_J0-?y)LOq*)Il&JY1Zh&Rx3S~DumA1_AO~Bu%XIdWG+!|O+=N%83|Kj; z(%#j-JymcAlRgLW-F=_FpRR2`7eSfj09$Xr=V|9n1OpdJ@}NJa*Wwpc;rgI=xI{6K zy$$+#{Ox6Ht`QUDZ4>YahdFtk@m4$8z6+uSSCB+W23O7t!h$9=9dxgu+h(3Z4KI5R z0bHb{#ZhX!HG1eP^jIu3+<5G+yPEkVDM>2C0@{}DmLq6i)mV&J;0t1Xt-IVMGS=q| zQoj2zeR$7vTJ^*Sn1vx@1nDh+4#g2u>JaO=sYd-S!ZP)+4d9O8uedX^nmb}%Y z%R5Uf(t{5Xrb5ot5+MMI@Q_8H#S-v>Ca@9qx+u?Nw247&|%LVP5vK+Eqv4IR-|`H z=??{=aGXx8AkYH+2ZXRM4Y&OU86xq5NMSfXjK&N!g$Qw>2XMKRxUiRt65!C_90iUF z@sgR4uncI@c70q7sI?s^qL^?e>L8rwVk|S_JT>F&=muHnLh;n7B&f&bX$SZwVV?r~6f&YZ<=mvbMgg&T$f41ca_QxjhjDL49#>F%s z-25zOw_`KFNh?+vBG6=BoiS=tiYM1BO8bd?YzV4e#xAF3eZZm>>X}jLlx3(YXv~b% zSnpFupS*;dX0%@3PEiD2Sr1QJ4`xT#$C6X}G!x6M875yfe5d02Q{ge->qcyExh4ke zlADXc7oK_$yBIa^$%%~Mq2SK_dU!Zh&$uC(NwvfD6Rh+hk!HrP9}`cL8i#!&M#N^u zky-17GW)H*vMG%=b)|OAX{nlV+*bYyacht#iq38Is9%{iQuFX=FDA-8IbC%_r>@^&1HL>D%?@@85fED!Zxwpe5ZpmHH|t-LfH8Ih13< zg8RTzEn$#SP&dZ;V~gNRlVnJM{lzK?;j?QSX<*y}>N@EaqPxkYy(h_)Tk6yw9r>RF z1eu>iT!#>)K2gaLSGbGl8130USEJ{#0`4)B8S`h(l6Dpk%|A*1ShZ;(*sBg4Nqoy5 zQBgf{lHz07hX+#WX2YuY}R@926H2OKhL@cL5soQu5}C-!S{SS(y*{6 zgguzN>3c~wzq#Y>8-9|Kt(DJ9dleoil_tMi?;AiqW$6#?5SJWy$)G+dVbFY%_OOVw z=K}Ru4Rnl}sJRZ`+#+6yYda^&*?C-I0$Wm<9Pv;>B%)vEMl5Dn7+xgSrA-ujc9U-6 z#OV+lBu%+0UJA;}GkYn`l+>jSt#5qdq4AZxmR4d!T#x1$3rX3SF%bz(pP-)lK?1w7 zJ0aAp+FQV_F`!L(4cG0BzWlyXY3frX`&pR!^TZ&cJwqmT70)cs=qPcyB;r>*j9)cR z`SGyJZ|dqu^gTi}l#LMzhwQoi*Kd>PDseZu70=c!eP$985dL^Xuh}p5S?NuIav7K? zU@rYlICvb`{-SvMcnjTz1K9cAlR#t$m`yKj@^v0;SBIRmuEM5&JSCIjsq2HZd~gys$Jo1u_bv zMFcR}lp&aQLe%X`PDVY!zzsW2@I)k0vLke7MhM&D{`0EDv|@Mvp+`2|AgRMIViHm; zv@y*?z>flP&m?qk>`1v)5xNAXMC?cf;O@lj^@JU_oKzWs8|)h?wX;FxniYJJnI6fL zfMcpm?C|ex@U8nu9=N^-xbw6YDQ>C`IsqqAEMvwRR7i$xN4^7Sng2AtjB zg$-lw2uysakxfCdla#_(=!W=LBmWFa(`bUzQH{uk0QVMe>ZgmLd zkr2#uWC)76E2A4qS&x;!hxd>Szehn{61A9!=>+~Wkx${dp>a*tEgJyW`XwG_26lv< zW2*6%b3Z(xDorKIjEywrwGAd65Qd#M5FUbpHAX>hf{vr0Jxa%tuPeflq%+oa0NRk; zDfN_CJ8F1`<~o0VO7DX7hj#1hb3L7UFYemb1$!T<57m3oIreCjAevxRMoNM54;$4h zMFHjCOG=|5M6MRS@N~o4RRa>6QM|VRLSV{rEdK%FrN>=h279a`@-ed9wutl>DF$jX z*8`h*83q8}=+uG09oTEgL*hOxnVO! z$rnq)Ile;fqRWNX$6A6N9tS|&OaF`QZM6&}c2gYy=ag#1B4)@VC-&!wNV?V5w}5B| zl$t?;)ws(DBP9KP>(%J47nrxDC#PqO?mi`WfIQV4GQu3%AA^mr(ioP2;{-RBcwMd& z1`3S?>#@rNw}#YB@ed(FfPGTy=*9uyHO5ClSUB2(pFcRRl>Px9_lF@*^mJkR!uiSm zgX3?gKX`v4{AB#iNE(?V4;v`l2s^@T4N#uAyu-U_Aws+itLij8lsr_>=3|y(7AEH> z=X6V7gOBv58nZOmd~wCS8=nYmW#7I}msKt{pZqwjS^A^YD%tw2^u#$bn+*+XOz;xk ziJ-L1f&I=--wGQ#Od3z?0G&vr%E_r7dX4Ud$<Wcf*)CmD zoImV>BQ~R9tr@r_!1x684#qbyP7?ciU!Wa2yB^_Q3PZ2&Xz$B=%ucf2q?}uSJo{?6 zz2nKsGAucGv1RVEw1%Z*0!>4-tdf4o>o{jqoS#TdzvP8^L!vBYveXyCUh~ypcWLg# zkhWj_*(aoHt5GYrkX|>``Y2Aw1JA2N7%zYaZ$%^*9H@QWV{9Llo1SyqNK zf;O1dmWnZLD6yRBi)v2nZ+LFOvRa#ojNt4B?b2WcJMwG3!+J|Q>{H+yq19ug?@1;} zkKZCskBA64(E7*kgo|s2>|)ECCF58OzG6q)9QyDDKm$b8&1kaOZLa--KGRC6d=wFu8kyo%m`>?g4^;4z#dI4fqu-0wn6`e_by9k!lf4| zqBgS~mU}W}y&B)M4};#U7ivOgNwzSC|K7X8f+9_>J&Gu_7HK6bLh6l>PZ}P9E!TM< zfG^C8*cU{nYAryD9(pT1?$DmV56oNE8)TaSg(Z>5us9Hf2@gn>l@Nc2SKUXc5|2Le zDS5VJUB|jknuyG_Rp_)7Jpivb+A>zAKV=9qAC-@;4 zni0jKJ!N#79b@dMlxq}``aAw{#Uh`0rxY4Vr9i`RB~_9VeDTz%@M2l+C@WPeNoKIr z@g64SA@(xmk5DD-ns>NnnwkNa!~6thLzv-WCGMav7Rqr3MN!$z65KJ;T%z1DW7wrW;g~Thh{mwPv^$10 z6jVFAvKR`Yjdujo{bYx{vLhzniOeh8Fz96j*O|mmN8oeHfw{wT%6+0UGk*9)GfgXZ z5B;Rc3vEobpN&&L#B(W-dxdILw39{k z&43(})_;VCPN};WlIz6`k5gT=Z=DI{{Yl*H`@XvKM7K4S^BU6Lo86a`0u zWvcu=uPQZxA%r&FSBM^!+t@adR|vd%d0=HkZJc0eD zT-c@`>JVTz;tD)dzs1}v!0%Omm*V55ro%kEvDJHWP0`W4&1cWQj3 z4Z4+zXkUM`!YAfU)klzn`t26PPUC4G$l+<97~>N~C*_X^woYpN4a}9QKz}jK2ildg zz@TxP&MWeU8h#&93Q`^TGZhg@ly@r9Z1LWRWBwgzUN87K^lBt@D$)%Zq3X6IJQDS_ zG1f;}XZ#k;cCcj1^9?$o+V;T0OY$AzN7bJBO~xIe7mCvMz_&WlSG+v6TjvNG|AG4x zrH` zyd~CG-R7%5?kwqy{Ntgu79M{a)qn(jQvv)?^MR?Qe!Kayt=N{^p|KV{qq-UHJFf2& z$C=vo!n>`!-HYX+;|cz4kKho&C)7Qa^M-v}O@D;*CHs!2d+2Ta{A2`r{QO0JDEzkY z4ma)>=^^_&_*?4Aje<{AXO#bL0I+ed;EtwSe^Z_s?4_C&!3(``5t4bQl!&|&nKR)8(>wC zuVf+I<#$5v$7g}O|Mh2{e62!18*!?gFeVwXniPg|h{>W5YLa)8RuV4-*&~^j$Ywk+ z$t`o=V)AiX)nk#th;|<$Y^8x@uE7XhAL0)qFs(XCM!ICXw>Z{mRIV& zxLYa}FG%nB0i3-t{^62Y?W=PHKD+2?s^oKoAcO@q0laD1m$@{S)XmAS^}8`*Rtm-{ zBr7LkPM3iD2$pgI$+|xJRRA1^3oM6?;4Tr0&1}CHi8{$@ol>1JiVgB2_OTA>s>6Py z&jth@qN9E@n{Q_GHhDyw67o`abOHnlc@RvP+oOgw3Wg3O{}}{71)SF={RseOm?}-G zBSk;(k*%EGl)uktDgNj%TvddPl=Y#h_r&Z#MA-`xRnEB_T}(2b5MC8g0m2J5N(A~m z7R*5tqzohwz?fJ`SFr)m zgto0!cktZ&omhdSOPKbV%Bmmo6N@*TfYgP`6J`T(J=U6z&t5&&>Q|=9%g)*nny_Uc zJAGs~Mx9t6sS7_h6p@5g(F>L~)fS|pG%SEc^63jWAP?8(B|M`^k+TRJG% z$S%mB4mG;Q)*>jh+Us~5`guTo*M(Dwh!IjFZBe=MHQ`h6xLZs*$;c|dk}uA)*JPTa zeOKVtfH}+?rPrF^(t6wzL|C{Yk-r8FKXV^ffPC{?3Q1Bik z3I-XKE{H>$L~d<>BA{-}M%kr?Y-Ba1Y^cI4XOY!Mtjq-|yJXx*S@n)Qsd((v%0PB8 zAwvU!Ujolwx_BHr=8WFT$-zOoAt(=BQmO)L4W_x(^t}|b3f4|NR9QW=xk{EGMls$3 zsd;h6l(<=vxTz7jr5>4t4gz#9Qjr?2@DSoKAmTRD+F34@TNP z6m>9yrv?(Ls*?~@DpPUIi6~@4ajwxQfB_EeAg($LEU&Y%5R#OpDCY#}C~g(8^$Bi^ zgl4f8X-)mVR+v!v%ozoJ@4;X>VVuM9#%;ZUzw@P?4FjJ+yn5#5i6aktBe z2BhpByN{olYn2>UoM$K7zsZaSgpCFajlc)=N%jCJju{bmUM;Op2A8|qEv>Hx_q%2- z&%J%%;Yf8|;?U8ESj<1y*hy5`qv=SkM`Ohjq`s7sCPy+w(;Hi_#>ysWeyKE0&YZP7 zW29uNwO&m)3&2Ur9-_#sY9+Z)rGvB zC$|bCZjo~~UjC%Z_JLIFM6y8ht6;wbJ6T1F{%@40^4nOe&Ro9`d3J{Uf~GR!oyg7a zd}4w;j>>Bif_%)*%kxO}iGF2ww{7u$5z2(6ME%gSNJ6vHg1r*IL8<--O+Ta^0h4r2 zIvy(?B#?5Oe48%B#~nMJD(reBJ$bXD-H{CGu5G#VwNVxAMzaL6-U&zQdf-pJ<`+Bh zrrGgcEere5)8_R>%C(aEaa|~m@G1}dWnIo-ERF?VIZgW*-VW)$K+h%B8W1=_ z)(+{)_v2xHYEELhgPVtDHQ0pwc3+omhUA zy*!mX-=EvrqK%zuqF7DCH+(j2KL&06mTdjTY(IiGHjg;s9kS135Avx5`<%j~ILq7i z#+({e?WSosuYaJcJIOD?4iL(WaWkflmY%Tn1 zU%jZr(7APiyhpxFJej;m*yaP)qA6W6V-Mm-vw61F zM2Y#{O97Uw3&pRA#gN~XV-_Xgz?5TRWTa{+cm%12MsF;(4=GKQFs3@bdPS)sswd2h z98)I+gQ+ESTlA4C$4Je+zEXPS66EfX4MjvBS8*mB^l4v~so|MMV>&P}YyV37kd@7- zO|uXSuvw!R;};mD5h*@UyAm)yz`-zFFB_ zIBhZ0y{3sOUgIDE6H_)76TR*G{n7E)`=fkHSM*J~W{om>f!1HHr<1VFNN7iu{J0vG zsKe9wG_hX>sUl@ua{$>TiT4xV75k=?9ft@RNYN9+@>ae#R^%0t&n7m{CLTJ~Us-OM zwy(8Yw$HVr>eWow-k&tMQhRmiFX}u6XQ8}!?_ zAFO6}V>8QVqRhQWBuDsyQOM$5#=s*U(p%O zP#B$s>pnNMX>GkFjyX#%r{c+@HM_dZLCm6TDoU@nx!49b^{-CzqO``sv}wNB*b5IyVanJc zEcA_abZ$OLCh`7!lA@jBG+SBHenxtB)LQCy)Ryx*ZB;-{kFKxTJ;!~og!1<$w8-Z- z2Yu!}5?6mcVwXt!jl0Dw(fonuL`xZe$9^Sbz0kBwP<_`qd_v`^np|64Uu`~rIMCsz zveI07hU@p*Lw(_-zv`gBQc~kDdbM{T-C4t+uYpx-ox~?yZQZ{(XCm_T9Fbq5m3>n7 zg@4hciLQ318*LUhen!BOJV%XEEbnb(V(4bG?HXUq3V&wMv~9W=vRD zHwu$;8ALU(3>DAEa5S29Y%aarT6Q+qTluDRZVCN>q%I-G)IXwb)wwR>PEH9AVVvp^d*f1!Wq z@ED%d{)9#o^ofOB3I&mY&JGdu=11)3LVB2}E%zbxA=IEE&F74(+hbOv34)SZEy5DV zW1IDmBli;Zs`pv3{cX3fcwIoAdyZl~EebtipW+nlGpX*_W^3hAW;3~#)>QN4)>44e z?qJeVzKdp8dC4hl%AEhVONI&+--&O(6NlR-Pw;vyj-#;MFkA}}$KL;R;U{qD1hi^( zzmiEkJ(ulG1my8~of~y$C{u_)qFcC?nll%Il-CWbHQ`qsc^%{-9ORn@#G0jcpaEQx zk6`@jcW)pu5rN1yhcw?FN|lcBTo>XCLksi#NiM%QQr(D6myUsi*jgjO!Z(xsiHGQ) zCd3hV1|fso%9OU@KN562A;d8_ZH1Z{FU}UY8p0G;eA@}LF|4}g4oY54E0c==I4?o* z-GScso7bnv*$ORC)cgX5Hs z-uen=U5McmvWmAbrlVN1d#hP6dBl&&Qf7rdibk7|aasi!A~`SMyY*aO4vH*&zMPC> zx=Y@I;Y^roh^V!+tA>VDdY_Q;T$WjS`Zn|Iyi7`5p$XRnE!mpo;wov1qBTpajtgS} z5JcUa=3#XKCoX!%Ms^mRBz9DzT=CqgY*7IzKy_Yg+$?_vh#V>{O;dAZgvzC~)Y9_! z7z;~<{AY8fTnOmkd?IRwY+}XnzM3MkvsI@!^B9%6bx-q@?{Qw8ocb3p&zXuhJ{cGjFJl{_1qP*^*pn< zrNGM~(;4Wn*071$e7U@DF;DQ!l6B3^HNJyzYr72nTQNfiQKe9_M4!Y_BIIwf$H&*t z^|H2WDl6Jlt+0=q9zSYNhMv8;A? z4xW^+yZRHJ=Mrxnq8vJ}kYy}Rw^^vfluS@o?B;DT8r!1!F-fRmaMrQ&!r~Gs(mJDC z;rhGN`c0Rk`wW;bjb`V$PVP>iISAmEVCV0CDLS(9PBXyY{R&AU_p&i%moFPSsPniP zrcjTU->9bmC zr}S!i0krK1%Vb3_+dB9L+#@!z5A1RmvzV<0Q!-iBPPjAxdo}^N?!&#gg+RxMG%-0n z@7@CxZ9fUjnA?nl&BZy^alzUuy@KCZ>-p!RC3;Y<(j*9xOJboyS?6I|`m*b0$$7nk zds!HQaK=@73N91aKxQ!}rKi~V2j9z=S2 z!^{lFJMyl!8Kn5ipc7wf_Lt!cn#y=J~GE?h7v<&&3;X`KN-wIXU+aCetqSH#rB&xc#s2Es|1GRjAqFc&M@2_ z1obF@nr2MMGMY7Nc$dFQ4$u%5U0+|TplXWdmAAU)Gk3S*7DasrWgkNDg4IP zgDF9PFY{<#pb>%*G7D3G7obie%`TIMV|TXdeL2*|zV#Yn{cuL%B(BFXetvh3$%!k# z`WmV9c$IV#3BHV%4nEwU;yB56$MiyJ+#=b;Y{iNt3x=KIqrJLo$x4@?1j&?sm&P>P zIj6T1%2`4p)~;x@W^I~~gFM9UPIpU)a!JawzL2uq*(a9ByFq{SxS&htDs#lzg^~4#n;Btb(3`iV#WMj_T<+b?co=+)o9&nf4kRy(xwjzimDbubib%$cJRaoTV1)`n zm$yol6lT^Llp&IK#$u@hizi}CJ}Tq@zgn%(1F0&Zx9{6^g%Syk>*G1Mdw|WS6>H}M z6B3KGiHlk^p-LmalxLp9^eGK#FCD@!`-P#o=fx$w*mTr%oW@Tg?tLr9aP5fYKIiid z3m5LIR-weWeAyb^nc<(m4|zScnjax9X5^Yv8!}1J7AyLBmaJUK2pE% zEhs?(GgGDPx0%|zg;abx+43U6LE4@T1H=3n%>9i}N4r8*X1vN_(s>b>eYLGZRXRsJIbFd}-u(TS=-BSxFcW04TRWsiO>nE}@R(QlUMQ{e;Kzn}eK87YmtX zNHV*ObrK##vK1ZXfeYDlmIO7!ZZ_dHhmFI#9xllso>pC%puEd8nL3za$PKBhnNozG zoRZsY()3fp_(3cS1*D`}v0o}iX(j0j^=#eSBq@}ZSLohef9iKRwh*Q91H=)-%~+4r zg-l_gz=!(LJgquwg}G)USVuLhcbu~!Sl-CPw$#xHBpL!|OHXm1DII{ipcL&@u-6l3EmKwLp5pNffMb+rnk;mmxuYB#amyaIRq=7W~g z;2K}p{F!%kCw6$=*C~k(*U~D)OQgmq;bZ#+Es|tm#36(Bj9u#WC*rhGp=|MDn^w`8W?E202<@zz?hvR)uL{-?(<)`*rudk=K{Q1jM*eTu8nM+N<2v2S+rt8R2UmPS2be)g0dh^2frc=NgU4o^>ui>4?{3m-Uwy28mQ-}hXc>}`jE?C&z4eGhS5BVU{$a)?17Vc&LMxn3$3_#i zhq*0#`k*P=gn&OI%*TI1RU7uUyr0jHFj1$WOp8vVYf6N^E6To86Q)Kqaaf~SB8bZm z;GjSt{CO8vYhfB)&ze7z(^M2!zp)4XBvEtbgfk}%nibFxU>o2QAPiig58Djtm_t_0 zUd@E~?Z}RI3oCP;EI6jfoE70NWSiGxeH0P0`MWKEzmT%`;iS5C{qAktl*;u+@adUw zs~!NzLVOKd&gkBrBjK(o5>r=ZX$A}G&z~zQx?+hc&a15rPmHS<`I#YoQZQl~DI4Kc z#uA|$v6DZTwI;$ZPp%(Db+ZWX+)CaySI_D+L-RU}b}9x5(9PSt`PcY43*k%DY6}T6XvSkmOfeof}4H(VG69 zau`z#EQRq1=aOdq1Y3-r>{1fHh#swX@zv#uzGsZ-=h1u3Ji8jfmHENmp4Pf1#MfBO zq}26`)cXo8;~lQWjzd*DOX>4 zixT|=U9HxvuqhMqox4~AcTkVyn-S4C!pH<%1&<;v`rOVzRc|HUz{I<)`13PB?Cg*L zM}P7d7eM1VZC1-umerFZS3mDyc?*tDd-F7#iJjGV3CH=iDww;KazIa{7aiETgS_+O zz+sPuNKZemCpZE}`K6QA6w8mZrV+%AUKTOdIKdWO#xp zrkGeoQ`3+J0n8f>e?e@{%3aEXFsE+CnM$X)jLCIZpWH>Soyyn3;HCwRUfnp=?&)M@ zatqG;rtRK%O2ZAMw9H0RpwR_pL!0#X?dyb-`m0Z0O6_Ffg5GD^V~DwZ;~0(E_)#Sh zs9S%AaFVKdxq#DR5w;zcydwWhW`$-XZhQlb<>)GYPz^6j@>N4nCs$E<(i-gGO#y5W zfVqWh_oV)m+0I!vqg3BU+eY73+qP@*A?JbU_B|Q{uc|e2l@$zo_Jn1rNO!+^wSoRt z(onv!hO}C+Rj_TeebmL}#tu+9YE*Y_B$gNoi8Rct8YB!I0%0t>H05+ z6z<0U1DLD#Xa-Rpf}}E)%3dc6(H6d9+JaS9)$}?in3(m>gDgWAmfu~*=WT%GPlr#) z>vQ=|snzU`>x;DG3*;=bAMJz>Z?XXP^HnTAH>bk}8U~FwOe_?y&|i z*7|Tln3e{=ba|!Ujx}$;8p6E zleO+XX#;97_iD{L(`ymT6`D%u6J-l2ClV3SNAz^K_aZ`bZr5ZgbK}2ghzTJqa?g_ zpGdeA6%|9T;`%ATK1l+LcSidE-Xk}6M7>K0%n?{P6|m(ZlZ!dA+L@_^rr+rq=v9vh zvd=^>n|n#66K$Y=zK7lt))gf=Ef1~_J|X5l)oMvp!#qD=48?cPz-;I~j5T zNr{1>neZw4j6mhHc!VTL8=l*?EK1wxt}P%=l*EadmRuFuZ{H9wGNW+*_^M2&clai< zg|fYSik^5FNGSa*QYXoRgg=Ycu*S!y|7&?u=-yre?bXmb!n_Yu11mzkhXf&y80?B5Tiv*r}c|Ld(LW zzq&)hKa-sD4a4#WQgd=k$*EEmHJGn*L*^Df$1Qj#?~fQA4)-=o0S}P+6%?}yhvVC7 zb#)#TFKUcM&zghT!=;ER6nYL{OAs<*$OIY#vHV!!S?X!nh_Z zr1DO3(|dG0bDuWsG(4QfFBN0sNCy1~c;x*wyCwgT;Nx@xIvKL@2(DMt8E+%EOFcZH zIQs`8j_)WUs58MH(*?rV!{2Fz3j`J-pJ}8(ayDG7jj2Kp*S>4jQ`T`7ToNM`qe%CU z?ta%~^T;!ZM~_9S(Q{oKVNp8+Per4na`uAS2M~W>6FEe})P6}d6P^IcGt8LF*Yqz= zoT7^9{$bt~v-r(GJ+H=%`0R|P{yJ7eBG#||wb@g%&vIt`OosT)yqj>^`MyV3((0S4 zdpssA!EV{b$eerjAKJ=;53ri9D0_Ogp_iBk$kUgFITcP!Sc=3yB9&k?2_X1>YJ?k? z2+ecezVTUmH+@vCZ&1rVzB{r>ZxX^qnl~gPiH0sul5(|u@`!uX^5t9;!GznD35KMT zJ9(P*s>R`rR)9IZth0J`z@v>VX}O~PgwnHGB0$f>YaJJ*O0GkRrxaynZD49MQN8{+ zaN{~=kRYN<){cTif~|$_!^Zn~x2{-^*JtkBTz7pv+j(K(MKK^N&e0KRCSJ+W$y@Sm z;wk1jf;FAbZ4jaV(#yj1@!bRj%L&Ery9>~?cTO4>OQYhcNue=BTpmG(k~2H>Bv4xk)5yZ z$&;sKR)VMZX~uWDE!<-l_ol6Xkag!(_il@xyf@i8Prc_u0%c;XE1IUf=Ep?rBiw$c zoZli>-CV=I!j6@VIpCU%Pi`RmfdF^oNSEljaK2=72-uGKuZi z7vOdgR3nEeC?zJ&_ueaAm*|q}zN6FV^i{m}H&MMC{`j+p!C2+di#%0DZzlc_@9OD?2M?#*k(D_|S`3@f`-{;VVVGF}LQ0R3|XVnTwzr473e zbQe-~Sas-yo!+wbXJnl2bJBI)4$5j-)f(gTqhC(M&S~@U698%DX>XuuqB3a*&DIk6 zc23m!w%gcLoo>?;riloHDg-RXjHygAPUoDKkLMEvVNNTwrwqnQI!jHwdKeq^)|O1q zjj_18Hiy|=@1x;)3H_~xSFO5@x8)@fi&IW+0M@!tMUv)|la_|YE0{;xQCcKC4rZTe zg(a5AY&ue)=m4_f#ec!1!7QD*qL=!#?5$$)RaQPVyU8l(SuNquoC>UQXShnAiQ~=w zIJTo}Z+#e&V&gK4*eJQvvjjkIR@o;qG)B5Fd``Sy;yzl-gZh|{C z8Sjkc;h;QICQh*(q(kU+uNGvI6TIp?Be_0_ekexa)G8X*T!?NNRj-I#uu%Xc_o5L~ z);D0hE`ipk`*!nqltaX-Al(09PXrGZ6ck`s=uIGpdC~&>TV5B#w0K3b%xAC8GTw1L z0UNaLfD2m;6)sXjL#(cw@a;scYEJtWIgb1La|aRPdyjc(2((qPSgz+MPW^ehoYjxwPm+){(SEP zX)0E@LCi->`aC?&raZf7Rry##Z_Gjbemjm-rHJFmrKh*uAXh*mRbTl*VkMiIJTZ#e zn!c_6EV#C9>_g?jc?HLmAmu(KjeAUDMZ!nMLw3`Iak@_F4*#9^U8+Oyp5z|o9^<%b zVXMMV@H74cw4nOx#T~f1~`l^FR*xwWQt)4U|F|k}#cXUu}E-txO(cYvrVBPTGLQ)`GzN{u=IA?WmYam}h zhqLX>d<_KPa;{R4CqLcfWbO7;p_dJ$+#5v|7C~$iYG!L}$53$9Wum?XC+dH_tKyDX z!ey#o>Okk}7UW3JFSUC*FyjF<||v_|v{?J*3SiO*gsrImuBa}_aZGus(~ zqs_}J({3S#oAl#e1VQ-APhS$&-B?edK6@jNg_p#U!<^ZhOZ3@WU)}A>(JT+KO9g z(cJX0UV>A`$M*@)7Yguqv=;!Zb5!+UvzXRymuwxCxODFkbQ99rpGTLl+=b_-8Giy` z8>%okgR7e?8+{j_*S>R%4%hvD)dlSiZsY36@;PjZXj&YOa%Q(X=ZXG+fQZ%y-MZ&P z8flutZ;$ellg^5t-9Fb3Y@KntV!WP59mz;KbMi_r%d`);-cKRkACFq`#)P)PkhPyu zpC?|wy=D0ex%0D8X9E-K3ZH{-3si$u2lrPp;t6DZS;@rQiqFP3&%bPL>2<-8vSE$K zw;+VbWpX^k3IBv9{iU!YDd$qe6SEw8j$__^_u1ffq3Ag8lK1&h)>hWqRtEUm2o_?> zd{x}!zqYA6l_`?Bw91iKlVK;sP%s-L9d> zcbJTf2d6y$pV+;iGqbJ3Ou<1&(jrHg+|iU@E%wtGu`24ESh`e`#wFJ}|AKlQy5`TW zhM;zXnshGDm=vZU&|SVE6jp7(Ij>7M(uQ=M($IDDgV~T7UROB=@ql94N?x5WC2j(~ z)~(I&AAN0lzYKrd+Po~v`Z?XC3p4l}RI$fIU&1n9H#5aH(R2Hmy#67pBKz1Ql;VFp zGskaxoUOTa)m>Pq&&@*ExL$Ry2v{1uSWy0$xPzb0jkc?SLHOB)>`VUUJkBsi0z6HY z6^?UnKzLo9>j&^h(W7+5@3;Z;Ol4a3a9)`USjFQd_;ckqU}t?D)Dk}$7%hy;>8|zb zXJQVr>LEBZT?I|vMkseQq7?gvYH&u&briatZ4yR#+JRBR>K5-}LAuztB%5}qo1Rq#o&Fyrr_cm)XndQ$DwmOifmwXDbb+h+o75 z!(>Y^q^P%2rLYSQrLY4Mm64-H6PnbOT@@$g@dqDQzNUV@e)sN9xg%#7@M8qw1oUTB zxMf>dpCa!8SMN2DuU)vWfRCz2n5J+yaZ29sj*iI_yH-Hkam7VZQ)^rT$cz()Jg-#K zwSUT#O~K?Ubv+sfTo29-($-^|ppWzZK?R3xTH8h5X?DBaN$WMCK=pB@Ee9&fK#^+9 zqi$`)=JncTr~HKJdrQ{uHI^S|!+sr~DNPy)lpeyg36=C)9x+yL&ncY`7Lw0Dd0@Qx zw!Vc5p*NgMV|ui$D%&enMd)R5medYRlgvBK-^N`kZrygE`cl2nY}xnb_9=1zwGX*P zT^7BC_=Maxy=0P)k-P{cSyjf+<#;a+?#u4efDk;RX!Sk!&&^!w(Py9}X32A8u zH6a-eFWyQ<+>^90-<`FP#7$47hDoO{h&RIV!pfNpA79X;1kJdjVF3I7K3P2|#jdmV zHhbnR`Z*|q<4n`{F8i`WiBb$k%?`KY;~s}0)6@K{XDxc;;cSfZ8C}PeUV?y?~~7~$(aaUEM35YoJ(?bZNvQO!eS@=qnY1QoE#lj zleJy!i?eyl;tvou4ZhoYx&?MeHQP(2io-JLi*s`W5FYkRDa74 z1F!M0+=+*rV8@w2V*{>)p)hTPsQOGC+RfVysK-`Dj#K_QN0W-FB#2Gbuoq(N-#9AB z9DHq2Tnby9%-2g>TYO#{15G~r#t|uYzK?OI0uG1ba`>0FYm9YX%`D1Oo8Gc^XTpBh zBO(3suikziA3dGh*8qMmB0fDP9F@M0r-9$&aPXZ@IX^nh2$sD~46c^FE`5D>4xXpB z?mj{e$RT}SwfZd(benCZB952@tHHYkq%Qq^?-I=YHGS@X*p&wi<+XI!&S+Cw71b=~ zXr!AN$%I`;7!C_}Atm1^36Kbo^U^3#frVQ_-Ok6HNp#v^KMV0&U~dZ%*@qmA z7U9ht)ieQ@j=ylTH99nxCg?ppJ?tO4kMY@|HoIl{9s4?@b<0&an|wHZLv;jX;j0WP zPu(AbsJGA@S|gnb`+IePi)WxX*QC2O*+8<}xfP&Ke>Ru;av-bIW)Nm=SdBvKsVjeUCe%&WTL zX+NLA*)FoK=-gP{6(U3*im_KYs9Qe!TQaXK!*v!{Hi0aw>wxD#-$iwQ$M!WDy3;1P zuEYe!niUg?FJwjGfWrb%Jy%wwn)Kc|s69M<_w$GLa!pD`r0VI%9-6fb!uItL6 z8uUo5VaQ#ae~BPuBj(q#@kT}qcM%pimu%1LFz*f4mxEFaTQ&hp>?|QYR=7fi>M=@t z?0t`u!eW>QPHd*AYmXDMHmzk7Y;9<8c71}$n&B!pt)-`XYat>5812+acYRG&p*dG+ zr(fFxo|}Qk#&bi(7)9@M*X~M)qQV9JR!Vgojco1WdfHht2!1)~QN@3g!FXL7YaB3M31%3DH1PdlfX~@^VT;rntIk=S-Kfj{Fi={Mx`NWX1o+UJY*Cr!?JU|K?+Vm*_)d? zlrm;cj7i(QtSkyrDG#wfL=ZM=P&y)9$$ zd3CEc6#rN?81$HNQmP*tulg{P+uu+-XnlJ-0hq5!EO!umYg-~d)Qi~clHQz>YEP^^b*d@Y1gLhd@TC*_BOfZrt2wfcTmTo?wg~RtuYc=Xwr~es;d;! zPoX}$-&(@1?9*b_##@ue^ICKnCyXJhTYos4*5S6*!wtFId4Y&(uh+&e3(9LK-T^2gpEVtzH3cQpPEv4HnE^za~q zH^VxCinS%6AaM8YGmBxmdWSyxD14WIN)`dKmtzK{Bv-~q&QAlOKwXg@d^CC)Z@CBk z9BT;`{WfXzj7OI!o3BQ>SF5RrDzwU0KQ&c!FthIzu?*byQqVy$BL)dxJkaJMbd7zTWu{BxJ4R;p3Jha};g0OsfCj5NRcuDRd$32!8jsAEz_tlFF75(9O_2apjh-bpHfx$#&WIbd{}) z(5N(D+G`En|BwC2tc9Nw2(lV{j>rGq%ewBFj{JsTas_41?X3BXq)a7SgQ{saUPt<3 zMa`}%vE$goVQCT26vNkk)ABXhSa1Fz*O=gF55B_T63=uhJy_4SZ>|#sF&MXXSk9X# zY?L>C3ky-o5X`2%9|BZo@S*A%`OUS|EX;RL9$iO2aL&dhqjGLM%C_FYI>U#}I=5OQ zC&vJzlJbweW!sfP0Ci|Bk#cRvFwtZkSyrQp6WFqHyTK2wPR1_JQCr3_ldkUgqmrU!7Dt*{Mk-`w3b4vjg$b5)=f?fjI>ET3N0jJ^E)vyg z%;8r;SjYU|#ib}Kh0~)`mQ-ox%a#>6T*COiY|KqRA9)`W%3qqp--Z;vuU3pJev~)^ z9`H`MNSsqQ2sRn;<#0{y;kKypWx*UU?OYks&xyXKA#o<|xo7{-skPJWW5l0A)@s>* zy=;3)#_)4EIb?v%BEV=q7Sm-2Sx{m+=DDu8Cr*w7DpmeW8wfyBY~z;qb%t$jkooEO8uv{mtdF{OHf46e0L5XCrh*6v;d`- zm83?a2W$7*8*EoM!wqW{T;_h*FDR{Q`RQd6GRQXo5dSX7uJ6Kan6SrN_8Ln;s)oy)w3i#6y z>5$iV0u==7R~A2|Wqp2~*XEbfUZ0cqFoq-jVF3$Y&3CI0#apWTuGAY3#Xa{lhyI3U zbX&eUA*Y$`IG2l6$5LGFu`${`%{vWmgRvV1+=_4S$A6}uy(-^N$Wq?#?|F)~NW3;# zbgBoX9u^W(s^0eNlPJ+kb>5)2VyfvqEV$QrZ{~O|o(FQhZy4;c+K%);Z7-iXG=^5; z|9Ev>f~hF1!2ck#i&XX)(N*$5VJP)Wlg3h;n0vOm1vK&7)n|=GUTmV16*r7ojmKLZ z@n6ibh0paONss%(qmhstEB*RDqrnUR90IqYsJc6ag(a>^mnsH6RU|_+k8Im9hjxA^ zq27)TgH^)lNlyAec<18G^)$0D@0YG?BEO@=b?1^16pqQUqtdQ5+;&TMDFHebMm$y)+gdKB()KlVP~~y!89h$I8*!s&-~`Ah(huIqJt zKch`~ZSt0-#`|$JLmw9}K`DKT^|(fx(vv({ZdR0{_y+aftrKNB55Hk+08XT^QXg7f zg-ZFF#Y)Df@=52Ipdh8tFJ(Dgr94`yZ=tPu3WML?H|aH^m-kU5Am4)qnHt`W^$!EQCvhRsh^8gn&>iX^QchlavUAWLM#!#SwJ z8e!0vY|OcIaMV-spxwo0Oc6#m__ke+A4w%G;+n&ivP21^tyCxaG!}*KkvgVA)k|3V z6ua43wO(Ov)mGPT!vwDpzYbFx-sA_x6OBs^j%E|rjAPdr1&xn&wm1VY z{#0w7;@m*$+-^(`sWaCRjV!MK|N>9n8&oo1y+vw?|M_+vsvycS4%$J)7g_% zlG!e!K4-d=ZYo%m3|Goo+tu$iYxNuHxS69mPQQD*S~TRvuj2JHoz@au6;Rp+JaxL& z1*(I7^=|CEome~l0BtJH9_0CH-QcW#;$-Bzd!CR4XN8{R*>jsDNzLv#7G|wOaRJ&16;3e9JgI^7G0AzDl3ec5zamx?{ zfw0`GctI)8rO%09?{Sw{LDW_DlGmghI^qbLIq}>K+5-TG$I$xb8hntwlR&li7$kwi zDyp8OahFp@&0gh-##>k*vuQ;QGn%)fTu-{GtFz={PC>t+>nc^2<*0b<4B0wX?8&*- zeXZvfi^84$OLGr3wL;V&E2Qk3G>c$(OLfQ=M9Am% zGHO^xRr$bEShXuGFXN1w;#F9+8?5pz7L5k;YO5&&+21`ce7jGVn54{JMEWY4T$kH(+X@jWnofM~YInsgh!tH-y^SWYpksL4O;UGsrhI)`K>QsuRj6P_1~j`)N{g#+V8)~>x%O+Z$-VgT( zgE_`5gWWv;84nL1+Q>=r(w}|B+>7QP4K(?0=i6b%s`kP}IosqPE-EKil_9_K=uZu)@PaldKcoY7dH%|1E?HELE{{xb;k`(iou3RF9V}ZgSFS(o)uVVIfPFd7(vpgH=y zl?~h%4f3?cL#0^r;BzcbBS)vuc`{xoxvR#Hxoj6w)O+1B8Av&&4xLkG&$VJZD) zh`(&n@{Rlhea3m#yXC=BmsNi;zigC|H394*yeA>33jPHbKv@2u8T8emie%4MamIf> z6FsH}=gCU#k^cZ0BvF&y^e97iGJFN~(v)=hn`1?= z3htpHy2IYv0VIlzJ+tZNWg#e|s_knMwVE}FP=J4`#64U}2}Ktt9cqLMzv60_BZJh2 zfZkbgxTxpuQgTz(Tcy*?zA}#MvNBopn95}zi9PU>?}^FGhHZ+DsRc3Sd|*~Gl6m644=4njN}82ez~8^h~ko( zTnQ3NJwVQFpLY`kez(6npLe@#a}SiNIC$o9v8~{@HCCq`s}`)^Z2=3o;jnC8b<*xp z)!;fD0gfdb={c({aXNkKl#zSOI<)AI@AXa=Z>#cp{=RjNCWZE|piO5wSm!yyy~C3< zVi(6xb{FOCddo#G*5ZxcN4mO}&s~b31W{2P=C5%tgL%$-p`JYukISiGf=|@+sQna! zK)bl4yO0oX`~;w|jIcm`PaEP{Rt%2?SpGnQl-jwJyMKTyP+J?g! zn*#Y-)Ye^_9fbzlIWh>{xiV;kIq0+AP=gu#FJ88Fg1`~4KcDyAkb!_Lumc5O-+`fk z*z-VuSAAl4IpMqO(l~*#VSY}YP2wp+9jr5Uam2GZU;s_p~#VkpF4D z5D`N(8axb$f66NbP$&q7-j*UIDlGWMkR=l;^moGUKYgr$_Cv+Q|0zePpG_f%f~>?` z?8(Y@1GU|t(k!?R{xH>?lQbpBqBh|k?8#7sVPAA71BNVt>`(gRBIx?-oBWTe?Er9nGp_Dd94SmKP<&)ei^NDgEXdSIym`xCr3BX7 z5&#w}O}4?Z-qTQnYGW))2+|BhgUn@YOorU-;`oUSq$L!cwGc-;N-V;QLqi;dd9WAy z?*V)V%Sjz+HgDdw&JLlx>WKw`{!_<@I>1v;Tv(`7ZDw2u#9Ug^*hxZ0ElQ@4_tgF< zqY@oRdZmaZ==)#PjS^_Vdr}hES?LoD7@5$)8#V8%r1KQ3a-^n?xcxCwW`S=!c{@7u zEp)VA~vL1vU6a4MSpA(s7H(ek2yOV}Rahre3kSpg7tsb3sa z0TD7f>$Kn;5G&mdzr{ff)qyE$I*=(#miAU$a&)0_PT}>B^Q8LZ;1Xm>YrU$!br z2N-s#Y!c~It|f^!2)LH8h!Ffs%1JlSWus;-uz&VHl7P!hH*~fXsS}1t36pvbJC>M7 zU`g{F$@lO7r9vJ;Q2E1wx*Uey!*;5n4hIlRVGRTE!;mB>u0sO$t(&+QtnH3>NLRDA2L!1)DRgF#=r6K_uk~m^~vF9 z^j|A*0ycm{Jw4?a#kkLdeG`uKY>VOuA|)`VPlRrWJ^s zCa(;@{gh31WJSgceoNT077{_i0vfHXT;%~I7l zDgn<~S_pAtR|%mxI2tsZWKC~kojW^ZxX=Tg$r+pYh%boMDE_npB_QKmC}Gb@mE|b= zFCl@uFHKq&kCz2h!GY2;?u&}Of?dP~0%ZUdalqMriQKq^StVdl z0hzGHse}m(Z4T4Qy#x6_Td}YD@g4L}ncJD;B*vFoI&xtKWhUEwhtZ<*R~!41m8X>_ z_BshTa1pSpY>ZsRWeMA=z$!w;46EP^UVeq*5yPRF_P?j?$_wS_6Q~aDd-wlplb(r% z>2Krj|1d!RKS4T#{#!@~oshka$^TnY2PX^t7r}vrgYEx0se_I43+KVc%JD_&VCJA_ zXJO}H{vvfSGJZii*x2aV|AFrKcSy%S?cD#H;d|!)F7N*nViYO}F((Q`7hGXFyae}g9e!Rq)MG4W4M$6t2s2FdP2@>G-BC5YV{&yq}mVba!{!d68 zY|Q^kP|%H^unS^D{CVjMO^_k{lPQ+q8xa{IDg3*lCBA=mJTV&t)?xRW`q{L|32=e^ zVvzaD{VXw!%wfT!;cF`?#o8om^5BP^bv#C^tJsqkyY4yqj++kvV!KdOO)fuQ+i+E{ zzb0{$Lbq*ZMY0n&{X>XmyJIcb#=P=oKQozTJL%EzDHjKeB1r;yMS-UMt^s?q3`a7? z_B4-Zmz$$v%JP}_n(b@SOuSk^A_oADooGPqp&;ZJMaNQq1CTgBFipN1hBa=)rg>>Nd1ULq4sv@*FZ>d?AoDR-l6r9 zGt9nn_2P$~$7mB1#;HsDOuH|3bXY??15Q~Kt5}}p8`B7N*1o>L6eJA<|7-L2-x7-c zCnU%JrsDsfayeN3QSJT)$%`pIi=Bb|$7Ts?q<1cRF`G%NG8Vd#`EkyW}6j4Hm5K&?|rJ5nVdIT926;<@dmRo&;oo$6~c_EDj z$*Pq0npWFtGJVr)QANkn>Mw2krZu$*Z#VL95e<(%m#?pz0-ak!PNQEKIIgrzu0yUV zd>AMo5Cc5MoZ@z^iqeWrUtl0UFrWz*N9hWm#f3{C#t&#g@6E-H+1vhOiZq~93?SHs zdph*rPd|EsfDGY*9$xFb4x9ySRbqhxsDUn{oU}Z>1i_SmnxTO*xpc?OV=A^BAqA(- zfwb-yeLNH}iuoHg1HC>2`XHu|ID6j(lc3kF;55-R+uscSua07kB zH65bXuO)Y|7cM^|bB~F7BBGHeUa$j1u)PIhA1gN@KW`B zrHUiV&4i`#hZ!jU4aTQ$Sr=Q3SB%A;-fGnsd{ZX`#x-RkW=UgrW-D|}lx|ZS4pmz{^yyADDw~8=3`$Am< zP@`9Ssj_zvyAL?8AwjnU&thOeYzRLw185Y-v5H=3A|SLUnz(_#FafN8TqlGN92E!_ zJUSRn^b@5IP4*Lo6ixCICLc}l6NW5|1Qf^;Mga>YW?-6F888s9}k-fDDgT#Jery=ow$4|ZFg`Ono36xEf@kRV)MA;K;T^qkGio6iNEzG!(xZR6nNz&t=J}d4EsX?%A zg!96=AcFX9=3BwnM&)MV+;1^BMEHU5=6$xe^p+vK2b!}G+22NXpDRty7ur2d${@)7 zgo?S}HciPOh_}|S6Yl4%*e5cdG3g6;8e-&VPaoif@(V`4Ht3z+RgCyWGfin9x;E*Z z{=V1wwx$*>CDE{-OiRWWzKg>EsbZAb7`~EgTcP#r5$b-MN zh?gWn!MZyrx0ox)uwzO_s2eiA5Z=4?-#+Y99PxlJkGL;VOMlnFh~p1JDxr||UBO#& z9x%uQDM#21C0{7mUGQ7-R!kxap`eZ((p$0CA4F6_LEc7j?`SA}Bro6_h*G1dJ1m5h zLVj;MDz}h$ex?U+jzZDIe#Wc&exg9XiBHIl=)0cUW z=?L?!G!k@d^$yXg&<)Pq&wuda8lzM0yE@?gT}9|ris{#W_9G0|+!b@iG6;+vRq^~O zNM#tR@|@)Jb1UyA^BVt!uM_%sba}__Im-w66T&dArjOsz-v@asn0ZWdSKyicg{~77 zL~a<2xDxMP@yZhso!3SbH!D3hKImHKBFp%{Yn+Fy|ZRmf;@kz*( z$UK01je2X=3MQ1m+?UGnN&hb14Fw9!9ZTIIdl&77GVH54kaL9hr8Eqx+4Z=Uc!sHt zWA1O^_(Z9WXYR#|{z9R6f$)h%dx6lC4D%uS^v656yM~MgiSxVw-h<$7k=~=U4)C9$ zf$RyJPAg9g6-ou+~=O@qCrJBLY6-1!`t(o zQN!D_&uRo9`F&KYca&%;t9QO=!{Qrlf*#TRRLggW=;81jMT^9icIHn{?-Ah|+x>oZaqZ>dF{1nKM&9d4i<2QJ9??g&x*?x;o|tKCxuO~`h7 zgT!~`e44~p%Ude0w9E9ae>TpbFCq(V>^2KcMj|EVIqDUHfO<|#-ZZA8EAY}#ao@}@ zY;lkd4xG{nvo51L6@B7AFW$O@YE2CKllHV)FvukF@Q!9A2NRkGPjMDfD8i&cG*&n~ znsBL&hr&y*Fg(KHq_|{pB#3|sj?b)Nhkt1lLHBy4K+gF)>yqQ9EGg+MT0)DIUN zIQyxwZ%)WZ=Dw;Z1zPAW-#Nr$0dP;lweU=y4+Xd$OA`wMR`SieQ&QsAO>Aa;phNM@Tk>_EOsm1)Ob`bk%Cn)sI& zFmQ6V08q>Y&?gfZ{0X+tgic-c4RKg98Xwd!G&G;ClVUwAw9%u#Rs@Un9h|Ro9-wW6 zZYBq#Tmx)eiGkQ`EyRP2y@jgJw+{+8>caE&dT?kpYx!)uXWQXvTkJ%~ zt1{!9@2HA4TH!T)yZ&oY&^o5V>VOYdeeUxT6iT0&zkzJ@F+|?x51)}gU|;Z&-mw@{ zW~~P!rc)m4vFw4xh7`4;`3a#+$L1$ASBP~D%OxA^nuL%7`sfN#1&8ID6XTl`6PSa9 zZ!j*eN^OMFDiEZi$;5Es+gdt38LdjP#n#@rgv=?8Cn z0QoQq>rO&!L{h>VAtE_$@^M%PKIR3g5){tA*QA9kDEj<2=NBdoa{3Jhh)nPcOc0Jr zpbZ0+6>v^Aufm`L@+% zV1B$v=CJmj*!?EJmt@hfw22F}0GCtvW=CrGs%Brz(lL@FIVFn~Hu7}RpH_{awXYt{ z(*0a%Mu*}=@mYt1;Y2Y|)bDbG3RZ66j?4iI>NU37@<~)EL-JT*T+|q8cgz$M8uL0lH&#pg{pV1#`ZzGSW7gsA%7d7jKO}S0q3-GbefRCt; z#t*AE_&3(K!pH2#pO3z8?r&6Yl5aY11aH>f6 zz?Px7FJg?*q^lZP5#*iAawpd9L^wg=IU1ObKdLQ539V^7#=D&ocZIy0lH(8YPc`fu z?<*|Hl=_%*OY`91uf?;f7AFhWD+P?hn+-OkRrA#4r&f&_^p=1<_Q_f}o7s?gknZ}q^d|;~SX2$Uj-A~^+ zz0mE5o(Q}TU|+V$X?+i9?uMTQ_M~lpN&B%hr=G?(8nB3T_C#4hXo~uR9M2R5eP)Y zIfUcw-Z{=`CKcvv^0|w>Vd3h&!w8=e$nib3thHRgsTof_`sP9&%MHDJOnoqt zAGB+frIB9<9i6RjCoVITC<$8Qljd%aIv-p$^72gmq+v9mEIDE98Q+7eto++dZMgAo z&jg36jN%u??i#?9?(@9)EsIx+7lrE2^egZ7Pz7N(uSU3ZmQr0R`mJ;MXrD}ROxX%} z(-JyL<3A3$LL69i-JfY;e6&cq@&*=7-u~hksC~*lHFKLbk(x3T3;1iSCLv3n$%A#( zbEoY%VilHnlh(yk{+wzair$ykHf8*00FPmzEr#U5iU8V+{q4E?-(Hu;vOtr-3QC;lM_Tw~lbikGNacrxNzQ|kp~^C#I33JTz15lci0uSE9$DCU zQvpV{wL!vaNKYDrLmG9}zc7)zosYk3)&bmdgKvyD4+;p{`a0j zmCkX}@w$kgrMxrX$*y8q)R%c&>!kM6#jAb_9Btk~@14A z>36fzjMPxRg$g`3Rc)-gO~bdVsBRGK14nbHs6#P@o3NU0{uwE`PFJNA20rP^Ecu|C zy%3z%4u<&sWGE}MSLX>ldoSNBlcLA$vK=|xi6FBQaX>TrUJro1U+az$=fm6@Gff6!X#8b||3vspB^VJ4kqQheNVh4x zhKmx$_3Q9G70QK!pKi9r~L`v@2?8&|3zw?LuMD>5E#c}T!@r<*-2oXzMw)~c8 z``@zrMY;m_*NFI>oI6n}A7L*|#1ZS3blZwD!x+~#WNKDeZVPtTy|y3Mky|SdQ!y^J z1aPQWJAkVUndFV>VAcy?G|FeA6>{Ny5eqO@U99~IbzdN0109?vuy{dys`@k^Edp^c&jz0zeC0|`|0$6 z8QV)kkKYX3tzA50u{GO79WW>fKYlyUw8WG$!ouXi=gy#~Cv3*J8i2Vy7){05o$9aS#=|eqylA zZL|;xiE_oW{E$1n%*U!!<6y-9%Ueox^kIKRNbK|B&z2L5{PIAxh3D6`kgjH~3J(O{ z13#D#=08{@BazbdDN!UsJgD91K(8bV<=6nP1&)lgqC?qMR*dQc@Zq+KSkqWTda767 ztL;#=ud5cF<2!?@XLMER#C%$M+641h z7*1jktu)LQHhq|biU}1S*&2bTP@UCL zvQ1~2W;re`s1*Yg!a=7)CAain6ULuxzR_$~vFMwf(w!(=x zUI$GHeTjkdVALmbG^A#-Dq;H!HNw9PXVY{B^J%sn$BD=;c2QZ|(0D>TS~}Jmms+9P z*sJhlFr@<`B6I@t-Gg}z#y8wtw&7S^^+xugqtIfr(4b%t_@u)6Mt)yhu$i90vEF<3zXz>0 zU^d611)3`cE0V~Sj!sla$HBW!hBY$~?-5o~hUCTYz|w`0!1$ANL(HeGahUJ5af?mi z?^`eGF$Snnf+%do1sOOqT-{8pX0{B1JEm(DRx zynk1`Yp`J+1*)ky1HJaIxbb+M!q&2s5`I2AX`~xf- z9;{yo^FIskTLuLXcufXJ(*J6sC$hX#h9v5$T$?qDc|B|qQkKxkB9YFaN-UxkE6@aV zZ{TTeSgB%D1d}!5=Uvl%jxIo$X)hND zsVbQ#EtDdZ{1@tHV8MCDbA!kb;O2-(7(~uut5K!5JyB}G(wj-r>2cM3AiiDR&CYZ= z4U6=!-U8bKl-jnkv|-=Czfb^paqQ8WpuHN!;SnqiZSspErN5+i(LdR>y9qQD@ER`v zotRvBV5Ng-@Che9p%4s(bYy3RV-Jf|7SV&sYK5c1bc-6%3mRa@^Av^rjxK(tJYAN` zcmLvBQIEV^MZ_{|3zL-2z9XTEBt>?006~b+nX{(9ljOv$+568f&a{(ivuNiSXfq`K z*Op2)kl@yd^@oE~8qfbGE~z!-M3aut(k6G;Kt5Y zxUkfO-C*cYmvfQz=eQHAtW46>Mt8ddWy;5H$~)G6`5%^KH0h9|@)9!D7injl4LCr{BC+Qprc5 zl^*d|e6nh1Q*-g@xc2LZ?@sCJ7^BP^ni`;)1j3-VL41URBSkqqpO?a)BB~ z2LY8IS-(~jQdSLUG-~M*6II4hqxA`7c$1?+QE4X}!Fd6%LizS!*K7W{ z{tTrd>E^yPY7^0u<^<7{P8;W~t+q^s&BGo+czp3XXc%Opx1=zn{yeCMgCydC;dl@v zOezfF3Fy|*URfy{Ne38c2{hUaL;P&4RY6De@M#Qur0aaS*oPU*Zba~d*y9RO+ z>MV^Ohj*dF%TKfp4J4Bp$PEUKBx#Tn&gp#R*^FwF-$Qs|g&+_{gUs2LO4TzId`ETZ zI5W{g(iN;0!jU0~SS=rADtiDB^v3AnidYxy+G7-mC4ZSMAd^RB@G?#Cqn>g(Rt{LDGT znb^b$${mff_06=r`SspY%~>P9LTMdO8R7s$p50X@dz?h&t&&nZXv_)NB zI{Gr2zF7+f_8CsGOal|}0xkw$cIW0+&`qve^{P2@$e2W!SmAVZP%=DW9?~Q)cCGFa zR10Q?=8-@~HiXSdnADRRU(*q()sM+5bf3yegfM zS!oIlr6strMbJyKmdz+^QbqJS;ij4zJxx|duu_MFV>Fl@YIFjsoMd!fD>qJRS#tYB zPAc1f2W4s4Nyo9#G`9mq+_y4PIO^`rRiul$Nvi8Le^MNaFH;;$OIvB>bP36tE#WLI z9Z@iDHrZ(#2}dXc?%tG)N@!e)XEx%v1n;Mye+V%cE%S#qGo_ zMNJxtbb~3LLYGh?+vQ&#i7(w*rCUNPp7=6yq+2ab8r%jQzl0tKVmD`!vK9=wm zfAQ1oUeuEIWHa&!K8MEvu4NVsd>GGiUOL%dqK>ip4E zkT8xMO#sU6XbS);{P#=8`0X@w-u3liH=I!an`hv z3FY&+vf6fC$WttG_nH^T$FsQNbRI`BtzFc=wPHEd|v?!~^uchGpCGfQW;BV11 zMJnm(9?eKw*G)|Ot*g)Wl=F>Y*gcnbTMzgp5yh(*fbJ2wSPu}?b~)_Z2_j4`5dMKv zJr)@`_AjKc$_=tZ(}w*A8=3g)=|ZD^OpAtlm(O|gPR`=es^Mpy>=ye{etuyicwh`v`$@X{q8#WQEg`o^mTefHCt#oK zz6aw&T}eZ0mzCzz1F^z5Ng~*loKnK-?SKwI2V3y*jQR0dLA{!5d(t^gXGwcOCm>qm zhE7eDtyI$8wvx{+h==?9N!NU%FgE0{m~r+}C1Q7d zt@n!eZ~ceDk5q{K1v6=D4hUpQ1$KPyy&n6cAO0Wy57Rb8RH#2)eOu?#2FTZ&&fHZnk>hPj-^wE%) zqgf8p!J=}^V1L3G4cx@idCFlHXBSm9)r8Xd)GW!WbEjg}OnDh*Mkgzt*_lY4^U>K^ z=?A!CiJk)kHJut(d2N-M0BgY9L}8j-`y_wyIMDTsOVa> z=8S8V8qWk-1FJAU0n)>~`l)^Tw)FE0EPHb)&t?aZZlJD#t?Lm?e&ukb~`o zhSh&6k`%4ZyAeeT)s~+63)<-?Q}UIODOB35S~YDhlqC{rn{$JP1=?hn_B=6?TMgbf;J2nHDb zAgUgVSK*44`(@$j;**Tnvc=hOd@vl)|1fea7!|NSAS&kpXbB=t;a2Bh}c52%A2R`fpiN#$|%q@AwWbll? zBgTQ19!OzeP>+WbGhrf35;r6+L&2bug31a7-b)tZC!!Yswg>q5xp22B>ebJ2izjI> zA=dw`q*_GiWpRW>*s>j;L7YT<1_Djz67~o{wBZc84G@|&M#J^$fovhU&oALz0T(^0iB(okzQCgz!|9R~M z3$UBEK2mu{(#l^agqgdAazh*07NRC6=cHz5mnxqgQ<1}W8C z@6@Kta}6m&?d}EyIfaPwLK?EApJ46^!V~4jL>A-ez2lp*I$0$#j30uzvSQg0P|aEb z2!|RfRWE~XD3aQPyCR!r`}Ih6SYw;rxOl$=6WUy!F0(i|LAj_;p(n%B)vFpeIn1)M z4F4qbgRSf&BK##bi;-mrgYcrjVIWDj(IkrOrREd7izjm>sp4OylN;5arAOy5u*yZf!jFBlyaa7OSF@ zP{I(`)Wp_Akvwx4mk59Ft+lgJ$2cYp=0RnuS~V-`P*A)eu6lBM2xH^Mz*_(j!MKQB zj0_b7qa$_uS+^3_Y1zs`?R#P7Hu2f4&UTI{zLLPikcWW6008%#;u~ed>WP!w^rVi~ z5VqHea}RfX^G%Sw!ka)yxhhvbJ|4Lq8QuKvnWn+TsW$314%%l~8%NP<+4ve{#CcVM zSSpAK!-uhtDG*SosFsDErK*cci6WYD!?`^5FNSgqxNK%VA*7o}XZOigh18i__zN*H z+$7y3YV$WFm%RS%(q=Un!+tRZ1!-g7CrQKJ_2t%6w(Vb1>(hYTcXT*t0tFkC^F*}} z`mp}qspGNh7t30hcuKT|B|rB$3MpjhD;@-8U6uoX-jn~&!J z)aqUE3NwXS%94qLhj8hRPhJcIS~^1MSeA}2-!qCpRu%zIdUS(Nfmn@M0i@!UBkgwN zelpP0>9QXonWu|OTP2Nf4E6lMBsg?rFqCG#&_v=z-7n_Z%C<7&i=|fib&5lAR3)i;CaOKH4RbV@v*m$f$G>XEJRVUPW9!oTn?2nawoc~sM4d`>9N!WX*? zM20xds|NO%S=Afvt>1`_ry@E14pE2Yc;?IOxLgtrMxxqv;!R8AjoDv3$15J0njo+3 z%HEUT@a+J{;&oH}V5>V?LG-P}jTZC3Hd9A4#eXS(y&O)sI2%goLTjB#n2Mf=y+u$x7ao2lRCqpkx`77+}SHu=`CcFq6Wa++5D$zANWYBgdAUcgM@Z|lTnRSAMT6K- zs}@jqceHlGZP3Mq%RdXuW2|!=7|SubP&ZfO1bs}uuY&~V@XBjA-I*12fnGM&QqCh& z>}IQSS2k`9_irfrBXa_4Wbq-y;10@}f8eO*VU3CYa@%C_H&F3*QI|;*u|r!R@cX^NY|jMuV<1C;p;wSB~RAco(Bl9H!`Yg(j6ZwSKyz39rcRRIq0Z-Xie# zo9W6;U1J?s$@!LxJy~%cxYOyI%*qvy4Nys!P(}0w;jMg_@$Bp zy08^XC*xK*ASPlqXocW+t|I6Vdf6qeh_G840CiYBsy*2$^qXauyay-KnYrZ_9}0_V zX}xv|Naf~sy(E&`RP5tSXB+~)QX0mV2vX7*F*8*$A+BGNluRIBkd4WuSwv_Xl?5mJ zMH|}WZ5Bt~#;aaSX}Y>OdGLJxtn1`gR#r8snC26H?E-II%d4wV7FyNWd0Ab_SO9=H z&xB_Ji2s@n@GVD#nlkKDw}O^sBB%0@1Y;|N z9OqbZ%-P^{*D$2Ek78k#)hF0H9#OJ07Vk#)?kUb93g)mmZ#t#TSgd*4YVzy9ocK$m z|E*}?U^C{Xd#Y!sq{k)9E8AGz!-vmAg-UjH5AFQJ%u$voO>SC;6Q=Uj@nC>5b4)E+;hvdYmtX_Y7AbN{}?( zDt}c!8ZtQ^bBi%2uE=G3Q^-j~0svhlzq6(1X)ZeG6jM`DV3b~87^#qNs(0)|r&)VY0 z!{83)E&lyesmOEWM;3jngiT+!YcDlI8#{td8xQ+O9ISfNvASZ(rgo3@O*cd(dzw*Q ze!!P67Tbt&JUdgHXr_KEhxdwu1>i+HfmuaI47fwutzo?7Is2Sdae*; zD$kYNA^x`9xa!y+2Z zkQnt_9F6# zl({sk0Dvr3yG1&cyhs~1V%bz~ah0;Sw1zifdr>C~h`}hYx3t1i%$3_M@e@2-S z)hCjS{bpUlV7hGCqJjY`fYd zVk;>kHK&bbV^~-4p0cd*z>9P;XmD(=U1_a5UnCr#&%gmF`f~_rg*dm~lDzsvZ=#d> zm`WskG8U8R!RSuZ@yKncs2pyb07?*%z|`8_lj?=SR)(~hG>I!2$)KNFr0w*Hp4GHg z{P+B7tvab{B5C)_jFR~xX`&qh@w*QT7Pn{IYG-trnQM147!2>_kWGs~QBKlI!D9Pz zmI{0;MPKPK zC5O`UJap@k-I1M&O0~o^PDH20CT5ofx?Yfyb0;58muL~vN=)o|4-6KQi(*|>fa%=Q z=6ahTt_jcPZ{oyHSV@4EphRS3I~FK~rq%3p_tY--`A@U-wPE@n^%W~s$pxOLd*7M| zv9^$yw$DTd|7CmCpUt?w96@gztLY7dY-TS|&E11iWIz&7Cd1k^X`#LqL5&Riw{$FJ}H(L92ToiV+*-?o@ddSVjGx~X5D%0R_H*hv-t=HUh-k}~Ob z9f~?BB}DD=QQp{59E#{22|FhrU^1BM*D-@QB}WaB1u_Y3OV&!=Ck-24&A(q3B1#qt zYAz+u&-J08%7tB;3ghh+HFIOnChi1HzRZVvHKg#NsGm&y<|4Yt7d3qJQuvkOd4pSe zEfAzErD-woYrD*!MY4`V(`za!8$~JBllVWr^GNe^p^nmH5y*BBGd7v-i*klwuyg0r zdHitWgB|m#oZx1c-2mNjZ&OWmWJ)w&g|^!>J{$~hW4hP@Txy7s&!9Q|o)%Aam>6D3 zSYjcZwHxm@5JN&&56J@x3mw;=eb>~L_fqdOi*_9E5asrfI$z(xRPgE1`w+|p*`u(MjIgYtf0aspj z!j?xvNnZ3*+Xdu|kRGyyJgX`-6Hhs_W+dPx*-j7Y$>>AmqzZ|yfI&`ODl@MGEf(je zmxT;;Knp;_W6br5;I-R@;t3cSJSSb-mPrnLKBBjWl#B0Qm7C>b+HUWF+pTTi)4t6R zWcu2wjEBYPrc!3_>>G&j3q?9bgstl;mxCed?3q6eyxw;cy0@v*3jkN@a8&&cA^z=@ zhl4fm?1Ssdf+?jx;n&%)Dm%sTZf(0EYYT4Ec8!&9xQ9NI7{ag&{)g9LyiVqjV2YmJ znE!ZpC9?lyPl$4Ca(ewyPzcmvv?Oun6C)rH<#T~EIYdy%lEs!9N@O=iXN5W(TpqDt z(#4T!7@zJJ1-M!nZU+t8ILQHg5(f9Z>apZaiPb(=xl2wZ6B~cEXda>-YcprAq>L5J z6cTT;%pGmD2qg!gM+p(W#G;=G;)oWzjW<0B^cbxG|7&wE4B@*+JQirD^H^d5p12?5 zu5UQCF3QcjZ}V$y0!`Fpe1I*$^wrKiz!2tIMgkpjyv>O6l=tY5D*Zg>`CvU@!V!Xm zD@)7~LWl(Ivi%5w+VOuvq8TU(Kx@y#oaGdcO$Xtp)&d8C<^9$>IQ@08t*|P%P zVf*yTCWlNjp@6>~&6TW|zr zUAiE))k-R3V`I!z{)#bb@C%itTABx>a6SVSyJdTYAKr zFR_TYc!aQU(KDsmCK&A??H*YX+A+z}(C?EXNTmqyrUzUBz;QbuNQQcDD3E7=i0MjYU10G9PmNmcg$g8JC;2rv}U|OnX%jU8? zHL6G_BC$i6s*a4kCI#JcoAJGMPE8`iQPEtdi&&0+>-^EhojUczPgvNk_CV21aIj8BRhLYk!1H)!mS8 zBGqUkKWNwwz6%162$=uqt~d9?T>89Z^!Ib#zHGo8Z3*~3EG&tzZ@A9O$_^e$gBL{& zTZFsB!9ke7m0O9K&rYtEE<0>!p=0!*F<&SunkRkFAY!nLoEvWjz zjk2b`OFfLKq)r>nAhZ5Md3=5-%+yxZvNBg`C8OZ6j0~jzP((&KQxDn z`2PjuXC`oaXAgK?`(b*ZbX@>$7RTZKSdp<0B^9Q%6&rAp)0MF)BrMc+cY2xrQ5AQN z7X`^#9m|CtxunNuoB7Iou^CK|pv z9j5=oqxF*)|u&>I&aPKTM)H+=Bek0 zsjXeU)q|F6Ha&NfwYJfKD&^v7YjKgQ%ekD9HfuOVX9TwgXY+?i$P&C`k*>yMv7m?t z9(qEPGWlgKG)IUPV;>@@pc_wPaKDi;$OfK4-ko`dHw?IN((6#LJwoY{*L3;Z==5Rv z_beg5^wVTuXKk@H{Fsl~e% z=0dFuaw=PiJ*TyfZ^_ntY%d*#hY|c1?t+bj>OK?v>oq~M=wsG=OlQah4YAxT{=F>3 zB$j1?mLErC7nY{2Za+Ny+yQ^beil&@)Z8mO>BPzggnmAPkvQ@wRN~%{D?_YL?W+}2CF+Dhrhcq*rCe-eQRtEq zTxP7lF^>K63V8CQ)zh%C5%gF^ePBw4SraFMEDxfrXv4WB7u7Jrs3ovX0@Bp|ocj&Q zf2-`pme|JPv+@#8Jp^3t4|q9^Fe{EkM%VPbuRO|1^i@vVDnyz_Q|TG`0*7f6U&=Y)EnC%~9=_07taF#qEgY+&2eEaF%!8C5k2_T>ru zZ)#20lNCSBgG3Vz6Mga_qGlbyE=r9%j<`0bioUZ}F%>1IIUwIgH({%Zv{B)Y4O6BJ zRxzp4wp)fap%D~{iyaaigoS;J98w_KEUE&hte%#d`6DGATN+7(qm=eGki`TpV6)wZ z!HK9K{H`%X1ifUexYwBqcDzju5TU2(g==xo$5yPS`m!AQ54saNEt>Uw;K%>j{h_QR+1RF-tD~7f zFSF)*b@N(A>Pe`im9gY0m&rx8ijnKR9Y7ED`de0*2+eM_TT$-j;m8rW7SlAD?w6NN zrCv@B&LA`wzW_2B+1xzGSffr#sm6#*v8*CoF%5g0lPii0fF(RKuSoL_V-WM$Z@&(T zhv{Rb_$^j}4bC%UOzu?XkIT^Xh=Oiv0U({`D=h@mzs|sLb@SNg`-E4vM}lKRedD+8 z=VeDK$j>BJFydX(+-Y%f^_ww}H3H*U+z^T0GR0+MQ$;uhn)}|0)8W0jtuocIS(DQm zC@b^>|IhTx>YW|-lR-DP4N&d0*Z3Gk31<3cGN1r?q!fGovhoqZBDl|I#VRHp)xX`` zUAJqDArd39VthQ}`_w{(@UnSzIa|wreka;-HhFqWQ-i?L(DXqd4LMVG7y>E^%3n<9 zMeDZz@b@qn@u}H|xi|1(9ptBYT1BS&kZDzV3!}n>ro^uCh(ME~anYgEP3ciGjT6W9 zDTr+C79}&|F(?`Y6biqZ(T|7NwYjfW*>h577yb$SHE^D{Xh~L*m7}qqy+wl@fWZqY z|8EJXE-9*P^`@FgL00(o81f5sN<%fMbC!m66{$U)@c#v z+B}x(5s~c#XywLn>!NhE?(_UHAlXILyd;#>t!p@)UpG;%S)l9sDbi0QtYNJJK?oA4 zjLbi&vM2~#)lS#@qt&WPt5%_YN|tMD-?}y;^>ccP%G&0gX3Lw5*l!e=fuY$boA|AT z((sT`Yi*XsCNE>D_^*QpYOwXmJXuFU3NuhY0?95>zFvIT)HvkEkN0L|+y7(LU7jN7 zx;1eTtL1Y{{l6>kyIg)0{vJ@7g*L1&mm;0C6`j1zXas>}wjqz0f_C)EAEftm>bJ+p zbP-;5^RrwKwQPtyWRGBVM3&P?hmCnIU!!7~<@#o&VuJ&1osQ0Dv(w|~v^8+^vQ3fE z>+nAP{&8w(7`XzM(v_s~zh!y>{qMwM>s{mB!J5O-9<=7(dmuR?+rjRC59z&rJ{Fwb zkiIYk#zd9DnC3F80F?f)cDl&+$oV-kb|beGroj9O)ll@aWffz_ai~h_=|1^UYM9Vq zf44?>VGeXS^t&Tt1U?sIQh!FhFmxn${N%@$1Uw%GF15d=a;2U5@_T?ust~`6wK&!s zj z=Q}G-lP-o}hApEWakHMlPN(Dd=8gYmhdx?9@3bcNn6l)a(cJFl0??@F4S5@!K!4-= zlI)r-Tz^qgX>01}JT+UNqQpFYUX$+)r4q1bP9}u>4{>i9A4kt5`Wlj$nVA{KIA%MJ znK5?E%*@Qp%n&m(W6aEqF+p51--?D?I0zuhnD9;u|RDwU+3hJP_PPYsbK7Bv=gE+g9H5P6+F>#Ber`H;h7oZTB38Hf1^x)D?FI+~=!>O3L4 z&}>;%lMFZi6MP^7Y4T4;xp2m+_YJ&MRGE9}KwXu>_l`HywTX)j&8?SY%N1pu%2Exb zwyO)N_{I2|^1s`E8@4urPX@37*X%h<=(;LdkstR$ci}MKMDs(6HB^`|-4S!52 zCWR^N5K%+LNFc96#fZ}%%w1RNa7PUosgWdL80g^KlEX6u*PP;{x%d5Vs)FCVBHYIf zXJr+E)l+S`L+;)d?COwCQg`q4IJ<4ikv`?HHKGqVH&!?dt$-rZ1P1n7f$_P}tl?Q? z+6O)To8ExG173eudQ+LH_-Tv`zM7S6m`JX8ULIAv69XSgX zvZu0Ig?zEDj>43!tgI*-`@RGVSxn>h(om>LfRJZ@%M0zQThniPQ}yf_C;Bgx+0a7L zH-FhV#Hg|z!Fz1F`g?sccv)(bUTnEOkqFInx=tEzAzdmOde&3CiRiG2fgu4N~f1nO)x&VU_^;6WlLii_h?_73DqU{2f0DfI6;FjQHuD*ysvQi_Qu~Tst-|7!B4N~-uj8eyH(zjCrR0YGi z`#Ov?H5E6bdKrFtvF_Z2FIZWIUmvjW8K&cBK3T1Q4E>e{l$2$&JgP9xN%*m;XGLkaGBIa%q#GB~(e4 zjU_%@x(!=+R22K7j|I^)<~r8Gm%l;=zhOHXV?O^C7fOg9);LzM(2`OEL^i2H*Le!U zH-yL|Yv$BZ(+Y}u{yG`jCiuP_8bwfFN*ql>d|6OH{Nwld`1mrm0yWu1e2`^yaHZlF z=G?supi%BdnNv}3{;FB^y4FPc*+p%ZzQ61y=cSwBee=b_BdusZE>*`|{ed`W4#-J0 z_p6F!lJ){Me|vke*+i8G#~nvj1zvdG5#lo|^wKSg${qV$}i`rK+??`+iH za;wbz_;BIGQkB3@JQ@B$ITGJ8dIGzN=%y+&Oy}lG4w4P?^(sk5hI)r)CdVfyd;2M9 z$xADV$qTRyt91Y#J~(JR-MPlbXW!n(lQ0mQ2BcVdiyf0KV8W@(OVOX+qKvMdcSp&8 z0Q=TQ6*RdowX~O^Fq{*7uTj^QqsYrl$J(hYV4#aG*OhOI@M%IoXL>VU+ zh+YO@2eEv<8T~5{#NJ}$;^g?qQgSr1QYB_*Wn^Jt`6okI&sN;X%*51@n3I{A5x~XH z3V>yjaMZIjGZ3;iu{0uP{uj0E>sK3BVhsiWfD^z71fj4%XfzNdjfI^U)HnwtD;p;# zF^C_;&dAQf$;$S>(a}C=L;npw#PNT!`2Rph`|!+vqoe&#`~Uw0qH(Z+>}BQz0<=Ip zGZqlz3jko_WaMJw0J}_QDb`C~1 zHjv9f`^>~#EL@BnAHMzg0R*x$vao}0!GNlBuz*l@Ko%e|kQvCx&IMxHfdl{m5R2}^ z*=(R@0F2C>|01pdIY8a=L8t=>|Erfdh(X=N&dACMVCDjeGBdIR*}2$=x!AcF**IA^ zKKgICjLlyud2PYTDKT@0@ zuKdq9{;0^SpaOn zkMILk{$H;Crxf@h4`c>;4G6LiRLsoD0RsDhl=>(JMYRTi6{I&SJ7^sJV-Ki0h$qPL zug3n%i2#t-7=a(d0MzyDjLaY7=c5HS(Bc0}p?|dik^uGShm$|lVFL}e53t~eGzg8S z0bt`|W8`1~dH$cA4-Nja#g7Us08npy#LYiHK>WCWI{8EPA8)aO`jr_p#yPb9#f)R- z=l_^$J~(jz)_-G>{on9jtXv%b4)@ZU8~Gr{ec5Wy=^Z*i)-&xTB`MJL@BbMgc?0%I zj#?2gY=`Lf9F9}h67ucoSAf{tPCA?OK2&lvh_M83pb`le=|fu*L~wEC7|N_csbMDEgYoj z*yk~ps;z$B$3^Lj39$9PI;TRxwN33MD0KlGn=e~tsq2sO^ z=*L(Lau>Sqg}xdMDLv0&Cx`RWvu20$%GRmJ$*m@El#mmP6fl^@tXj$23Fft_nh;Ak>&>F+UU+_BmSHpCmADoG$Yszb!2j)L>w$2;#vV1N$^QNZmhXJ1 z@IM!gk0J2C7=Zt^Wc=Uga{qJU{QnG;`-r&z9Vqt^QU7g5|2KvH11QG|S`R)J4>Lj64u<-?Jj zFgPmIv^=ZZkF#-}WG@)>1ITk8tV&BwhIh?quz9Gh?-7jJ#R9cATa~_MOu5>wZ-3xa zqrHHvu&z@OmbGxW8Q;m^NPL&wn6N5ZPG9nh&vl@&wSFyEr_gJ=9p`juW`YB$ATe*^ ziv|aDG@CA^d>g>9>kTE8@{5;Qu!(QL;kE1RHwwqztoS~O(}C6L50r^S@m%XX5eV{t z_kZWmZu^n7{{%q{4)zojMVB$?<1v{7{)ph~-R`b(!_9&30$z~0RIR<%@YHihmIKyG z1?E8lO`fV3ga>P2>sLL|>c~1;3r8t$%4|!P>v|R>FGwQvi6gMtEnE<6E^zZWwP1UV zs=HGYjRLZ_HLw4h4bRzBKcY&f=56Y!ebMq&xP z5lU)ix_jCIuq!IXW0g!fKI5QO<+N*JhxIqD$t(_u5O4w{>gxMR(t#qFf()*z`KhQyNL_;2NX=tWp5TeR z+G~b3stuj2JPSOk-{z}4*pbnCwL0FAc8q1X-XoAkkw&52%*1CQv?ba2yWe!>-7Xpuf}wBs zH76+pAZI-&)QYoj&uYGBY)Ca$^t#n*^?vXEbezi{-L6!l81Vd-(?rF&E8Uvrpsdpc zdP&nwXc`Yo25$teg)yvN$a-)O9nlLPwER!?*t1q8_*w3MF3BvnMJ(1_ftbeE%m{?3 zXkmj<0@l*QNTo)Kqb5IZgNV~eCqnHDfCz0bI{nB2koxXJn`i~1PpwXlZ<1i`OhCwn(BLSk`8 zh3MP|`Y`Fa?YFJubv z1aV!OG}i;b2m0>@FpingqMFpJYJvL_>#Vh~QvK$j$1iKtD%A9~JsFb2TPq$$t}>Yx zg@?Y;4}7gaE)3Jc0Sx_4Bh?HY(EsaLak7@c%KW`z zQt@g%NZ)HH;xOZrD4HtlajP0{yIN$UKo#R?#%C+~fj?bZyj)1y-H1_N-#83DJ0VFKsd;8TwMXhVQ7GYsmJ*&?H14(05Lu^ zWru_q&qJS~w`JL&n{jJVG0>^lDZTvpbnQY6xtC%Y0cWlz!*Pas@+sSgpOoLekWIoZ z;5B$)xjq(IkS}>l+mb4OL>X7{px(@qlSRQ-YR2DVI+|hGADBI;(O-pc)NLdd7v!1g z_xGs(w|L6@nuCnZXDt6qJ?v52FRI&euHecX|s*6qv5BF&-Ni$o(n{O5d9b8ik6TY$p%unk%Vsy&=fMdM|z~%fqT#EPF^WqL;%7|8L3Xg zMfv5X7M8Pp{}Apvti}?NDU}>cH}b`vr#0l1vO1QmA%3!O?D%jN)hz0^fmb1$dMYks z|0EGFDPw`Gv$1pPu50xfgHE4QAG4~Ty@fzv$m^(|h9kslkbP6X%xc~+Y_IY#FBo~`6xt}InOm3 zr|R%uWn^#jLAlSg*WOoc-fha>F|x!4S$;zP#%25yB}y$=$_|TgFu^rzIV{F7VcQUb zD`K1!ZkVMmSW~i!VkyC6q)-3Uhg>dhV~=Rh0rpQWIN$)qku6KyWE$s|clF!Sw9GBy zs>J<_4Ml=sf~I0Hn`S!gf|SfG_c6;cBMoII{aMOpLbMcB0UByTrM>)Q5}CbnHZ4;u zQ~X7OK)itB0UZ+!QHiQkp?f~=_je;)gLK_=vvi{}&JE*L{Z$L=UzofB6U*F!-wETZ z;>rppT9Pow)NgHWZK!`i&?gto!20q_a?F;CQxQ~XmPHrujyU2ck%7F%+nGaHyjy5i zkUrkS!cALxJZEHWl{hw)tKl8aG1D!PVOMHS^?hzig=aOaMrhb!R-B8rGqAZJpr2eI zwAqO6D&G1jlr3R-c<%aBAtuT3_lNw3V9lV32G|;Jldhm|BaYWV4qZkXQXMIH)U0UP zM9GU?Zu(-IT)Y%rGH)TwF{~|B^aQ#q6mPMMgkT!1vc3iQYf>%R=2^B`7+QfrCjlI3 zateZ_1ova@zYb57jJ<>_;gGXLd&NhDPhw{2p2}%5$+{F(y-{j?RXs+Ml`puhV5p@+ z*`ClYJCdd1h}*IiLqEpFNSc0yoQ38qrUy4(l7!X|v#=oDZ)vYbw9g>or0CPk+Ho-U z|DG@vQeT{t7xpM6c;w{#Er2KV}DVJy>i6q4T>gyZt34 zVr+dPjbjW;5XQ9X6J?h01#U|>*a#WFr@!2#7#Lb2foamaA6JQPb4@oHq;On>M-8&c z4zubGtEcZ=AtU;|Y%%D9R0D1b4HO`Puh+jnoWk<6@fHoQrQ)<{c%DXd+)~Zw@3~=< z#wP_un}scC&3awH3(dd`+XN6;5kw$u-f~_K(%Av$jU2iv*zzKLaI5JtW=G<+5ce&h z>_w6z3DXU(ng8-Bx;%V0$Fl9rP9Rys{ODGh{ft ze>pGvtankM$Zm8AJ6;8_*OOCH^wIZN9xrvRZEv+E2!SUioY4tb9t)V}m?#fp&UmMf zJ?`FFh1veO)5?qR>oJ#dr0pY(h=d(5-!{duwj%DdldPwLkQEB^#p~T6LO$jA#Taam zq*s44p=!l}W#Z2!r+=d4r{qtD!dyd%GYfVmW^o`bE$OEfG}ptqw%5=K{?K_0d7P%? zPlsX)D+$%14=bR?nxe+(ovI)*2vI*4_eD3B^JeJGBJ48ZtoXGia@SnHO*UazO>Yr@ z{b%m87vy7*l0OxwvMj_4a&{Z1H0D{(2w=s?vhKUdj27(!GLPAx8L1 zbioOF7&ufmhRD7sZrgq@J7D-LVZKVXsIgQ<%*?jymNQ*Tv@DFkx=s=>kv>w$#{n21 zy6u;`-t}W8W_qEv(qA-ORR0_V*0)E1ez%27zs(!!%RU%k z%a_LxFzlg?%-6>_rMhfr;OAn9pkJ{>$#$Ar4LQ5WX>6uXxq4ufNtg(GDQv_HO#e7Q zasd6ym*@29?Q^lGW6GO`F6VqqymsPPuN6L;H6;$?uer2=>GmH4m-pAStWjTG&x?rBLW zSfqoE+ERz}#2*!`D$QEYm01d`%-;<)U3aITH!V!0tJ!ENGgbM$HCL8rXD9|l@K=Qh9=*^i{gHr}&@ z)NUm7xo2jwmUC1Ld2?`S77w+3=9T%C@#!=bzX~o0_S&g)wArwZkPN|H#d35&>PI;) zCDvX7M~0K4t71YUF_D$(TEQi`h7iC0=H(xboh-pmf}JY6tJLGs{x4-}&aU<<^mM#w zF~pSnD(sBW6PYR+>?=gD3mAJt!v!MSL4ZK2K}`iee~G+|RBjq$)QuylM@!rK&E($; z?oyh4y}>13cCL22FRQ8ZYD3SqVg{R+d#U%=eO(DF{x7K}if6%Zjozh=qs_{PD~pQ= z?x%k0jjtBMyjA5l7<*WIL#CUF!HYD2{Hx?Sxa;!6qZ65LvEzfg)6j39n z>~hbj_E5_hb;` z3HDl;q^pN>2!Wn{7-`^#@dD*FH|Eot9=hm>euLkVW1%_A!Bu*)vdr&Ygl%~t@8Zi< zlm79zE+0k))=Kk{7VME1o3aelzY7k%3-yzw3*|rX;w?1zTm%^v1e&TDVFqR?7bLyY z150#J8v#=Vk6y#PN)|CAZU8PhjBlMlYnG`pnM7nSNoflpAIg%t@XzVYs0hUI7@}ArW?qkSWj;_nuGu=@=ckXEmexWnX(n*ZyIz1}Ke;V+u_iE*ZW!q%eQ|NXD)#zdaS+}I4@K~} zAmc=zHP2~#xz`kkUS(BAH*A9k0J1zx-f*K?G@C-B~2AI>I5|*r(1MJ%M1c_jIEGVmjR1=l#6@`O9 zgARb7s=N>0w#ZrGV9VJjY`JNGpE9zK23!`K2KtbM)S7Eww@d>YPuPn8RbWcvZPEY@ z@JDy>pFgN*8^DV__=7B^H2^q9KhsWITU!{ftptymwUrMcs(;wraZ4<$7Bv1Y+G_UYrLTS) zFBkXDog^xYXr!0keu8w`_Ez`Etx}m*5%V33?b@so|J%gjnFjVlX=4C0tFAc}KP=9{ zjs7icyE#e-IMa{#Y1?H3fb^m6s0f36s);IuRhLo7tUvex1g5oua>4g^sw9q3V-TihUXj)*pMR#c-P8PZZ@pRMmou*@fqq z<>gKC!PA%AoL3vm8^oT7D0MTThaF1nU^QTfxLpkj!`KUNOVW^yz=gXWpr!H%*TN>4 zHdKp=Yi<0AJ+V6%);K06Bh8!n@ zlgw3lc+a&Lz})(e*O$Q}W~?fJ>_ynZp+RCd5y8Ry;FgUQLi3=wmh@ysUe525p+s@% zsLUQT3RDdO1WpdSv2#!BWp)Z_#7_2F?hep*Qh~}#%jo%T`V9M_gvDyZ`689;))h9P zgNeK@<;5yY7L^;(?or)uI?8j%2qBI#Ie8J4*0&+To+y)Bt!-DIA7Q>p5sF39xb5hW zH?gd$+Klq3lfG4kQ^ro@spx&{H!hNw-pPr_(m;z+xLC$Ez8OhaIfU-aJ;>_8k{jX4 z7mC5Dw-EMzYaq;bNH8b60%6M(e9Ze$V-%`m-@k$f!d|ak4-cljQf$AZ7Q5fIzG0Wr znPzwh7s`wt5~W87K}#x_0Y_01gPY3({O!z4#rm;4_i44NxvKU6$IqU_qP=oBo*vRNDRqJghYN;M1*FefjTL~ZxH8lRUGY+rGcsz z=UP7|-w*wvHQGZ<19dOO1?;yd5K_$5LNZShE}*YSsT16e?|9I>_LtBWhnCbvm((7Q z?NB3jv&+~Uc#X#@`?X6^-ZiAf6+jdc4PqYPySRnlFhuKt@S9OY#^tpYVOYSE)R|q?|=*w4Y9ql3G6zIpfk2N2QPWecDCvnCF(j z^wtXbiNgzz@d*>!E23+l?dasJ&`4zM6EcG|L{A6#)?X@cIb(&)uEn>Bnk^0*($7GV zvsilo_<*9d$7YGH=5=EV6T;x}Gl4tXgW$e+8y27~MQ7}%$IqG0>0|Bj0*@KNdwuo| zI1B_wBGoxB)1S{ZVds62jzs#7M8$O%QVkbUj%{$}1FM*p5WTvtG<|-&g;d zGRxjKh*5r_V?F+T1b0a)?lRXMerxp9A+D1*6?QA~gl~^r(0+7t#wDb@dUONk1&-@Q zi0cI&bjwA3J4Fz{C!~5@#3O`Uz@s4UlIMTk58s9ccO<(m>hiS^G%-H!<5+Y+cjwBU6R4`mO6A9)&Z^(Q8`%E?;y6z+w_w$C@{)9jzcrt(Z zZ!&$A-&9=tGpnz&h^dRH_Dg@x2uRFS#1G0oM$j z)-7seLCUY(6kW>BPb{5*K9^DBLw93$+kF9c?$sy+9K6eQSq;1*Ka3NSL&T-f%v#eM zG=+bRN{qP`P)PoOD4+;wz%DR?!g=NcG$Q9a2sVvh#wBYN?8D5?O8+1&ponRJr)1!! zVc%h!_ZF=cFZ(vDFp?G>%q^QCzgOlsgG_4*ePRZU>O6~l=b2+bYBDV!lAR$qIl66T zJ#-oV&AY!PPbJA@)}$tzKVa>M6)2wL7y0!G9`}fKSvbe<6PDK(jNeNPxl_3j`~g$l zLngO4B|vcpA=`{lEjFwmHY^M_EI3of#W_t+S%;tD+n%z*xoS!HI|=%_p3^}iep9(5 z!?!q3k*;v~c_aq0nA3Ty$Fo-8JEJ75_G*X>B9!;@?(4=bnZPE`{f8$yDEcH!ce>7~ z2Vwk3=W%H%=W)4VQi_ils5dHN4K4ogl0?c1}MtE?==!ov2Go*OQH@7Zy#_k(B;Eu<=dh zpq5@Y>N=Iu8lb3O1VpQ4D@|9ON)slWKO*+GrKH{sRjSFKQ;r&cC(MuGe)2!TVf)<;&M~&X@72xu2Xb6;+5` z;}LY87}+rAbuB>AkkLBOly!O40lR1J8}T$MvWM=N z92^6GdSwy}B6<`4HeKDwDe&cdk3o{N?t3W%x$!2dXyj}+>PlsMaKwo~$s{=u@#v(e zt4q>2JFhmaqZV~@X?|8oIpz9KX-Bo<=69M4i!y-9?PsAstQKqIsURS!H|bd}N4bfj zRe*ppCqPMqPiXq`A@;)j-5F<3VL8tU;Nhx2j*?AX21^S^>y`wsu)o(eYM6BK=ZfUr z`P#Hj5>76%wGRzN%SGWv>*}*y|I9%S?2KsxtudRdwKkOU zQ1Db~w8}VlanpohSvU@Yr(~^NDN9Br?PMEj5ZQt9(BRcqi9f=7M*AJ(`VypXuJ25e zMF~KxhG_zV{$Y}nX-%pD`?AAX(4uZVOVdDb52rPw8FJKSj7l+4$`RieEgCl*Fvay3 zqz|fO)j*qJx+_b#se`%16NFBM>F@ALw2AQj$jRzTM@fT%ugavB>5~iG8 zak(T7@PZ;@S#BQoPw@(|G_1AR7UOuv1V=&g&+&@D|Fp~r9j-P+e24HAy3QsRF3T%` z+3}A33t4}cD53qzQYdkXR}cwweKj+Bz{+>*VCZMqJ`wx@WM}+G?9u3a!G1F4Oad{I zyi=fPo-e@=HF^z`LLkbi6ncKFR~Txf;SlqWego!k0%4l)6+om2%roccH(td2m2QA` z|2}r#ThyHV=vx#F_Sjn#Y+@~wt}gyFL=yH?*ROAh^-Rn#`=>gok#o!4@}#6DfQ&9Z_el@;Vrlc%Lb{N4hZlH=N>oA*})$-+yG+LFBhlAaGfg68!$ejABMSt zAJqEffwQ0HnD(!n=BS0%uTZH4a^JyVg04%#q}wt+e>ybaf5yfNb%pt}GNcxMvy4J7 z4Ec;bCei^Bb!y-(mPoLDue*Zcjh0N%V@_{Oq=%5cET$F#w=8CgdBshyN3=sqZ$z}C zPj5i9g9=Kv6zNTfwpc0*iMH%DhxvbDkanS#FGID!majmy;94x}Rbbh{rLX8|1~{EE zR}F|n{+?({?Tk4Q@q}d5yVw@h9Np~uqB*$PC#pHQ*(cND-x;B*IkGu0(GuPnqG5~S zfhEwlaH_Q){uh)4TP(LP2U;wXtVdg{kgWTiER(!oRhdB96^Hsn<1GuV2O*pid;3M5 zBA*Y6IwRk2QG$}ZB!XW|cC0+UI@_4eVBMHkUM--U*On-PUy#fFh+9II`p;L$)+Wza zc%t;{yWT7I{^A|f1K{fy`g_X&MKcnRtZ=e&aVz_8g? zzoXs6yy9_4G!}q;J^Ob=})&9fQuhIj&h}gTVb*5_@A<#jhF_L%5hyol%#Chct|#_%cR-A`Izooa3g zG4}Z4Jy6<5XZZHshkWig8p~^^H_Iy@$$#!{5RKdle=Qwy7)Lm z(((JQ;nTY#&#O^GKGA||)MHdE3cgkNyd#$9 z8}V)+qf-_$x+j#@`A+ubkOxxiNe!MVee?!$<%VUF?o%f&6>Ai9+$ar&sv;s?Qm8Vb zQ-#?&JpC`)iXlk(OW(7eb}xl9wb$CdA1a(p8*Fv5h z8?j9yV!OMqFp+;Pd@iJ-pw)tpM?@a=+5SaK0M7SyXRmg`cipa)sVvE2sIAdjIq`d< zjlAf$lj_-Q0`~ZMvHUkgwU&(XJpH|rHh4wpVS@~Ji~2;lZW*Wn-n+O{)wWzcFFY44Hiy^NvsH8^tMtuZC)=CwX}F`^cz(RwA|ONHS;;|C&lnN|4lMkoLdT$mVNH? zkJi3ZwXwNim0RyjdTG1I$|0hV8m^m4-h}oK0DF}^_D=$G1v#lb8)rjQlrDUQt)X1Z zvr&kYk1_GWH*z)Iu6K}#2c;2j*cK)iWFOfoGg($ ze+ztKp9y>^y-Y@N!TF6dFD8*UYqLyKTN0e77P`^9)Yhw{n%cQ`MuW#y#)$4*US@Wi z3Md@7ZJ!)nI(*yd>~*@vK&yg(v-?x^nV9;}r?beBBm@zqBW;U1Lc`%EKglIyckMq)94TF%LXXqkE^jyn|91)JAq)Z>OhV zP`kn~4E>LuU6TkP+*}vp86gq|0WM}rM$r?O;WDq8qqZzJ)2>ysQh5p-d`8sd&EQIL zu-ci@-@(@O`ymgsEF7gFy4?kWQCX*u4+|Qba_Rso<``Kf2*4MoIkHpWA z?=zOqvTKWM=>`kqWo>k^S%lDr8IUWeKMziQ_l9S7Zkq{M*ZT>mx+Xj`w;)f5=dB5T zoiBQyTAvxXh($H7JaY>I#}Wu`agU~l)%wmiHHEOIRUG+}j-9!&h3qvlbZ4IoHde2w zQ@Z_m#ym#p+C2Uswew{X@^024Orj_ps;t(-AjBD}_w6h}tP(SbDZTec_x2<9j7RtO zMw1Ry8=T0?{aIREczj&sexXbVIOs3jnZ%gSK1W{9$llX-No!wLQU!wMCT&q_#i!0H z99CmT3Gz%jbU8Z(W6`#V|})0 z%1fp}^PHTz-u=z$O*YHfiYdyw{S$U6kcB`c8jrv}>Dlsrz}w9E0M<(VX=gkFKc(>Z zk*Q4g$a_tnc|A{NU05K2b1#gaPUVKs1JNVT@R4jgpYWYkakmJjmcAN`Jw$jW>-aW~ zAXc`w=~qIQzaGQ$_$X~;Uy)}>*-%Y}nywGYGGIOJ zSep1woa(Y7KdYtaoy@^!T<`8hliP{3e|Dn?dapJ0%0WEh0=@66f!2^r+{k}z{@syg z5;3mU;G_jeY5_#?L*}w{X{oR)wY`B&p<|YgmI~7N4)0+2=;;S9qyR3YAQCi?Spu6s zAYyc0*Q;MeAj#Uwfvjvqdj_fWX^>{T-yqO|j6JI-he_vsPxw1VPSSZT`;d)h({1wY zHTn*0IPl0MK(gMMYSjME5G}(N<>xXo4eNy999F9_GLK=m)!5w zh3EZ{7o^a7aCN1o8y)7K;IeLVJ(FEB^d2Tr!ZNhT6onG==(@*q3^alg$C&J&)t(w; zV42erh7ZtnCCyCgTaldi4;gb zjh9tM3e>FPVVv9hYNg`mC?t~cbDcvhUW;OPu;oOztp_knyq<#}pRLOrM! zk`wA^97$mOXoE@YvXTfPBf|(OsXxBv%VcOK-jqzlX+xALWJx9pjOYBcb9ROE3AT0~ z9AWUk<==0DTCyK%k)>YZpAU?mi%ue9a!Ijsr=weACZ*LWwBgHl1sK_0&lCH{oCj_t?2l)z~IY-I$Zq=x$vwZG)Oxsw0=8xFyH8 z#3w?lsU$vNurRN3-O*1=wsh9i&Q9TLN}F)LL~T2e>@;~jaC5-Iw?WGYpcriN&+qbnXxp)x2pXu8tp?f{BLe(3H>5H7I`D*7kgtMZgx_nb{XPG$G zf*K<~$B6RXM2DlqXRW?y|Fn?*1cgH_60(z&#hOB=r3lLlFo zixrT_Rzga|WfwdoBD849)@Br5XPpsS)Pi zlp8nbI0#seT=<5T?G87khU&Jt^mxP*e;#4Vir;F~0^D8H^*R?T2{v^JQBuqqJmMd>3vMX7u zx;rCMmtIeobv(o)7Ts^^kv7)&^GOrlPLMjWrY`tE51uwR6G05H-Nj}8bksu*PKbFn zo6L>)Gy*}2@;;5=zAR@uxJsS{s%dmOIAl)pSg{sBHrt2Y>P3Y)Usv z9C`rBNg(Fk^sL7pxzJHDJk?kU=C{S~6P8*Ta1U`=*~NREus9A8a&tPoZxfbcysy*Q zg#>W@ip-QF>hm>PCn~K*n+HdhqchRx_6z!LqgS?wr|pTG?M#& zuZOGsQ*mW{UDT20Ilc)bSVuYI;ihmj@^L?rrI!8440qE09BP5b`HMT`NRJO)P65lt z_hgd$-S{hdxj{)TO-Nr(Hk~Q$#`gEX(OWtyvodNSnSOK}Qdya@Fbgpx&hFk;TZ=-? z@A0?Z4U}F>+hYO-ZZi8FK@HcXaNHh@Zu?Iz9!T#`MPzcP7c^ORC%28=UPs|$L@9^B zl&DM&`(Bd^dh?^#KaGp$LouIrS`uiRW@`WW8}U>-sW;0PpQpCg@;?qxB^Cbjd~M)4jW^C>gqk+z*tX+ z<7fj4<7#ErTHT*-C~ll@P!X7CNRW~QJmKv7eUgwaPO<%F=8!TNu zb!-WmeXK};gcaz7-;dqsE5}IDs`HhvA2voGDfQU%`&>4DUvy) zL`%0MbG0O4XuVhdP+i1whir@7G`hYzD!1kmU4N-E8#N^qz5UZpLysk;vZ?82I@mWd z9#aI~Y161}-y`TevV!!_+YVf+uF{#zw4-Ba38ix5MZXv5x@!sNjbw|x>pg2F1jA z;Ve`g9RP6}SFCG)D5)l^T(;_!*8U0h>Wo@$n!^Q#Rcg(cWiGF3eM(Yw?vM-hC6I$o zsbrtlDre6dFq=@-GL!#-E)g~-#xWtdr$Y zg##+fF23HW=f*+9^=QFay^B=Icp4Gv-Bj`{i-|%h7$;UD*G&S4Y=iY#x_d<_)n6y4 zt>^ukG(FXa0qsAe=w0FZSKFIy`Yxe{?n8<3u{@`gdOKYi@RWzqknHpWnI0v66I4LQA+N+1t6T}T}clJPF)qNcr3P5AFdnD9t9Gk7y*^Al8O%ajX zk3Bsu837+g_NAS_Ar7N4qZcYxE&F*!^s(@c#qoKj8a!OG45daYzPD_fz*oD>Bk3Hd zad+q$mhTSg-5bBLJOjiArvuSMsE^2Cu#PY42#MM#EQY2{>hIva7!2O!Z}z0)`%*S0 zz7LXN>Y&V;vMuei0?}{3c+I?QQyAH+zu{aTKe8XR9fA1LGZANar%bEecAjWXDapXF z3JgTXE6ku-FSy`JT+xuvuvr+BYnk^vX-ciX9}8|Aiucxgx@4yN7jcU(-?&==WA{@d zP;rx;agK41bseJSaAG^`o?JtibfyEgE3Wo6D$x!fy|W3SQ>Qtx zlo4t%Ka;Q3h*qK`t%8MJIuXVBXNkw>RemW0egAuU3;3)I9}XEDm4cYeMS>7r-`7jW zp2{=v;Eotw?*flUbf*j0>d|z&Jck-OZVh$_?U6fmH#FQE301^2(aMsg%EAh(_ksa^ zZYy~wVwhUn258?)K{nPldIV`yFg{jkxY@Fl8SlQyt7EPAM^`PC#T^!HT(89f7V1Lz zzJ#qrwM1D)jzD$pc``Z7S#-Wcw(F&g`Lha9PNw-GtJ3FcPzF@lrFmKY;2j{;R)w-6 z*HpP&2MuF$|J8ybP!0aKS9C`excJcg zHC*(}`LL!%`PT{^b3ZKxj9T4e$EKirZ@2EB8zyDjfKq9-t#!KrhJxWE)bsY8oEZvX z)S`z^qZ@FW>%RjVy;bwYsO zLDlOGS66B20~ycCzuGTXRBj?v8MUtE4X2%MieBD=kC&w7T)69?Ku{-oV5N1G&BVll z=x!PrBj3{oLU9zubI6y5pL4KsHb9p_vlLtYt~i3Yfc35(;y);!o}U#?t9nLF3ndk3 z{cDL4zBoV*_=Wi`^vDP~Y5s6CcDqwgGcj7qI3Z}PdK$l}OG*0@(A{ zVzsg53-2$9kQCcD1<+$*D4a5=KY4@#HO$usE(<*G?0W~|R3UrJc&jIcYZLQqX^tUB z%Hpo6&qxi?+*WY|W8)+Y&0 z>1goFoJer9Ad2Pxm=X-$Lf4tm+Ga#MlsR|Qs>if= z$?7lTVhvolXc#HeQF|>5^T$J*sS7t%5a|ukIVDumOcZ8i3v>t(Ki*6j~_(mlhE!w+3t2PRn6OthrVzc znn@-n_~pxtw2;jvF$9idwsQ5n#=%N@!Tu<%RKi4N4+U;c1J5KPUOg8ZHSwflHfNH} zT#U(BKJRXw=x18KxjH(?dS1|VDkxk&x_Ugwl(H0K{Nf=mT$Zr0?Z1=bmcyD^G)7-E zGa8`S%FOBnblLTIyfU9T6nW;1fRDWvfw4KopAGSR+?;Q_ecTomcG>am?xN-YL?;@I z_FzE$W`(kuXEAh@7#G4{=>eYn8IDN2bfm*76ha+ek3+rIFlUKqOjMGU!a+~x67g8o zO#ryMN=z&3rR&8@)2y;mba03^1mit9W=jl9DfuD|@9m)*!9qi7;}grMb5TH!6!UXe zipftnTFJ1vd&&sR<+T^{7a;?h>U&nw_`kU zTxb^j8Q=7CRFOcd7tG^hR6_D4(avG_vdn1G*$ccx<&LzN5@kms1n9qJ-Ku4hy8apr z&y1WxPGFLEO{PDOMF|51k)m%pgfvHcXZ1|BH|{%m#cjYo`ntOCenCO}KSgzYGd2Y@ zB;npQvq;I$;}NsCW7x7htn?Z5NNW1YjAKG$3K1~LxkinJ1NJ_3N3lWb6+&>}fDz@o zl3B#XBuhQlC`Wd`vXVL#_I;Yzixi?*1N#(Dan<&{e3qb!vFhOvLv`6GVz{Bpx}xXW^m4(WvE;nI8h$79Ih|9ht($YnN#(4;!Yr6Wy)DkX71=M3 zpL!XMv2Y-B+>sIeY9~qRh&9a3!<8zw>&u+#?ikTkxMICuDDj9Cijmu?=Sm2*_?KZl z-_u1L+zs6o3OlISnh#Zv7s4&vD)%OMzL4Wf_Q?%<)RbjIy|_6n^U9TbDic{Q0>Sev z606r*y}9ijcn@D#*t2DCH0Pl?_O1*{bL(hiVAOsdl@k9gGQApIROfOHjyyBHICshg zLz!>4nxtt*Z#8ujN$rOoX@(Y6O;xB49BVwgl`37ewXxbv@7!6hN1Atw@|QGI_F4Bf zbsZNbyG9iE>smQQeyt_c7MY3BKDVHQA*Cwgg|2T#56UhLz745!o1=llDByZ7#G+bp5qQ$ zG#xC8-zqmV>gJozs45xvd?Z0YV@Um#c5|P=>yATRda7*#s;_Zf0=jq(;`z=mL zLH*TT4NiX12Rp}J>jYs5a!%)j=V#Ke-> z5BLjaHZ%GQ#`&!V){dr?lZuwO(FKe>bu`hksR}KNl`_4r$xqpCe!j2BKp9ask9a5< znQ&5|n>w)4p<<)*@Hd;BmQmIGRvj|s2*ZkHOz6t`};j*Yi>&IU^}t zQWVK=Ns_Mf?pg1W`?8|;($?MvG)jJ9tM+@)#<=U9i1?Sh=2`AANvLV2<{{ICinAos z58Cpgg9@*j>Vryr(i+Bh%ZYvKt_C+#H{Rif-i+oD&F-sD6Y|6!XV`LVmet8h zFm&Zw-8-fH`w7HoQ7J{SE3w`=o)ynd=3&gzWO0ca#ZDZ3`3v!iLF z>P}xZ%$QhX*Y9Hex|jG|+O=1y{8+-wTHTB$Ck1oDs4at#QP=?SxQe?md)~fV$db;? zl+NW!x}D1CD#TK!A;@!ULEUe4Xshmwt+r{QMrFg0?k%1E!8+~tc@x@d0}0k^bJpH# zN0!x1%6`)_%9oUOj)r3Wn~nvybo++yy^1eGy}OF=4y*aNT2}=Kb{5slE1gGv(&Wq*Efw_EqIyhEj&USH_NTylR%KS{-+mo7z15 zU4`A-G-VTkb0#-*&fn&El$xPzgm|O#$ik>gp{-M*jAgJ$>s6;C=$(7N?0xj)e1JWA zr*nSF$qwu39S&lyJxP_t@f>dhmXtFm#bc`RgKP1|yH;xWt<)l}OFM~azj&eAx1&=@ zFO}aqLacoGiNOuKDRX@$nvBMfr zndPsqaHR<2YQ1Zfcg7kddA+|KwDVPJT#AUweq-n5a+LthJZr;uMRCn@HIpm~#?Q8y zl7-A_)xi(fn>rXB?i<{JU%b`r^CZT_<+jM6-z0kL9T8EPb6e`BpKxubB#4d|=1>?K zX&vMUjeRLywqCjuGioo`8}sHy`nO{!kEPGBWp-!o?i7n+jk5Rrl^f$iF_q62^C8nF z9MsEgw#@oFDvOyZiZVEro>CpzV#J59NwbY4?WDdcPL{nD7GgvCzD-JZ(02E{0qJ^3 zb;9rOo!ux|EhfgfRq^FoNvC73>RK90jT;N~Gf{OT%+DRoWxw;zrljtn-_kCF7zaHk z9Ub#Xw)x7z=X-dk*u!L9~Jw1U}NJ!XBb9_v)T_Ex5@ zIQ@%N+2_^X;#IpB&b?1XI)v5_4~ORkd3E#;x`YqQ-1j_h8Kf~t`pC^Y<0`(-xVNCl+UMOH0optNg~Rya##?7U#t| z`?r^xlFaPodP~_~jI?M}RMwG{5~Ebb&KCEp6pf8fZY#XhFKyITnicpmMVQ&kZx6|K z(j)ee!N{I4m*#`9%Dej`FP_j4IC#D;?Q0^@>Hf02AEV5%&hwATEtQn6+=Qa9^RHiu zNw}afyyKwulLz3py9#O7%J=ExC})Z;f-gmst_-6VQWe7@Kg|yJrllBltZNwtjoi}^ zDa#GFqvQzQx*Pq#u2|4lDB|t(MYoEx<kG`{0_W=V-;& zI*D$^O&gY zx&wb6$4EtU?kep?t%+sh=Pl|jis?>EYInp>AB)V!wY^74L-)B@Ter^*a@IyBp7m=P zR7~+|F8BNt$n{BCCAxgF7S+Y|G}gR$@tS5yPdMLstNfBA?Y1n9Rt=drDi?WsRm=74 zQLc%tg}(14hAt0S+n22Jxf$7)tuyR6m)c;Um$-OB(aM|UMw!puFL@t^<8dFD>&KNd zT_l8ibSGGO41zDZqcyl|X%cEfXalCNT{YT$0UCo6w}@d2B^(7Sbu144r*+hK)!Y9j z$GW8Ac4hTBse*L(m=6ba;!^baQIXXs8Rj$8ItRmRw&BL_#0#9r(`{|z*)!R1mRtn#wM~sbk#1Bp zZ+$V8w-?9N7`IEDaa`LJT5!Pl&jn{=dvgib#sr*mz~*Qfp(iWQG^EgH()m9u5rmb32Q@+;KLLQ>`@3@|9_uay)iYnV*EOGkH8ph?i>P0su@d20W`{*)bsO_6Zy4>;# z2a{np|M2m|+vzU%EIc{Be2XxObq{H23D!JiQK>lhL`MD7l=-EBF8$h4%Dm9W_zQue zjMB6|L*x9kJ3P8A*yx4YCe#W(aw_z4Gg*6C^=9`W7JkFX20gUD-lqc#ZGgDzJo-5I zvfWan;p;QePIkk6Px~)_w%%@vo4%JEeTZYX{D&_|sX&q_RZj|5;x_5VH znpUQ@tYwYOytKDgB{j8{4XvH{ws}5Dp+K%Nc$t5Gx3|%a+lR#j+P&OOTt9#K>O|zt zRzvY>2dY8$vpS1DhOCGCs5>m1&5F7=Ki}ou+IwVML9jqOejPV>;`zMxQ0@2I4><86 zv{Fq+3RCIZdonH`azju;5nJzaofj{Zy~e-k=qk^==b%jKUaOG3!Bq-Lg<~l^nYb2V zTpM|juj2K4{h6FAb(@v@H9=mDd}yrJhNX@ zB*PA_&`0{lb*}CTv?SeQAvT>IPh<=$;_7C}t3Io0ldnw5yDs$qvbEsJM9U?UnZ=Xt zM{5p_SIkG-oKV{&XT(vzqr%aKZMu7D_f=2o>+1#G3Y8x!Dn3-$hFqAK6^I#iW{o3% z_bs{G6icApVWZZBDZX(C9Ptv4{JqtDoMxRLB13$kL27fSDM`3)l6Ji*fq!@5q~!o7 zP1+{^8TvWuS)0(o)=UHW34b%)$x9 zvYK-aRg*8qpH{54&yMEwJ*!1WGd!Pabc#ChwEL~|M_whXQtSL48d*g^W=;^JEF-^7 zpPl-hsd3t3@YW)GiE_gU#VPHtPri+;FV6>m>YA@A(5i0#MpIi^pKmm4|GFL*))n^N zYlU!QV0O2_cbbXO$``9yfr$lA6cURgkAVP~1_8#QbI`~(j@KN>e=^3j%&%Gq${qic zrFN8TV{Ug!AAABMsX?f}_*y@J)c%Gr{S8tB%qJp51Y|E}xgS7k@&Jg20+6l$1X2SG zEm<5L9!4jrVPy#@0tzFDMxp2|Dh%}JM=*>Uow4&HbO%7De)6(E!Kl%lvH_z8fA#+* zM2&z$0g9ENJW&u$04yyG8u$Sa!2nVV2k2<>I5Y+e0APYf|9om9hz0mAA_nspvW)Hp zJRUC#(Me(^f_Ng}iv7@+0MKCob_aM_1c+cFNT3h(_rIX$zefK3i#{Uehw=Y0{cmd% zKuQxdBK$qjU(_ue>PPMtfTaDiKL3e=gpuFCKr)GZ1GrnP4Kp5h_w_2r9PusXIyRoB zx^GG4lJ}+rp4~RLB{H_X_jx(3U<0^Y(E6md>+yd5P@HeD+u`ipn`c71_tVB`yJiov zHWW(G1|B(zS9bS7VojO0anP@QeLfdG+Ma#AS<_M@w>p-Qb)=z3~TX;#ns}6Zn&kzT|8=@;!0 z!DpnjlnKWk(L-Vd_U~`8mD?mODOg<^p5q-HG3fU6*<{t2cHt)#;s42zeKn!8;fhMA{ zNKGCC;D4~b0H24@P$)n-+}Mr)L0EtT++ddg5$Vvq4H^+p9AW-L6H$PT2ychN{zQ|f z6A3qthr(bGHc+6bA==>pPZHjj2wx*G7Xl9cZbUS|62kkU(eO1#gUCSIkjDYOC(JIu z6T;#JtOo!&BHBSeStC%s;q9<^B0OHeZUC^FFuQ01B3_6fgb=<5Tt#GG2<#@X@vt~R zmxO5;0JcPE7=WyVw*#97Lc=205<@3u!un#dD1?TAkmF(Hk@Ld>UL|5YuyimDq!yhm zN`L;&b2Jf;rW0p3YFKdCL1+YceE|gr050L}z##^yVSmyWgGaU_{G>0ahj1Hs)KB_C z$TbI`P(%#j5w#Qe0E0!eBNCBug~uc66%kKB<{JoIM13I=0Gbu%XGoriST_hHI-(tx zh{!hx;6f4Y2y`0i#AjePs9r=~LI5X=9FK^I zNr=wgh1X+G0X$s9`hs+W=P$@qIwpAIyMbDQunTGl!lyVqqK<eDUpTm3;Ch&b!GNO*Y%V|}!2JTwW>^%= zF3V^v?ovr9eUe!NliIV2aBVjnTM8~)|}(c@_znwK69x;6f8J%xc0y0 zl$Mvg=1F8yf^o0w%yzK-HRIXy8;ZG*~do zK&+-|RbBFvA^tP?t6u%roD8uN4MEeV#Ui7sYyQ9f=mx4@dH);AW)uKhw=$)qim9df zp8-N+nc)BPKdq4mR>jt+vK*rJzX|_y5B2}t|G&lg|3^;jmQn;AgL~AvWgHu`R8j{k zCG92_LSb9>_|nY7)^0*GPRC~Nu6)+J@szW{lBZ~G#EaQn;8nb~ly^!oo z+o>8{|L5J>@rb_JvouUo(AxK^iY;Rfa*-|Ln~{J6o{J_#4e6kcB4Ubm)fpusPiHnl ziG(4$JCBCW< zQ;`a#{|;1=U1X+9ZAT-SeBeb*4}aj5Wu-nKx_t@T-^(kX7n)phla9HTX}rxLJL7ei z_O`o8(YBRBy0hZN&Yj6)Md2)rSZXmZ>0v{EFJT-vV=kbUdIwx-+2}4_@lujbGEWrG zC6W!}R2&z;Tcx7P;WdW>lISHPbx@TgBOs>#O(gM7CdN0gMh+Ts$QK4_VoXa-xMp^A zshi&MX=dFdo7Vk23w*?n+9~r9{I~1--jPi=dVD&c>72Byui0Bp(%&A74ZTxrS4)d+ zt0@hmGh=mU8>VCvhh`jwgv~{{@XGL@7-4itWe0!E0H<6(#Czy1UNy)tyex{d!(Z_- zD4KE}8OpJ^6thyKBp^Azxv)FPbTNHXD19$Kf*2p4!vcCI6YupV$L!pk4|lnnnt%b* zX!Dn}*A2eR5^#-9b=rAwA>^>j&-VmO!A;Eclew? zVSa`;_QrN8+U{NGv_;&=?xiKuHjqO%V2u>37p!Voe7#54%krv8{A{#z&GrL3-Bw^U z?zlx|EI}x(6E%s&_P5zdA6&Vb9rM^3KrvE;ElCt5tiFi#G(5nc9k%F}>P{qk3daHv z5seb*uk39LKK1Jd&~* zU7WH~txufesQOA6ka~VnBm3L2fS)waLBHm)j~RStiBuXS&-F5S+rEtKWV5U7N(4_z zxh0%wv*)mHKm1?&@|#a1+@H+K-Av#pUqFU3M; zVj-D9@jFBzrN|gI$T)?PWI9mD?aqMrY}>}-Tp%uXO&=&Ov%6U*;Vxg~y_SO6HB92R z-Lf^OcLs4cn{I0)<7Mrr3rI+Y30kF>M&bW!T`Hcfmx~hvnXp79kGjwp-5^?=DlL!c zDqa`+<3~nBvl_b^x!USo<`Pn>3x>ZVL+`bG;c=mGfT>(i3NVK8nw5EgV`XEPwm@@z zmx1F;7yrb{XsjKzcbB6pf5R89d!Nrm`E59E z!z{L3WSDds0^)6X>@TRLRC|OiA?=39e7GnG|y>>=EA{b?zx4Kb_FyhcUD(0b?v*b*6s6Ct!7Ef z<5qC1O9)E`n(!vrk^(u2Q4)ifq;R;09j01ZX`|l1=+isMv8t|^G z1B=02-F4a8CnhI;9Yc(PmaK`4n4Mm59e3OXkdmDzQpJXT@qaZlK1 z_2W+-X;Q3=Y1*)%gcgo$1X!=;6Gc)*qgE^f0c0>ARXy>Rum1Fk4^&6Cc6yA7CJN-VF=zBp5+o(9+edhIKPWgE?+- zOAQ`bot&0pFViLo3qbS8z-80Qxn?T;2$aD0F#j9gCERAy(UGxw0blcj?sXpkUs2BS z6QaXSUt6-47jWx`({r=8;AH8s4T|alEIBjVq(bh*qt@Jp267(Y@?uow)2z}KNK zauO>qdJGyhj!FqzMDR(9g3_Z|35B5E`Y$wOWINCYp{kKL-Hu1?Ax-8D2p@-32V<9| zf~TcS`YVB|zY&D8x*H89G}>hHRXMDZ5*=VYnOJvSvI%UafaJ5mDxh|%f~PJx;i=g$YRkW@Wmw#JOqaw zOI&mw1n%XecMZhQj9s!!Ul#1o6^^giwMfl;2QZ5oGY%tkx%rP%rtl-)OLHK zFWkTm)luHM9b4R)9doUBi~s}J#K&+(uptcpW*8<~WRTrQC-$A57Ap!OtQL{omhE0W zIU;+pEp8a$Ji^opyl}(_J?`1)XNfJ}!F;$6fURINc)x^S%kdARjxZc&d_@hWv9Cys zi2rRBCuWB?3d^I4d^J7&M75@2bQJF1l502qJy>FVBV9Jsalf{7qW0tes(AmDQrffe=pHE-YN(h& zvZd)khjO1mK^>#aEbGnTlGOJw;I&7=WF1wMqKpA`KCt!ekyOxWDefsFOQwHgaTg24 z&xMN@#q(2?s_XGqAkph|P%dxf7KZ%6#ne-3qnt%Ei`pVg6`IM92wu~q)luV%L*Wrb zoZcb=Q{a)0p8qk?s+yAw3sn0JMFdVV5xHt|u&eGdM1!wDpfN0OOcV8jtW@1ds|4lV zK!NZLtmY7g(CgXFYjsZ3QpmkL*m5+_+s36Hn#)WJ-62Xlj z1*Sr^pM=(rSK;Ii@PInPnHY_%N859=or}$%Er7$IA=@jaKs@q!- z&(EH>3gE;m4{z3f9rvt-7B``=1(q_JyCTM$7g@1>vco62Z0L{g%QPk}ZvqvHJXYVv zePAo=)5vQhv(mdd3ua^?dI_!svg=iv|Pupb{I0F{dpoZaEX#F`}0Vt z+sYS|M*vTtuCZ+{N$O30qy*%FO2F-}=Ny7kgTzkOv#^ea0Locep9dhYg8Yp;2c{jH|K zS2P(iT$BfWZON)JP1LR+oPyjJM^Iap=-D##wTd!~en$X`B&oqQjx8JelTTm~!Iz|M zBjgv37h726_g&EU)NJh`{Qn#cBx1Z5V)@au4r^;1SE~gmdw?;xC)xVz=*0hg- zmCG5wp9m(Pnc1-gk2rst2C3a_HAaGNDbanpa6yd^xd&oh;;Zsen)DplKsAV(c)E&M z5{ilnblXHFeU}NE!s{1YpVEr5e`ACGlAZdl%H)nUwkG|tPcyv60X4(N9!qGCd$BEtUw@SO;8}-@OXGS;@wa~>ZL#Ne3DH@?FJ-)b zu-z&y!+EKUNCwo(OaP|-zypolSKy!Ki6||Yy$SLZ00!}q2rqWlWmYCl?#rOmsZN+y zbAu%NOk)J{$rNHHj+umQa3B*4tc#dK<^;2B@ z3-Tp0XnSEVvgF@KMg9E)r^KZYH@|;ow^1#(IrUXRC~gi(L?PI~ht#{s@9S>2kTC{n zOA?gP5UH`~JyW3F%)W|i&)a_@ZgNfitg07?SI7*qzZ?FryE1ixkua^#gvjV;qHqo`c1bIMSqu2D;xo5Jgjp_VWHE!4r< z@(gCayFa$!)~f+L4(r6$%Gvq$@~E;NpzaR zY_JbI$&PGo{H+{}kaa`F2ko77;3;!Ej4*U04rA&+^I6Bdn@om`eGAf%mQf}bB7*aX z$rC#EW3r~-;nGCWWB-xceYkfBp<~b>v2#v%6?tN}Lb0kS5Is(!>rpONnk$`xNx%dG zx0{``Wy$9;&WRVSItN=EczAzz%S-$`ec#@g)u}b^Wf8G~e`(@CRf8x15?%3G5gU3e zQqPNr?QP$jFrj-~AtTJlSMnP1oOgT;#qW#doz6Rz+mG$#LY417SS^~E^x}?a#1%<1 zA1_LfkPtv7Wo@F=_HaSli5_l-pPW0<6O9o{!0(>?+FDu00ohmzSN! zTV?$UPMonTj zSE^Px;v6T`n+hZCI!X2#mZ0^1cZU!6^T>JUKeVXlGnfqC{q;O#lb)eV3j1$4c1jLo zqaf0fih-858l?|V3d4B13+T>-N2|0AQWZ;;5U&sOoHRKr>B>vqbbQks25ri)QsCe=qC?| zIu6t&-6U&?p;^9+;^!>Mo!v?oU+d-Tg#XjN&p-&1+ce zUEl!}2JJ8mDLM9@_%NsD9z~cjbc|Ok7M43l`E>j-10mHgUN}8<2jQrNB$|ObW&za&T&y9LHVyuXc$?f9roAmWaAC5p-w zywv~lIo7mYztwQ7t-s#`F+8^I=HKR&uCu%^KD}(Llr?h{D{%;g!AUc)|ImMAtGA?G z>K?095oJ7-O`6qIp_17MbI?x7PfnbUi3Ju!0*<7U-92R0`QG*+kRhi?Ao5JG(`k1D z{;aemXniRr>w9CKT%!|k=k&hMflA10PF8T9LO+$(rA8a z4wuLwpVoL*LGmQ83YKZ{8>+slKey3^F%3K2Cu-ITW9XKkQ4+sw)HjGa*pWm;DdYSg zAx*XDL?*VKrIOu$g2u3I0w6#kzOG5c27AkogMcM3E4R)JrsG9d#Xu40EwVQsZ9!^+6cy6RBFXAL~$w&`}=Wk(qun_4w09wUB;a z4;MY$*uz%#&?oT{C7!ElWI^AL@_c`u#|Cn%mH`lK^QTcJjkv= z*qFAzIZtMf{|_HZ@)rF$$OR;(#R#3W4BUtEpST{Q;GI%ht=AwPyY|a6)j~P0mxCy7 zkB@01<;Uva-XG;$QZ?H zT`mMM^C&|Cp)^r!>ltv{X>^#gaCllZ2T6Y;HskAX;}wJozBj+B`#h#H<&StYoz z5=rQrr^`%%fK^P>Fb5~&rF~TKp5S?aUvq8J=O>`8@pZXmiQ#9*Y`5hm&AyaipCneQ zkNe|N(`Q!YD+^TfX2~*!g|+iUdi$SX;3>F5Al$4plq3xpAo5Ta<^5ynd<0|C6p4PQod-+mrQKLzpR z$wwx{H%mz0-olqUbeFYs#GhdHK|R@lee9c4vdxRiCwounui{Trm?OiLWBL|uv{_=v zRm})XF~FJ4BN3b!MJ07%?}I`%QH`O@`6-lZNv||VT`V

Kd%7Yv%e^yDa+h?H|#(VR?2qtcij)EIY6zp{wCp2W_PQV))^d`OBBY&m)e;l zTqxVrz@fkV_PR&ZsXHt`|B@)gd74t!+qg7Y83n8OarE*mL_OxtH^k3k-K=)-LVws| zX7x2=Gs(YU$iX9ry=S%$G4yrMF1CfUI#cF}T1EhHF)04C^)N zIPbCj>74g(;7GhDsxI^JJQU5!1CBsrElQtM2}D)vm*OL3kCBJv#RtLUc+lZ;EL6mv8$Fb6Qo zkuSA3ki^%iTsIR07?j;}#Os5Q7qIb58=^Tu7sBkSi8u1g4`X zr~rKPxLYi7lZ(_bsJzF(cajU_$fWejh{=xDJR3gx@qhSF!e8PzZr*@}`OtSxwVnSC z`}18z!lHArwR=4vrJNZg$M$ZaOjVy4;ebb;Px;UW=eR~Q2%F0e_r#$i1dfoEa zAbShoPu(=hn)xw4^7Ld=y5&6ooPr>VfFQ>_yUnr7-XO-9doDe9%&S-#dpp^3QkD$x z{+Tq-#4J%Bn6qpL_4!>oV*xQ(B-ASL% z(&PdiG3w$=SQGclmHY^0v1`srTz)qaH}3;%U!*o9?pnHLmk2M{x}KWd>ly3bpAo?K z?H+%1MK>!4Ml9zCs8PZ zB5}v0)$h4sTLK(c&hM+VsoLe`9U3M?d1V@pxY&TteZZ+3xuEY>Yq~e<9E6_# z#H&WC#oBTx;2hF-6uo$$vXNmHK8173GS>FSIiguf2}cvBitv<58N1|Bu7Z#*`HQx% zq4jrI<45}}a&mKERr=9beHx&cKWxvUKoou-*D0M(jvCIhyNcyUmNd)jBbGtuJ6FQw z5OZg8XsG2gW$}8-!qqiIs3TPEH_(kEn>QOP=I20S1Fm{xEq#!PFQ189HEID+5Ip8= zP4QL`rf|wX2)KdS!hKyZ7Z@a-v5A+GItic*wM7EKR3fcllbw{MKY%Y3d#+1lJuc$+ zHN&NN%N8;?`R^h1rjOhR^~L+xJoqK7fmcAW4-DBk*I~f!RUBB2dWf1?$Ou4a70)S+ zCjbG@Q5|QOP-e0Xt{USqRAj6IErot430Cr_WeZz_J4_Puk*$gDBR>&BqBe2B+7#!e zOx(+9>wWaQ?J z`L>&1Q9c5fnJzuP(Fp(T$P~0GqGCbV-bfW*cD>Zj!6F;a!_uA>pc4&wB5|O|tn--y zjj`K($iVQnp$J-Si)jg0g@6 zZS8Ka_DJyhD4%HljtX9t%XgX`qg(F2nT7Z9lulPlc_1Tze}^8e=-xx(OTS0GEQ`9|y~throY8*-e%fv`daWc$6)@_yb^1Eo|=6&y85NkLOzQniEgN-Jnja9=-9yBnp^%f&_7d- zdIDZCS9fHyUNXp*!{h0J&zg{zWi)iX4ggJTG+uiB+rXet818M7GfjZoUH-o820| zVb6`m;uYRrOsm<6>V%kuistPMS)%#C%(4KZP#PxV9xFCAqh@&b#ot!Z?t5b8&7npF zqpuT%)`m*GLX&DJBRW_Rp+e>k{Hy5y{UG*-w zqZ&GjAsafjVq@z3DnGbn!Ya^8?5P#7P}eB^3nSSxC^77~TWa7JB71L3_P9DDH!e_; z>|PdoKDDN1xo(a(54+uO_^q|&vYr6?=PHhw4u>;dyZEuI(4AM0i1a8mWn?!14|4r1DbLv0S(^L-+401g$Ns+4?Fb3`=fL|-#&4z z4d;ij8kD>@x|u`nANbp%wgTTrrSeZu{SDf%;EmdyG;i9jKTOH_<~)J~QGE4*sJ~LN zRBLzY(%N+3WdPzDeA*S#2Gv1f)_y zk9Nb-{hClXT4?M`iTaxAdQ^${$iBXD6k~mLy6UCWwCVQgBJ}l6`vRb@&xK*~%#~25 z$NTsGr<99-F&xz&Fu2SQzvmAH7dKJG#d;gYd-QLeRPQ-Emfru$sfi@3X}%&_^rN zfITAu0K{;oCSJ`)T~lJg;>OrU{c(I7sFPM02sm;UzMY3fsK2YRjn zq5bC{dj1+r&RW3AS^MacheEfHvuUeK>L*D?nXlhFgIAxk7C{ML*og9eOaam%mz{Ytxd2u_K z>5*?Sy77q%D|J}{wE}Vxn&aWY3lNEKp4xJoY-+g0-`7dXlHvW!tD3;ga#>maSIwT5 z$U>tH6M2eeNNg1c1ryVpv81m73l;U?r4wmun=zm3`?1*T^|DX*mGr%QFr?pkpy_Mb zU4LpK(7PW@hr6``J?+-frAc=r4AxurD+SDX`0+y6GfX7rUo?7~z-@yISUpTe5-mNLVdP3eCGpDBMZd~AJ`dsY%(o^J2A8Wrc~(%!XL?x% zwzBlVP$s7Mh2rGB{g#xuTCIQ2E6pO*oMG7|Mo&7bQGF~m@&|4hJHaG*8r>oeT|xO> z?hGABz`KT!iea}q=V+E>{3D=R`nYfVn!K9(yt~7m5o721wng-Fl@O7B2%JvooV!YJ z#+~X#!Txn77^RR;ToG33g}AK2B(`B9Wssu~e9xnmzvol_nVO6`{1vk8xzv4qow@6( zJG{vK$@UAK1o?gT3H7Txg~w6c$9qB-&)s+p0cAiDwzz!sAo-#mWg<0~K%74&CT2bW z97>Wy_C&(<0~`k%|2Wi(F1Ad!c7BJC=LPEPEmLl*_ak!CwzC{>#N$=}!0^U?2?Q>9 zSV-e%TkquaWXNF@A2acv=pX{bJZUT-6ge#P4~tYJ7gHqW5QTSe=%!-_w6V(jgAal@%&}gmS?ATiXvgJ>5I4D=C~PeH{a=Km*W;!9||kdaum%e z-9V$T%WnY>Mmop1s#P+LS{T6-EN-t&hrI-W%gY4CpAOwk&sA04YSP9xIiF$l(YFZS z@;dF)C2`8p0jy@XWo?@H4>~Aow8dbxP6Y3{A_cnnb{c_45e&#*>6uR>c{+hz^|lLJ z0o|Q3O&|HPNLxOK^I+A5U>aMtEQUS#sT>SAoA#fOa*fQ2bR^Vs0kId#*}n{lsByTL zVWNX+?^Srm(5hU;`c1bfST72Y=0GaBFGOCb_0}36yp&^~KBVkUb5)A(NE_SzmO6Q_ zvfOHb8;6)v5bw{^l-VtYzp24UisW>jGf<14VJ^WEFmuq|g(`Odm0h$@RnXn>K87}) zk?8?36KZIlNJoR$lx7+4$*tRunG#n`{O=e%uKb1%R%SNa9DaYME^0Y&Q7J7tETk8W z88AC^(pamp^YZfcHwvg=m&t;JL(3&s7~OBaP;mKL8}gD+i$bx(%VMxciY(5bl92#fE)E-w32O+rwltEb`pb(qcdteEj34)o4Y4dR=E0$Fvpn^ zB^3!|^OhHLGn%82b0+Xkv}RBB0$?e_#w zRg@!qzae^KlReuRA(K&?KB>f#^=QY-+kcx=*xm5$T97~3{p?gX{+vqs#gQUv;Ocqr zvow!P-AsBuP|G=O-GVO@3^EVm@e2mqh3H1f#zJl=rPnVJF?{^cZs!@yk&B=->%?$F z5oFCC^s9FlIrRt3`kXmrt~nMV^semM0c(4H+RK?7RRvmSu(Egd5Q)&t(Kr#iXr9 za=z!C^3Y;e;9549Z=oz3Q>>X?L?tI@zrZmtyW6s%f?OS5YJLa4_3d9nLTI$u)+LHo zr1L5p&S@68%F2|tzTh^reoXInKTVKIFYp)myBtI@?5wR`sI!^Ly*8^z!~Nal)H)Xl z8aH7YMF@QVE4z1h2XS7f0!}A(B6-_ZQ=Y*7w*5v0*YSWx>&6qZX0 zlO`i;40ePEe}dwnKJz|$_4$fZ$yqVdEhqHeUUAx4&pSCoFplmi;^*f(2;qAAOk*81 z*_Viy$#*i%;~YTQ0AVJd4}i2n1kQtHw_jtH(9haW_lun@?~5Dns?%f=C# zs}65qU;;rr&IEtKKtOcQ?WHAmU%%7yQB!fRDq;DC^y4GKtiA*zfvi1hoXp zP+W+je8*g|cb9Up?}!8hgM#S~C|BL7lkJq4B(l9BISTvkFC2>3@OW0_gm~;XLt!Z_ zXCQ?xpU+DTl4_pItCd>Mpt7Ee&~%gpeeBZ+ZU*V%;XoCOdHXc-J+Ge!7~AZP2bMwq z;6P9*6^s;)63bht;}!#3e?0}!H{JlH2`M_>}1gvLd~CXW=zpkp$jcpWMljblSrj5B}yk}BNW zYX1|S?6Xwu^AkrCJCmUCO!`4kYU8(grnJ^JFdLm(wd?pEjag_Ubea!?1*RA)J6KvV zuVHz-4xAwRE>$MUuPRTFWJ1AQSjta?W5yrIix6sU-A&j>$h_WE4p>3f;U_z+Ui!KT z()h7yW%~~fw***W7;2&VOH3aMNtV64sUcks*Zv*s3lJ912Lb)Tl6?#XHaMOKK;7)@ z=Iv*?eIJYE@}L-gA^-PW+V#AVn|>osn7h;DvPo1=9T-Sn0mDoVEVBg0>+VOYHLH{P`vjU^>q+fDd_CgI zt|D$@RDTC1T0N##z=BrVCGtSjVzlwM0n=?VXyp?1Al}$PV@Q97+;Nd5>7f5obVNBa z%}|D%;T$l-@TLJ7xY?_YuM^g5dd$NJA*EHz0yM(JdAd79F;vWgU0_S1QdAC+?h{_f zUX3sb2iWqTzBarzU1_NJf!-a+Sk6OegL2n^cko5;1%=fMQ)2=$?c; z!`e(w87H^swh^dnE{lBz8o8N$`loq6zI&2_=IaKzyxtPFb`OArExK})yXSlbcEs=Y zliL6lX(H+q?gLYQ&#IJzJY`mlwtwk0EbE*&w3keS#a37DuOH|_uh2E;&sQ53*DSNT zx6Lv!CrfIjY(l=j??BYpkQArSj)ZE@)E7qb&}$sz{cIP~Z=mttP2KkzaWC z>Ad;1H$G0FkQx==>;6mEIllAn`g+>kmPSe#?5&JQv3>}Ol~lbLf$&|G1*mw$#4pL{ zbex(AwbFy|K|JA2!DOLSrJ~HSi*1|jxq)x%*`*&G>IN>qI8GFOD@%KfTe>Ariqlzq zeSQ9IyOTNIi{xg+;0y~zuV3)Kf`O#?mw*K_24l|$jd29rH*nsB;FbNQ9^F$QJ98OV zi5MevPR#RrYx5eF_#+R5ra!x^;&obmwc?Swa-2`o3zHmYW`pe}SQca%xRjlGVr9L* z505AkFL4C$QWv_{ovO|yg1CzlEN%t4O~+}Re_Tu1b|%=iA2UfvhkwrBj(Fdn;Lg@nNG>4SUf?i=e0Tr^EmCB=`7WG zxbTwG`&@*rirowK&f0-pv?e&yP7UdJxOdT(%ZOA8enrMsq6{J`#dBn%4qqCwXzq{s zS0JNEBYs1ix-?G~S4XCfb1b?Qg+qRB%Xh7J{xmb@pT6nn|8S}zK(sAi~dL%V#bVhtVHaaNPy&+&@Mv=JSKfl)@Gel#c* zLgNMzI@s>}TQju~J3Xs>ug3!Je{rQ}EV`N(G-v84WhQ6HPz(SvwV z#x05OPlWRY@KyCZmm{@|$}ooqp8)GGaU<((Dq+{S;U66wc*rAeI(}=xcQMx0sM;=oj>`iDqO1>=c}%a#g_ClZQ3KnbMNU3&q+^>c^e+b`~Z z)qx29kzMI-EnU@PbNNh(=($nGkzn1Zb3Y3R0EITmL7i@!Sk+SNI@-Mj*s%#kv}>2~ zl4Qp{iexEZJo0$%baxr5b5)bJo6Kx{*R0HKxa*q6^eC}wmmnpt;R(l5gnXr4*ajuy zb@y93>#hIPTw6nEbQmgSkfTBIH{((ytQNNO@z`3mp8#*(mUx)%ui^>9;5FaWI-=^aN2tkrh=95+gXurLNy&zs{3&z?~&Yq+UPI~c_IsZ6{- z7BxCCLuY1dQ7mMAEbDACE3HQ0=RMhafKny-9QU>snOWz zIOvw03cPYrm)_nsZl`~ni%1AJBL73jc#et!$84Gbc1oFcTq7)wen=7l8;}s3R0rjD z{W{Z@kmdDKjp_3 zILU2^iX&@D8raJTKN+#R2Z_EIqbQxK6fdB`OBA%j=7s1iAgrGYaaZYy2MU+f@)c?3 z{Insf<#q8F44aeK5{qu2zYseuEPN&VKB%u*bVO0rJ4oX^SLl;Le%}IN>^C)e{!1R- zOz&4u_17%EwBc1e2wY}OX{*3t^vtL5bh!g(s)0Evj+#@p#XBe7yhsTM9J&a>iWs19 zCXXMH<=1||xu!4_;nv%BM8@5<*Y`oM-y8H=i)WP48rW^qKQ6w_nDb*Ghjosy31goS z6ums6BMAsxglqHud{2@EP89!vZy&!1IG^X1py?9p*#P)lc(LMVfBe5%H~EF#pS#7B zPpeAavxH6f%-QY(wt$t6vj2j6ye!GsaN;YpjD&=YR^rY<5Xr0(gl@V)vl!5Ae&S5r zOGgC@iROmnJ3anlCjc1d3Hzl1^gFJI8a^xGkSS#|686jHqgq~~$>-Dzzs?5>mnQCv z><}ws?i)N<57HDaLBy~TRE`1~Ob`+RD8P+x`KFF4fCkTqTSlO?5Z;`nmHV~bwm4G zC(b(vYHX0Bn69*@y;bQUv%2NBu~!)P{Oz~o|J04#u3&V(TpfWxDpiqTuDhw&hy+)x38AInqQH;&ld~zhH~#0O>z%GBLnw3Jy+bA= z7|r7=C|$tqDkUfgNj+yJVI3=NmXQ(IdJ!{jmRX~TS~7#9Rma02!D5FP+3+W+7`toF z!DP%#=!O1JO6IQ(40yxgS?A8e7lY?sttp{9tNPm+h?T1vfnR6WR676LRXNM~i1`$v zr}0>m{UWGF$d2Or7VMX84x?SYZ7YRrByTRBNMT9geC&-MFw+HAzvV+F_0pa8cv|A& zxZ)JA6JzZ&v9;ytq-2s*)35ltNgN(`dN$DxBx@?=n9&FHjT%Blnkny-hrK65zT62J ziUz3-fp&TyPx?2+kym!M$6C8D8E{(zKT^V!A?x$csz7PdIY+GBj=eYov?PbsB)Tq| zh(=mSWp^Y?DI%eLs!A_o*i#4zTaNGarx!s?>QfmAFgkT6C!V$R$B_ys zzo@fp#JbW%Ez3Jx*uNL>4;oY-{#OrK$1vF+xjHO;apRy122}1kuhE(e4Bh*_>YMlf zT|lP9wW4kUcSL5ZdKpMgyT+d~%}@*#08-4C+)t1q%+CM)SIf+8K1@XiU1}AxA4_Cq zCM87(&y$8*x0x;w%>$AY(88oP^auQ*1iGp0?d-`Yx_ce=2k^Rf;|t z2xKS)k#VU9iT6k1-nfet8p|u{i-Ii6-|Pn>jZHwhT@3P_dcQ2DZhaim-zkEwoS*s~ z70g-dl35k9O3dM4`l+ZZD)NA9{l{3B97cbmx0}%6C0{lK<1^_ySideG!g?vScZ>8hgT)q;bo8y10{l~Et&uT_b zXHu}+@}WDjrWFK9M!L*Q)FFi+$9qLtj7`lC*<(M~1#97+y?TL1zDN1-2=C+eJe0R? zzZBM7kAkh7=y%>{*Ry=poDAI+3jJE;&11w-YMd`2dQO#?gu^&fHdbHWs`}nLNFpj| zu~9Ueo#_!8nKAvpEI{^S%|^b@L&o6w8o#$wZGfBq7F701Vh2|`v=cL>BM}GSv^~>| z3kRQQ;}ExmKRS@=H@6EyBoh2Hr4y33560smn+sN+=UD{8&5cR(!zhO>_H^+$Wqk^0 z29aF>NK`*;pdT13HVKQ2CfRQ#_A@&X6o_PzIYRrw+ZbZD1s0OtPQO%iI$bN{Z$cHW z>cLJZMr^CujukH_w@ds5+jU_U>hZijP}uCm*oih4P#(qOj^!HwDtP`3o=-%C#Nid> z)n>C7JrJ+U^IHbf=amT@gLUI!Wr{NND2I>TA@BrZZvDCJBm)he4^fGjv|ofGa+723#!M$!>eWYDa7iTAg4Vit(G4sX6GE{cr-L*FFzlBGG5OpZxb!| zA8qUClohF#NT!u?Orj3B5ti42>>%b%FOdmN*-C~S{3yulT}&R|)c{YrX9{a7j*cXiYM18G2(zZTQfXp_GC&Hs3C z)C@0p@N*ab)|o+^92fX;!>zR}r`E7pR|Tbg z92v-uktSurq?n+AmXVc(g%BXb5Hd0ibUb)0lWk^EFIw33mU}<_yC}vz;^T(`))_Cn zYNXd1yTKZ%zY1kynOl@%VzV^)10Bd2XHX6`C}L4Q!L1cKR2Vp;fD=%VMJf49^HDrl z_^YNJzxnQ)FPML9wt2$6N^E%P2pC+YTKhjir!X(bPih{wG3{aSu zT(E}$R%m3w0~%v!EWmUc+@v7yF;|J(R&rXJo1<3Uxj*x}e>a@l^A8h7`sLfccIB!?7@!@?gWO;*q%qGveV1`@TobW{bM>`$>9>pD=n$Z{6|L%O3G?{h@$$;!EED z0&1`OsM%_s$nr4>PBFOS2A@_IG@O}Up()8!uG~NwGG*$$8ZV)dZ5p)y{(E-Uvd(LE ze(u7*Jq+7CVP3lJm*2H1cG|BRO5^NEtDj-jN2VOhX5P_q*%w;bx=vw9q$~!HDsi+G z4=YF5L;xq`3DCa6EIl>1mP^MD^?O}P!$Bb8;auu1{@YmH_=^K`i(ftP*B=@lt44)# z>AZ@rOC!{PbaF80(MY>ZLl%E5tJCoQixN9~pinJU3J=WNf|4m_ z323NPB@}xLdz^UwqsiXzhDssivG0VZzwY|~wtJ|3+@0949;5wW@6_*;fnpmp@CxBh zI67#@!wRuS3^sf;pk}i{eh^dLHmQH$f&1KW|C{dk%%%VPk*??w0SgJW2gaR?Q+MKm z`sjE)$uLG z_9c6CuY}TtuxDQ3W!g*YV`I;Zayc%YCJDnNLsQyNnCGX)qZvvhZ8cy)xb9&q#+vA< zVt-?!aGn65hWT+M$h4Gv3&MCaPbl`6C>(V5CSmW(Zl3(Xj$7Y*%vNieT5r2${w$%_c>EG($#Do$ zlqR9LfSUw8ggi`wGTszO!ef(QLs1sdeGly3xnaco%^iRCmPbU)$7rLq^|I~TwJqtk znW1nm)||2D<=VN81P%hA=R~%lE@=690n_dzsv1A%z`f_@JJ|QDl&6fZiikQhs+p!5_ZY& zF6}f^{o2tT-}xW6-FA~oidBz8vcR@ifAGaiiTwwoV^cFpAti-z6eLXsD@^$2Ar@To zRU)2<1h^%u)}RnuH;*apcWKN{Z(F+mj#u3Gm8_GgcJ@qgBsQ5r8~MMj4tLN8<4*U2p z$rCbJ=#MBSlc_0KCsryobXw~6x!)K=cQM|rJGXn$P6uze@6#82_QwL&mKR*wq;-?; z&#l@UNOLX98eqFnt`&`oc|s`~7p3CFNX#!ohzQwR#H0*Zl0-N_;%z?Z&%JTyXWxS% zich}B*|Yk_vHH*V!tAoK>8YP;jE-sDAR;If2+gJ-h{!R-a?1(IzbMfIv=IN}4>(0- zs0{;_Z4ZSjrCL#V_^cx8BJ@MPhP&<{-2x7hW|HswWZ6i3W@K7AgH~^8k=hNHVsB|N z?JxXY7IrUq;IFRUc`R0OAx)Fn>t}nRc*WGF6DBbcI!8NLp(&1=0$!G6lIbeI!f*?W zrs66qO6@9qmIX%;14H3)IgUXG_wK%1hJ%kCT=1`}^t2BBc0Kh~SHCPZnm1XE$wovq ziuiQJWF7cbA@5z}z!j3{TuZMcg*ho#zQAY|A2?J z<-GSl-LpnN>5jC{AdvHtIx-=YY3Ptocu)kkLu9CNjp3FMdBUpkB`CMTh&#i9egNEa!>2;1@BE zO$b#9%ap6k-S1`5Yk8$sno9XKJlC(#7=vG-#L-pgjyaH->YPV44f!!>NX1FWBeN{a zA}>S_UP6wgM~i#z`$jwKzu|kgUUAQ{X#FiOcuO;F%v|0V_NzzNZE0u1rVuj0NM)7d6tYXg|axR^FTaVaPun)1oZ$)5W<1 z|7`X5ykXB*W*-t3{s3Sd|B4U1>Oi1>bmQhtEe-`EmnYs}XaoSuf)2aLDAaU{g(O|r z6buG5Q8y@#0tPJ8w&;QT?(2*i!Nt37e(Q~g_O;jkvr)9zz4^G854G9{Y{#6IA`@sa zQNt8WRwdwW0Nh+G%~2FIe#lqH^GeT(1D)kn!|kWsZZ))_Q0v6DKu)LVoX6WPCp`JJ zO7(y@4eOO9obXz_!Qa~Rl@I?w{@_?x8Gu&gPQH)Y>t97qdsIr7q9~?j z!)3XWz#mexR^uul=So=MPf47V_CX5|JTfGIlT_nSQRpfMn1wMVo_8P{_CCB@{L{5n zcz9^5e)_Lp|GRs8blJ@2Q)|NjiFWKoL;$KNgbsulv>Xf}WvU7WD5E^2la#7k2I2a? z{d<>eZ_jHFeBqKWtiFPW02VewGJf(0sX6&t$1%(>fO}nIzyik@6&iye&PNpJs-G)M zHEOypdGq_J-D;5Uhm^uY$dcQ_g&n_h;Ir@fmqYu?Yya6NoqNqo`{vBm3x>XkIj zA+7%zueti?0&DX3g*kS5LLl~*EP^t>7;|X|tyMTgv<$o~>|u>7+t|7|K!#r5x4eBf zHRu21;@kiF&z9*o4*{&xwqLkyQJ?wr*v6Ai?{*hhlZY~u#ZhrlI_yA71RW7PEI?RH zRL8uzpid?$GfB*oWAofewM{OR9v@R@^TISlMbIRIWG&jSN=! zsgm}luG8ZDLE1DkNnvjx_LuhleY~*eclQ3TYwkLv9s4*vnR^fQjaPW7dv0rd-3-)8 zk)l9OD?-77HMK0Btb^n(YiTVHMZtJE5Y;5*n!)zd)0BDghL%z)681WiIO+=DyLznl z?Q5%s=|{J)pzhe4&-}f9WWHWn4bGop-}8iT4{ zwCmfo-d(?T#}`%(&W8ZjDX+ZdmwkQokM&x60xWBs-Z9n{Co>PVM4mt?iN+W^Pl6}G zb{3b&bsREqibWxbWVn=*$b-BU4(h(;*u@ zROn=9-2tU;h{eD{v0ket6ky@Op(6gW0y4~QXW&sGi#m;@0xwo7P{V7{5QPl@09qcA z%%jE8rBDzn3xGmbi}LEwt|BN)6qyg*^MU8Ho1XaHNCw@%wY&qryW{g$-FYmo(AIN) zy%Cz5-xtdIdE+x1X9j*k!g5I(4h=muU79d8x)^K$iJH|_)|6Yy-~np{x+8~)6mYnn z>ge1sC>+N7gx|Sg%>9oKSD^LicEQtM|9fxjiQ0#p)>H%DFKmoafOud41s)}F)Q|}Y zNX{0**Eo1^NZY!gg*`j=*8DxMy7!A$FB8s}0Sn03H)h^pwx{3S9G$Ag5eP3xkQJix z-0Gn6CrXbG=Mi&Qc@Tw=HvhYohPf8Z{Zri8``Wv2o&Awg5s&WcuaReM->%JwpMGCj zn|_nkXtvR4+j8sJ@JzNvKNWjGOhHLmJpg&BTmuzB*_4NLENhA>kSP@$`Sf54ckOI=Y190V8!OQI@%Q5yFTL;-bHnMM=|u93 z|Bt=*fU>JB*T>)8_db34B$@P1FLu4ky?QNIKmmh-BJGMwHG&{WaDdP|2q?{p3K66V zV&nSLTU>hoUWAZdCNq=iXHMUJ|JU<=`%ESQMI|8zhqD$dWOC+|y}$4M-trVxvqUoq znLc{0aoeKamsOdXECLq)I|7y;P{NRDZ2RUyN_MVP-2c3J^{Q1k;bTG?5zRlUyFEI+w_uu!786WLFR&H5vjc;Y<0FGdhLlT6_g1B#`B4B|j0I;p#x*=epZz8nG>sgh! zaTBFstS5xb7MT^)8#(x(1mu4cIz(U`vONReEJ2b6MT(!pnV5KRYo4i8!j3Je;yE6V zma(uT)tI0M>2U9^jl0F6_0MMH(ihhM_~sY?zN@ome+#`=y=mGNBewj>84C_<%GZ4I zF}()1Ekq{;0)X}FjK7H<3U?5pIgW{J;0lX6)*#2xiz^HwuR*@+kUL)JHG<*|x;y-a z-0~~j&SlG%DI1&Kck`xv?WFe3nJIRG=4&cSc06#1;3sh2Vh}Gdask?}0;82OB=YQ{ z-`BJ8$rh#h+0Bn#Ik;26T5#Nr`)(cef3$Sz(j`DgD@u~HDMANj(936jWi z=#weiG?p)r)jpS%7Mz48Ld|DK#7bBz}r}SjzbDNWA7*r`No3##t|x(osE?mcuS$g;SRniD_LO^ z{dTBu%9zX`K0@9HK?@rey_-02#UNmVJgQVGq@|iDR84d#$;0oUT$BTn!1XdB8rrnx z=aMsePR~=fHDq~+pcUq(UpD3?KGiX6VM{0(+`E5HZFI7^TJX7AlZ7z_aGYMmsu~8l3~t`Et!G_=@<;ZsTEV?ku{*lEGl8ckH#N^xN{qGZySS7jm(drjt_`qg2u)Kg3i7r!{WKj?#?PQPAY&{z?q;WY_HY zT$p6rj&jX$Y{z$fC-iNHqQH?uUqmv^GBqoeG*Ss&(@oAEVETb!2wSQ#Mv2>=oXOQ~ z;6?i$(aj~(NRUk$)jZ&r;?Xk7%g`mA)mm&KyX4v9{Xa9E@e9{JcKvgWcoLxzUkGQe zboJcvO>MK=xTWFS6BsRV#gSp5pQ!P5SA0jD?z-s7B3NVN;Ala{1^SO^KrYcCOOlzr<}Lf`tUR@R&CE2v*Ggp* z?7hf01i(cBEfDV4V*0^Be`3TQ35gy*V2vj(?OcZpg(z*wG&0a%c3rz*S=Qztl3(;Z zXPp+g+m*nrsa{cw6xp)Xruk~RX`!O4Zz@-+Gtx~hrlu#TR)yNDN^%e|{ls%C{3o&w z(@ap{DDW01kp4A}fxtJ)Phna(0X9p(2q4E2|hC z&plhOTCP>cR;29FH_F35a}$9@EG=$*up~7dICKawHQ zMDaN@b}M7!R2sS`SF3#W507_OMZo$%ce9mCeM`->eIPQkI(!E)Zbzvhqp2J7v*NQq z4qAf41sH>_$>dh@l+tSXV06o+FRr@mmOZf;8}T(~9)Imgj?sC2B9UqVHxMTT%b3K# zxR-q9I9Sz1LjkG-7OU!pl*#1y#P_S?_Q00s`AtQ0rp(X-;IAS!Z}^@e1U=qO4|s+Lh;2xcPp5hZd%mugPAS8@us zCWhDF`bMVp@~hx&|9;~|C1b`VwwyLlZgYMcQ}`SfT$IJ^9E=3kdK2o!+|%Of!zDAa zDXfh>6Bf50_rj{~F%DR>j_IDKs+p&=om~s7fyR6v7V?i%<3As;h!TcLZnaFh?2sN7 zHv1!6Px{k?-M?mPSd>zcoG zQ4QfR0UD4?#qm6u8e}|lQhY!obgHqlG6<@1*%+hX1x||vwn$RYn1_B;k><^4rTkzI zjrMJNI;Hu`*FDsj(?ftuz0}+l+pFQH+h#3lwLK8cLrNwUfrz(lYH4cbKkKsI5nOpD zw8q3(wGIgp0LZ#YC}fp9QoZtsKf3M8gzUc|xBN1T^gXBD@XvXD`gg08p22M-P|pys zh{)lP6tE#P4obirfYn0WsT;GRF`v~X8tU1&IqB8@Wz8cOZsCBnVA+*#FFN$-!hH{F z8!p=9gfbb4BvnC}WgJn=eUH)7q9o)aiJY2E$%IOhUk*z{8-Lvv3?22yM{XYft2f!} z_=yL6;-dHVdfD4Eo%0t1kA`v!Z9$$i#ekm)^@X_1m{49o`GFf3AVW1N@+5MLmkeSxJ_nnrd&ZUQ`>c zoSoLe3hbe&7Y8h+Je?QbcDmJDX?BKOi(Rsu#)>xR6m6(!rPn z*85lD9@mAJ0qhgg;PG;eTHD>rQKQN~9|ha7omZF{zXvrQ!a*pLQ7XxvL-gazh5K zSs(s#lboIX)ly)c)H!o*)^i{#7m!Ca9);+VHfhiyrcjI#if=#^Tdm`-9LVC}1xY1L zzU)eg0=GIKhxYYb`-X3ML*-%8%I)r!_wAkjO-IXpl2nt2L|9`y4P?DGA(|ipmVioe z4^a$s89RsH$`20})4H~N?VPROlCbdttLN!1>+N4KtA_rnWs+8vv%(O+Z1M=zeAY@Yd@vX*?ClE|QTnh02!Iw8ZV z2dv2_c0E{e<|T!s8WQzwT2p8y@9{)9c>aqI-@JWye)q-4eC17rF#UD2dG5iXmXK8= z!C3;D@IbaRxD@3MyDJNDFmF!w|5Hd$q^VM^v3i7VXyjBYWa%11T7(d`6cmTH{)bi_ zIdkiiD;pB0HRq$6? z%s3DO3UnSZ)PP=DtyZDp=+JuA&VRG3ef{-sWLi5`@BydZex9Q@T|{cCiG3efo(gaV z$Rc6rBrtN^GiO-O&Omj5Puyz7j(qQ~&Ch%1NgXF#m&_>Xhf~?+_g8(QP%*`*5u6;< zoRBJs1J;g@A&LhMYA73gn~boyH7pIB`TYIoKe0PET%*3$K_}k!&YGHeP)+BiGsz~N z4q{`opdQGaU;r?jq3&=azD-@V72RCVt@uH4@W1rZmM?C4?55xEiSN7M@QV%!teN+u z+Gih7a(yLIiHx*Du4@xT$S_0?>m>n8#+V!%^m-F zQ0zTxOM@cfq4Q>EvX?n>;>6ZzvvN>#0B8|tb|yFpm>MZ{P%pC&LJC1$stPe{{`yS_CF^`Cdln0a8$4SCEht14A$9wn1W zR;c7n#wYNO?IdJQiOU}>Sh+g%d&%oNe$zwOHKdl(ZVd$8-SWH_TTZmq)Xll})=brf zznaR|Lb%$(>_CX@*Gq_cK&uBU(U|vXWT1CIvA16`^4Mi}@7B+_%Zn}g=rwPCtI#a~ z03ZNKL_t)kMVWh=W_0aOmPUDJl(o&J2=YN{+;rbT{SkDbn5?a6{Jq5Y69R#Cb4>gU z$_GKU;8#YsJ)5NR>6;o^fPXD(ZOvtnfRt{14TE^3c#d1l_I^WoQvY3HlC(I}(yVe^-??DVe~DZ|1^ zU0=`$?e!9n^{?QU&V*$F$gBr>lwwY0Jn(CUN1TzZ%g3I%V%w|vOn=4iN{bG^=FLGe z_Z_1pyRb$zS+PzZHXRQGcm9$C5ZulP)_`BR`=Y6sbsscgrmA}yKoKtBtJEF-~Q+HfI4z|ss1 z8yu2U5xm4B5&0>VN$JJA=A={o6`(BH72ewvMw>^$M1=uffu-xOsB|q0W4KW z_R8MawoT8bgVI@RA6waw(lp4l#y#UQCEfOk?DRREfd;cyhhW-@g9T8BbUIDtYKdfS zY}LgP1<+UYy2PZ=1!q*zNGD8NC2|9oLbpniGrC%H2hZL3gYKvI!V+z$w>RfZv zOrC7j>&O_HJ=shZA_Z+t!(Gq z_ebEEVHk_+71zu=1*}*eh6&BFh@SwM1{78XUknFdIH%_)H~ef5ebkqI+0JFxzNh5N zw@;h9Xo=^-#Q{Ej9{<U+Z8j@SHDJ&2Fmr?6KZu7%eKqr67J`O(R=If>O%ri=X zWO_kFIt+q?i1z^GjqqShqEMOSc_EYiQMm*m^9;+yO24V=7f1_Ef8@)RYUS))Ham?s zQJp@5$w};SSHIHOh`c8e{bCv~ex^s|F?oFRmtVMl#UAa$G|C-ce8k0b3r71x&0UKQ z_5!hBc?nNaQrPM5Jbe?*cVs5m2)Nc%?0rHnJpb9XkA1EGwf=5h$KCp#qATCn+BxG8 z=)SjicCf6>*yuQ=QYls`U{W;nKjO!((@qXxn#f2@19nc())MNUa^O*Eu=f|LJ9g%l z$GaO+nx^CZ=OvT5)|I}NI;o|7W^Sxxla|P^b`zX-7&pZBVbHM z9@(tK0Vf{dRAh48kOI5xM`PQ*ZH!jVoXSS6?>OVmvkQKzyBw%Z=}Z$-q`1`p*&l!% zkiqVv1y`Tg;s6BOpjxU9Wiq)tq=jcceqX6nJR+S=x7O7y>k$u|j6J-V7bmhSo}|Qj z;X=ETkpA{&-QiPy|E&vN(@f#D-sJW7TXe*^OG3$oGcQ*ye9`Y+3vHy<~PE%~^KqyIsw^Ih|`g2ziC$`lK2LkLn#(>;OG0 z)}EhaH6{YHnCS2!#*O!gfwQS(MwnelGTG&Eztq3+7lt>oeEZKESDMCFnl6j<)Ctq( zEp8rnh-yAjB9mk6nE{EKSPG@CMOGh3a8?cbG)*O6Lzxp&$gUTF1Zf=1bi0zbhgP4r z>7h&R+gs~(Z@=%mKYz!O1Fn9%l5FdOpMmZAd??oJ3du_B%w1l zTk33Y|E09#yr-Wk77Fi5B@!u|`V$0Qo|NF)!<_K^=-P*_ zY)BUW?!IA5K78(>C9D0x+>C|u+|Y>SUlEAv0ZS+&)YU?F%C_Pf+qPX#8r^tD-;dA# z!tVZjf5YoZ(~rF7eR@mVHHxAiY^8Igs5%wOWj0@}R;%2E$2}HbEk2;wOjl%H;Nt;7 z5AGxkVF7_)bi8X*%2FvQdo;ZDg=du7$QQOg*_c6#%~})M3R_N`+_`Z7=8`Y5a)qH= z1lbFm@~p`p%kw~WfUT;4;qoB?BvGJ(WDQ*{u&q=M_Rz?$jpRvohJO-OH=Mck@vlue z_b9B9Lr=c;5L;{iVPrKggc2<5>~Vd3)*utu_6U~tJnR!wTV8XVdaqODJj*Z)1S~`|wmL_@3J$_RpHAS2gep19?h14YRm&AhE49^nY10Rv|KT2= zbo~u`anC(<$>Cpkd(CYBUV8e1d0vzxuTI@~nSjNmUo2}Z?u_76IgaB+`JOxaRxRI~ z0gGd4>)}_uM@wdI%rvze=z|(`0&Ln7_2ub|rFMpG@#BLy&gG zdPgbfv9g1ZssaBKSpb}00#qIdRLII;DF%F^8q(;%);{toSN1D^`o>h88XkJW)w9O@ z#A8yb<3Q8Oux6X>RLL}TW?cx7uF#DWHXyNL275UWaH_$~n}@?7$Z+yBc9$Btb0gYJ<%7bY6#m6sm=r9-M#_Q6!= z!uhV0ATQ))yK{zxzk_!sd{}mriY#d?k!{!fFyD8__J__rrvbj1H2vr+-w`R+H`-^+ z-FLidlV&7%VND1KBI5?=57RMu$3#?d12%lEA;76B3l>(YWlALtHfsfz#$Y;6kqUjA zpERRl!v?L^cb<~g+h?zE&6ZP}J7+bcmnGCngwzZkbx%Er((#Y{kf&JO?`2S=z!gC_ z5WC0H1ImvLg@F_PTCqn@-}>Vf4ao-BlWXv>)2?qFbW=~bM((YOmSC?)WaZ^bkql@a z@sLC4?6F%nW3&Vl1m-9x9l`%>ZEGQE{|kN@xUMTRiW%0?u`CKs);hIB#6Zz|scVe$ z|3j9;Et6jy`dLotJ?gpdUO!>SvnMaW-hSzoH>;l1PuFK;sxa67iCo8w7Hlez)0Hr$G3ka7wv>SWM{sgk95HUYuq9qyked0KfkP=vqw%33 zJF>^m+We#Q?%7-ScW=G#p{I2x%C+1Rfz|TQvXx`XSKWq=s}E#XJdhHM5VTgH*bsvL z759EISqI!kTD<(}h^K=*a*yHhyEIrQkLkIpVFOSRutKNo`Ne@pxBCC}iK&wAF8I({ z^Q*~@ALqK3>~9AeLFgFn!*zqwov1k6?~yoIvCAzcXi~s%0maTg77jfBnT^kUeQ0kj zrd{8+?IV}{la}keE17Fw5-|5fqPDg++PHo_wYIkM_*v3*ZqUOJ6SyT#;u)D-S2T^Y z5o8 z>xoYeX1fNg$gQ|uVf%wyf54#8mr7Q?7FXmoevdbwymDq=S^HkwtflX+dZGb48KYLG zkK;F3S`In52r*C6I;8uZ&EL zF(lW`l zZQcj8`Z5+m0+qQwD==^2x5Ex1KacYaDTOm`HiK}3XT64THjg<6we>x7dM1 zqven+Get6Fqj@BV-~_J&G)_<=!c9t8iJ_TgND(=eGG$DQMu&PUrr}-Z);3++yXvML zh}_rsz}*{fH}mN3`_t1F9$kwp6TLz7t`t=w7xL2+L%bcIj4`B~!HWzFy;F`+3(kCE zBGU6ePTG8REhqkkNv^{6NXTtRuj;t@z6X0AIB!bOa&So(oOP?ARgzyRc*X^}mS)|L zL`hvQmBnR`ndgyAZs0Rq0M`>F;ySM|s+B^eH2$bJy8g^yf0 z9sx^8^N0)!nP*DZDL*_y9j#fa76*Qt-}=G{gU?()r63ObpLo;vy+rHLa-!8hhGppj zn52dA<*s+P*^bqI+WOmw_Z1ZIZ2u$)eeKZ{*b(BDg@ zGgK;;$@5)GB6!tGWGE6h?QK7#@^JspvUcBDjoQ=N=ZF>idfE0H$2{%b&C?f{(8yPV z3I}OL%L>5&0J35oc-9$+2kW6zB{h;Loy-vV4%KR-!%?~a@Xg=9;CBspzxUWjn)mU` zf1o$dIohU#E-R*x>x23Sls*{e_tJpH6<=&IFcGkjVZB^aofl!;Fy1x8nkX5kYQQ3r z<{o?VKS_xh51N@o2W;Xe({t*R4JJB6K@q)crtpX+G#o>KWYeIVWji#w?ZscT7-L^- zRN(E*Pu~7!+m-Ljw6yOh$ugOSXrjAbKoR7f5qw`pPYa%N00h=tk1R963$#)$Q4%EU zN`aE;EGs3*uH$>dTb>Q`J*W5ntTE+@IzPPfM8|5sa@xGb)62C2rL~apL1CESfE7x@ zF&cVV*n0JVWx`~*QYBL}$<#IK>s?nh{laOBN1O+yg0jg(59|0V5wMOb*@|JNa!la@ zxLCI|c8(XYph*WkV1V30i4(25V#wr@aPme2XpptZ;~rMMB-}B6BvNHaX-vTki-->R z)E$eX>6y0gv~;vDvhAvb{sV%q&17f*C`CC~r>`)6FGend zrUG~e))z`*OxM6sES0MyX$BdROqyHr%L5yJWjUjt-|*CR4JS=A`{*mCxqAEUVXEoF ziF85_?Q!8d4v~r;^*w{Nt|t zzLc7Fw2|sC$~LCup#8D#2TN8n0Wg*m=Y%Nca!%;UO%7P~<`#Z|=@mpweg!sb;zjD# zb(0o7O2VL8w1d*X13f=H4^8(e^Elvy>ym*seZ{Ebf8NZbGX^GRK}fFWk!4xrIu7Y< zMhZ=z9qI05VLaR}TtiEdXnbIxq}t>6srI%@HavA(vEeQx8u2f-zok^O@0d1g_QATT zQK{+>JS>4zf~;`hI*gU6l*-H%0|FjFO$6~B)6$4Rl@djYN}83X@$oUrnh_~M$*TB4D;1C{`pB2Xh>F{=<1FeC=!B`;w^|b6H*=$f%H6L8d01 zw8UD9r#;+C06KocWf~Mbi4-GAwOW}>H6XWErk0i#Dwhg0*th-XDaAgk|DlT-Mw({& z5$Cqb%?rOtiH^f5GI-JjM{JT@hBe?(4_NFvgzwA!8KhvsNEGS>`M&jkOjouYvEixP zdSBIzc%A$*fTPbDZ~akVwjE(*I~0_JSnF_>S9N%x3I`%_z{MP>$p>2u9A!D~#mk>A z)M~b_X{w3LiV4s$V6<+iFgalHYsTpt0#@jhiOR!2Grj!Lt5;oGew|#y-S#o(9(&zq z95r=)YiC!c>P5`*R}GUi6%s8K(oqhP5Vo5@!p9^}dHm<;)-4|2FS%GesAr`6t+ zCda8!v0S1|u9@=XqBlO+_bbaUoHN=WdRmaiu9z)%x@yO#G_y%p6pa)DUvlSwg`*q< zX%1jCEOt|5(mLJU;!u? zcomXrBmbQ!^?c;HA79@v6q8qTf&Z4@J>Y~Z_6v>9`+Qk{lbLOi3RRzc&@<1^W zjd!0-AtxRYOiG15I;JIXSF40Jp|_(48s*F+4Q}o!Sd#tq(&+HY;b$B2AdsdXbKQGo zD|3C-^$(mrVZAtIh~Wm?o7*^UU6tbcJoT>@cES zDnWyr*8NPWY(HmvgII`7JF@#qwRzDO6tmT`G8uAf;}Axs2qhsh=8)%I0SFmvebXX)@P=M+{}JQp3@OFEqEkIw7kuZ3?aJ>+#bNixIB`e=F|^# zzL4>LsrS&4t+uzfleFmEpZ<5LR9a%1W_EJG0$I17NpaBIrIR4gsnGwakyIUd!6^40 z`KO1j-t@O@_J4@y!iaWF>YTjepW88W{)|XZQ=#gTq8b9J3tcSqF6uXc%^PApB_gs^ zoho*jB2ysAWlti>4Jm7wv}x^&BdJ96J-66<@!&HJNG$K}mOKAfdr!J^#to9Ja(QSa zGJKy@#7mB#WlMZ;EvPWSsYu2o)H1C|B zJY1@j4ofDJO$^k6#I36C=w;PCDB?fsLNk0)vQw~2a&2^rS{^v&xd*!ccW*DKz48A0 zF1u=ht*E!j$(9c)sTPW~Bo)g-*baI>fHl(b)*ecgmE@Hq&si!joAIbSI}q zNljxlfWGa6ebe-6ccYev9YiRHX>RM>*9G|j68DlY8HG>4>K4u@yO;(rc?B=LdFU? z4jS=-)LVB07MO_mMsUi7ewR;F%l8}Q?VtJM_gDO6Zv>1+c+dIATzVoU+pbizZPOz) zLAEE93?{PE*ad{o5LAP>j>x_Ok2Fmu#~0Hy^h6XH!wi>iC@@Y=IbU@0J>SfPr4aEjeFE}WW4J3&y0*F+9*D{cM7XZ)7;$Q@I2S8Ls15gm8Vt@*LN~bOI z-3l2J6UFW7NZ&7Hd;I*Kr*2!lH}3g@51nPCayD>u}KG`4LQ=FOe=-_p!8A3LvH%AYf%CEEo*Iv|h1N(Xuu zO+pny@e#~3CGydG;h#e(2@qwE>10u9bj&J@UHGR}=ijwA7E&X;CmOOfId^?vrcX+= zw52PR8l_WND%Ctv6`h3<(O`$^C_tAuM>v~^4*~pp-8^!#!Y6PjnjBDhtiMQ=!FvO@ z@8bT)??Ot_Xb)-n(U-kLvfA%8v#pC2E6V^`T~la$bcC{*6lYSpVex2Gm=NqNRfIBN zLfHavh`5@JLXT3KM3P;ik)E|rnVz$J^V8S9<`!ZH9Ccp1t9RTZXQv-wt7!@pT}%Ka z03U_Z!n`DLqj(_|KK?nHQFwEEkDoP zWfw1Y)RwymubUW*|JHbX*} zX=v-Z!9-a7ZdxC@boHt`8gC*CX`0{5Z*7{n;2tls_F-I_s!>~83vKW3rCct@eJVK8 zAR2i=NUEa6Y<=L>1c_QSe?%b-lsq!c()b8vEuFNW;tg+G_iL5hvwI%B>NU-@_BrY+ z?^2uQ+*KlLX|iJ`6-rf7W2FI!gaD=#Kw=!55WN{lwz}l`Az5k@d8I0~rW6|9`rJ=6 zY53%gQ)EbWzzJW!DQs#!y&@^P<40ubCK(=VzI+M*t_G|jfNC$YQdA%ylq1s$m?;39 zVl`jv%cZg_q~?>p`>&o|y|b%5Hy;5@HquPDkQIX+fRT=~p&?{a&}o-yBi;20`!!A%sJ-L54ifYYxHdU0iKK4o}M1O<7eYxk1YW5S`ecB3Q-N zY}_5hL(_GZh)qB&&MuNOIv!^-Q@LqhZ<{vrfST>f`0nXc zf<{J0D49$OZY3l};JOTn8pbbqVmJ}69yWS_-IgD6FA#wY{l3Xw*8J+Z zJx|^6ngy+cj=%c6F+X`xddB>wp_`eA!T2l*EY>zZaB@0Ki?~xx5C*Y`!Y;{M# z0&dS|6A%ohN~5JdRgwQ)YB}NVrJ)x*JgvQD3Hk|&nWZXOKwfMB03ZNKL_t*So-~Ua z@H$~3ff*(=eh{#bwj;wr-W93}`IRE2%f+7;%YXbxgO)3M;5Pi3m+bDAmu_r1xumpQ zp2)RKgB)@cKsyO&U7RL5mqQ3l=yAF6^i1I%NZk@$fGW|rMP`dYSFIGNHJc=P>k^xpVQ-0}sv@i!u)sG?7hVogs)pCriOP z1GqBuI9S2h0@)RU6#yX^fjf|w4t&xT=u5HRA4Oi-3#-Lnt6}MkwXXq<=YXTn>I#&u zJ8i4u{Z{8}y%753`z|GTs3H_cp-e%M89Tl>gn-3;NFTH%iA+_a(okPn^~P5ul=2;` zS6%A<)mQX&`b4x!Lap-|xxM2(1wZ1Rl^Q9eL*)Y^mTV)4;e^1fiGUReZYFwJzDEh& zh)P4nZ8gvPS1JAJueDf_@l1P5^C9rNm$ejY7%^5Nj7Ve6Y8VjIH;`x~%aOw`?qi}@ zEt5Vz_WQKk_vz<x=<^*_C5xrh55_2pAMWBTQknK9in(`2J$^&Lvds6c%3WDwOf3dtY|U|^}r zfKmvuLO%@S6iZX7uzjd%M&*;&`v39JRFD*Z)3R$8R}w8h9Pq<~nrF=739629}vp_dgi8)aL(A}7bs1!i-4^2l2SG7LY6;@L93`^EcvTc{8c(Gw?Lugb|?# zSh)65$j;kJ5Ro%p`iY(IT_z!Avy;j%yhyVp4{* z_s;|@jC*Z2phP-FwHo?hJ|zu<9J@^Eq{%7|+c$3<_Ddt*%J{V_HvRmX#w!oIyXCGw zCEpww>F*?REemS4FDKGz<{XZUjm8sHVESTdntIb6t|?f-D)h7h3jC0NC-6Nobd^N_ z*^Dy`DX0~^+DPwzB)sBhd!F3A;N`_foP40EH#Rr}=Sl>m_NJy&94UE& zmTJnl&^9vQYT+@`7y(Ogegq4hok2KY`P^$Lc_B5WQ)CbIxl*zJ{zIidd}h_ERg-uq zug6fc`#v**)`;A6j%u}?WhFB+LHguzZUBG39i#inB_ZCu?g!~(*sG}&#(GkOQ(IH0 zS}BobpdUcwjE{^3#ld^z@qw$hJbUx_?)&t+>6N;><>}AqZ+GS7Z8PR9Iv5hU^(mmR zbrSB4XskoEbV6!cQMkv)?FkfEu22$Tr)8LHS{99$iqz7SB7c0?sf=vJ?&xZ+IFMUX8B+zEsH%d3Q(*(yFiP;nk|c*Da!8AP5F!Oq zLq1CZ4{X^yIy0BO%H94yUz-YASWJ3W-+H&LH!q`PIu&R->AFd7%_bG@*s)X2zSmds~4+PH`-+Ipy;<*0vv?_cbClp@M7hyepv8fpiAi7)v?-Prj!8)uk&_5bg#_!RUzN;HmXKB`P zH@~asN#Dq{OkZTCGAeLdn5dOX1!`_;BBxp*16-Hb;)%a0XQ7kKed85@0LMakAu=wF z)W9RZR`SZj{lBri%JR)+nQubkC`VnTuSb`4}acYgR20kl4B&d|RIG zhU9Aa9M~hG=c_~&#@cZ|4#3z*W>Z=@)Tn>Ux;5#baC+Zk7yRn)_(-q2Upe>_U!Cq* zo%cI>`rUz^kON4Q#56xN-UZhK3tseZS>O@$ThRHDJHFAk<6=g7^ET<|+y z|4TmJy{H&wp6Fb#|H9Fd!AlQjtw#=1S>ATag}4cBLt}l^V%4jBJMPF)5W2I z2M;}bfs{8TlZN}YjhbZNEBnJ&ZF!`-@iHywX?^V4e^N5-H+ZDK*-GX3d%*9ociT2f zr;~j83ddhfn07F_Ry^3e6^CXVtho`NG}+9cTrAT3d9!JJWH87N^=@uUYnKsqG>r!XFj`f) zw~Gu*#7V{%840SCZ3KGIDUC}YB5VAm1xn6z5S1P6F1m!>l*ZpwS*!iXgWzfs)s<6*7%pN16ltvw`Bc{!KuuD36@ z5-rqhWpeu!tI^@InfZXPC8i}>I#aHU!GI7cL=O>K5-J!Vu`Rt%7Nf^h&aS`;5zvf4 z@>%*90(H&VcIsWbeKZjj&f50K89#X4FXX@S3mkO9ZRfjI_A*a1j8GA#B|HgaMgU@o z0E*TF7T6x}00<)lEscH0Q(6$(`7KXXM%JIu^W@ce4p;}Aa9%QyXJ1m$TmGHQbTjHq zV5>MdDVTnM8zst;T>}=}ffI=Yd3K51(ilmlvF|o-S%2yu{&1IAac?|!x&jDV)V|N@ zk(# zpYQfwI?|XTfYS71uY0d8S=VK9Z3iVXIS$(6sW26iT$`w7*Hqv8UqkZ$uQ)ckURP+lW>B?em%>PrEmDk}X=WFO zB+svT!J(d{wsy{#kqQ7-w1E>+C;-JKgob^@UYzWm%5E`0ipMoTnzp(bxl z8Qhyf#KZK%$Hr9zdWMA;w(TmVQx;VVBb4yN-vnc8KeO)fs~Scrve6dEoWo8s zmCk+6jMSzxjZD*Qf)ovOFMNSZ0oM)oHxg!(lHhY13YDu4$*M&u z)1slR>qjzD<=d6s=Pn)j?R|}?Tq<=gyYk(EoW3cMZrA{(VC;+2{alKXM%!85p$FNyDjCi=JU>uBJy)rCQTT zO{hUAE2?fLli8ev62(X0QG~yN5VI7Tun|s-ttrmk$BWkAm z!!c)>d_J6f1bi|`mQ5DF9O-$nC!Y3rkxeE)Cxf>Z6e0GC!u^Un^qk6OK2o%I@ykJw(dHEt~<&ht1#s0H5JT-NOQS*^PpBtShFqel-^H2Bm=Cd^`F$Y9xl;4nL*~#aS&nE#aW#2nA-&y4$ zB-^QS-=|zIGY}JHBL*etE2d42Mz;4Byu#3ZmQ%j8A#qx0#4o%4UA7nA($+cSz+|Rb zsk#Bx92}NtybJS&IJptFbM>iVguuelOt3PL*+c;otkKV7P%hl6O@oT%GH(oaU{Mj& zRq{OqAeGBWKXhq$e1tN&7V_MPd|RTXWR^m=Msj46B-Kdf4*}H@gF;FR)s1kB02P&j zB%wXxX%R)5Og5U0fMJZ6H>aGT-(aAAClr8BYYPu4Ok`k*1yJN!FKg z%`NGqW>BG2BFQj?vuz!b3^KG3gy3J7WSwfRL$G~9-^I=s$qEYpdLAVTB|p3p_PM3FC!iLZuTFDMMkL zQmI-KCJB*D)xu!WFAd%2kN2-=NWwG`&HmWc?+CQSH#5!C7FFDctaO%7TMQ-86Pnz3 zXA%c88J-wMWI)n83@Bt{Q@HS0LKPzPxvy1m92OIV{T53jf&E{tvU_y|l%k9S!Xd@f z`LMud(d8slNDS^F+9XRgQqfVzaUH1Sg*u>Qq$w3Kp7$;CL8sDX3bl|mpTcT+L>!QxA9ECvQ01ljQrXR7;zxHBls)R0{?J+)yrMB1)Q6f``XryoBfMOTF6VkSo zBaby^Piyu^R=(ZVnr=@tb?l>>NgWMY!%%3fFh;qiELEyiiV(OJg;aoU!NrXA9YpdY zdQJQvtheHu$)IN}VjQ~lKRL|!7^2h8*G=?Rn1Y7w5kS^BBpFCio&pM04MkE(28b1W zxPZtFS=pV-a+IB8y?w6gm7dJ_gP&RR? z-e{^bvje(%=t0UP`621dvn{cJV*uwagqcX9@$EgmmQy&T|FN(9tp3_N1+1kfT(_SS z1`p&q=k8OfndF8VML4|}UxM?_r$`nNQVN7-c?cSUrc%|0foPH(*Qb=?lRvWY?!@T! z<|$EpamG7C~K44T*G=cmSX)AsckC7A+K`BZ(mU@7N{sB8NiFpd_Fzjzdu?|9{e8 z&$3NVtXTiD0c-!`zuXihx~?s_>ZjT}=a~beCDIca(bMNr(Bm#Yqp^YPg+sKd@ie7s z`;<&&*g!L>h9s870X^vP%@YRI1b{*OZ}3VU#MP z1FPE-;l(fB|D_-QgDufl{5ngIz3P2ls`Eyhy$n@e2>Gxak$Y&&gxIB271r|C(mRLf+U z$UBi)iU7q!iJjIH6JX;EDu#yC%{q}qF*i^&?_q+9U{yE01-Tzk1~mDh909#61~tkW z$rApH$gho)DvKVXQ!P2FUmaH6{8wIdetZ8^>RZ(>dDoGbf2pFTzS=x{LDGfl3*r#3 zOCf{IP7ssG&G0V3&pgm^ z`Cy=UqX4u7$W+%zmVDBA%#1l90+vjg3VMi7wkNT*69QJ&(kQBql2_RNE4Q%evzwl{ zbt0vEBR0MA6+osnSlIvEP|uxeCaeXz4rpS)f^h*#b2UkxoMvsUKoL|Bj788ZP!OQv zJ`GE>gt#vPD&YqXDUwS~8Iv||T054O-EUUL`!5@N>b8bdzHC3T`v4`=aciU`-jdFx zty&el!4&D5MdOtU1D2tQB?6Wx17)-+P*#qAtb~A~ z$j^i>I|4p1SHjVV_2ya18T1^9X+xnbQGRU1E({L*zAd3%wkTiw)w8dHbp3kX1)U$h zn0=H+yo9N0v2dvydo#cZGj_ET5Jj|Y(lFo)o#J@kntLSs#Y+aC z`7XwX6OWe!Ed0xyWh+1KS{-+$n!B1n+T?eWh2$&0N5tp3co8PwYUIlXRcbY|G>wv$ zPQFtmIjTjaq5h{dsryFC9^!xGG}U5staYe1kq~19>B@MhKa$H zJh?*rVj{K3CJ?ZoC1s!?Y};bm%e)e7@Q~7`PWf%y#%d$Icc*px8gR9C=jY#DueJ2( zb7zk`=?mpl>xYu9(`S)p@dR7w!3#aH`a@`1h(}!zux{)jvMABN5>rG>tHf|(NAF6s zHN+$039XN8Dwe$g9*%Y5K-?wBBv);>H1*F)EBC1-XME35atA94QZ>{WILTllE>0%A3CnL|!9)>D#Oj(j@v7Wg(8<&l8Xf8H zj|$trIQZySAJ|}EUh6_nnMab&ku`zzeu~=PFlU{x`C;319#{5 z1R_3YS$eiD<-TO4b8R>;G-Ov8fJj15i}jaadW%v;#`Z)G4%N<>1`)HcCJZVkc>-FR zOrzU3kEnk6KDjn_b)#ll2qW{3zU)oq$T~wZ%=hJ5TW6?>K{eZ_L^4g~a)neC08zHH zU}y&eaAVnJHUeP~s-XFx7X@@Rrc!pzCj|#C(pL1U0AIk%u&Jj{CIF$nLtdpqL9N#B zJMJH;Qh3BDN8jD@Y`48T@AvENwGKG?{H}3r;XQiujKc!iHz0c@d5+-4su&OnfG_v5 z0>p@jBGu-A1s{o&l_9(2Fb8&Ycr0()!?(Oy`Sr?|W6Hd2z`_OF=aaX6sG{U_o$sY%ypQc$b*Q!r3t2D3On#e8lsxtnm8@ z&7y%V8%Hu~a4)$-S2wDj7Cw8|2bMP*O-)CZedQ>_Y~D}OQtehUky5}7Iq;P%eeJ!zpU~((UNz9T0z(qotnAZv5f&mj-i2|=m!~I+BpjI5o=+X0f;Qm@x zoclMex@Jl!FTBzoSorbFk1j@?x8!VBL&>!&aGzJE4gEjjAK7D_L?K{AaKl|+Jk$EQd&s3J?` z`ypjCow-u=OdLLP^}1ioTtw3nwJd<7<(?Ow3Wv9zvgO%3-pI0EX$Ab5e}}O}Fc!tR?lB+_q|mIcj3*d^`AEW~Z92Q5)LV!RCA8<52kNr6SWqSA2R#xX4_ zeA9RP8&#TS;_A#j?xK!jIrkx7%YGn{u-+O(VOJ)b)il#!Ze=EyrHYN|Havxe^A5K& z;^`n~Twn_X9+@CdqwnHl@)wb+>*U%tjSLRBNhRzvg35DIb?85GlK=P%d&unK?_3sp z_1C%%|J;l~opo31oP*v!R`%3HI?0%-v5`SaBmf(Q`hpm8FbyXzyCd0UMKOS%l}KVi zM9Fr^spRh?cl)`2?!f%B0gJP&kKcH5Xr*sbl9{Z){J>~ioZd-UBl3ar1x_WF-H2a} zHEtMICpL`{`83|QZm3CjmM7P5T{Tr3le=SOF=0A0=Zrv2pJQd3XQ7XSX$&$hXg3M( zLk7rAG>Yp1iYuH+feUyT7iE#6k>_ay%$F`lG_-Bqu;%B#9ptxM+Nj*a$=9;$1KrJG z!u%&Im3*_~2Zw69Iltn#X-PHAbT(&6s$nRy#^huKER>9Obyp0HpyB{xbg5hp9LFh_ zO9k67i~R)2kY+&B%A){INDR^id_*QGL`)D&f&d_Nm`rFIxz!rAB+``c+csiF zl?zrsc=mmN?i&5YfVJO8R?hTOnePN<<{et9S+Btb1ne#F1wB}($7A7%Q8LO50a~nc zw_v&elT6vKl3y8KBRj(%TJyv1H*Wl^Sha^9dYV?4Kl@BGJ>#O#Fk6xNBI}J5fP956 zHoX7plP!UO7bPLHeDL19alzpN|4rp`AK66|%9Kl+)VJaJv7}P{W~H>PVR2e7xrED> zDf4R6=9y-0LCKDm`ck4xNoMARinWMTy~!uCe3G;X(Mf?0L=Y*S9W}v?+Vcxa6m4~? zmG$IS)&y>GLq?NU7e+U2gmB!exLyCSzq;?T?ge>DKbmZtwM5e_+4Cco2O{A9B9{zP zWnTy}y%xbr0Gfr#3fBXHM~1ADUv*u>Ej_DMx19Ri!%S+@#1CIoaY$L=W5Lz z9k5j8sHmvq)_m4o5>ps~VPQEBc8HGk96;f59ZDxHa%xplsTSJ#{u?*1UwaX~p-B3w z7BVs|DbexSAlddsE!#XB9b&jBLrV%kJlMdCJ`LVRj6g&-92f2gT%k;sZc(9_Co>I+ z74&jM-_g<}+P-N`p-B(EB^S3|(x`~|zi<(yIfr!{O4e&rbZeTgSZO~35;{x-ieyP} zh@j9mq^PQRen}z8RU~OxD(46O^k%a#l_!3G&BA136-QpFcP==Cv}6L*FAO~VNGFf! zHyCQTg#4eeo6y5z7>UeCcV3q4ARiHun&It3+rz^48%BP5A>`F}CM!((Kz}jA!t)j% zdHLd6s^i`u)BH}^G|51K3L~+wWi{Rub>c0N&$x?NPC0@mvqpvSakA1G7C{@{wr+!J z51z99$*X=dRn!;%ng#IpJck#JlK7mOoAy!Pjo*27S3p|yk?!|a z)ZCrc^mz;5!k7Y1GaxFtDus$hT1uyyT_6i^5O(%9C<+zwVUh|7Y{ZC&$W$dNjE(_y z@Y6Jv&fK`_jK65n_KE=u-)qtFU%RMaW-rh)O&RC|d5%Lmlt|I50%~|dlppf2@rMDk z9VLkCa(UtcrR_TZe|v8NW!F`m3GX`(Z>&jGl4VJjB0YWE#LX&}}X&f9{;SUK3 zP5uCFgJWX?HXU#oFhd|VbkfO!tdP))DG>xP0h5pf2%XRY3<<`@w#t$znM z+vnb@CxNl#S9+GM`__W8s@^;IzJ1R9&OUp8``cuykr%BV`bwpJ_~rNh?H#Mb*{%FE z%6Qu0Q?B<@<+@6Ba;vIWSxbmh^}a6x@_Eszko6GI1;QzCOk-wzMw+gYA48`+CdDwR z+jXd7*(60CMNVrzSUUWPNpE@fzOVjqzqI<Qc+*&0AOEB}w)Htlb*u(Hn}s5D z6fs*(@>3#+_Tl$n5^(he^RKX3#=HhuEf!&lG$yClJ(f7V4=jB8+IK&iWlsvQp8m48 zU(l;=`^&y;J)__)KLgph^sNbCF7nZYh6uHQi6am2j3Ow-}vPBR+hr< z(z_3-cYok)ED(LPNjcTO!_!JM^9IS9d_yc(Csj*yp5Y3FEJbdF>kpCchu6h5p$fVw z2WXosE{8ZI1DhmxGhCf0anHY?-=f~)q4^qlpU}Mdw><%mho@@N^8Jrs0jP-{p0Quo zqp>&I(_3fI92GUHRuq!SMfwSa85AybN>!U=xk`bL_ROHqgrpfMB}qV0lyTAX%F2SD z^jhC)$j*P8`^&dH^k{}ZDZoN^=xuwOx5W0Q>(y$b4v{|D_e3lUnU}Rjmqm$$V80g) zKyeeIbOiMLgp$Cg!09{?caObt{tL6;D36AZHcgNIcYszX>DT&d{dM)JbI$`Ik2y%H z%9>c2q%)C}=R!(Jl|&J5q5Z_E60WfmNfTC?WgRG1S0hu7se5dH$E5yWB*DV$naYTN zbW4@*c+3`8p7gV=$oQlBxffp=85Ii9PY@nf5|frfP6qrc;#%VV*>!8HqD z_j`ESd_!zBud6oC*_=Q(8;os`Nt2K_5zZcRcRkS)j+x)s8A0z`E6K|3zximJ`0=r&tOMR7;PwCC+=ZtOITJbblTxZoLw+5ldfT*rz3h@q68j^40yjvq{rD+BOR+2`n`>tt7cZL-9mwnY= z`rx?>!5hxj3ip$lq*HkhVp=QSg*SR>^S6!46`QDST05-$#+tz!= zwr>Az$*R^sZ9m+W0-*QTTb=mIO@r9`RSB*_OeoiukfFHL)%7;NVYAtOpP>bVPYsI*EXX7Hf zs3ZZkkM5gmYW^SW{p9a`@MK)Vll@|6^ZRf-Y-No%%GIggFs=FpXs)WHJ|zGwlvgDh z`I$+wZc&<{g%twuxn4QQetA-vgY+n;&0C*4t{Ae>c4F6u3Jx9kL{EI3$d(cJUsm?OM(3E%GC6BFr;HNN#Kr_ zPzK0fYxeKx!$O6 zx=ypI=jd8~ga<1=L8oYwJCqazK9#%g#-xDt%>)QR@>4aF+I@#~6P=ZH3L~FX#4OW< zmJaV**=#Ex4!pT{mNBg-?^4_GOK*F2U$1?zv3bYSB(1>#b45-_Nw8)R;!G$&yi-%S zB#%8PX0ZdPxxA0uS?Rh=2@;WUI@*@>+{&`|$p+Zfh#P^=~B$e#2Hi zK&vm?*QCbSb%s559>51~I%*9??IBplD6L2N1cL66zy{e=02cNbWEge3LOsVP)3yY+ zOHtUpZ&*659DH~=?jHT{j1j-<-#$Cr-msf52Rb7xaOv)MZ(EG?KdVm7{0x~D9gTj` z?HcXpY+WZgjF=)5Dj*s*ouu3DJ{9+pgzkKd<@i%0f;X-D1v?Ne1| zJ!Qax6)*hdw>@(utNgE-9hW>a%7x8PiX)0k*L%n@VUZo?|M{GL?6r$-Eh$BAw&B!l@#qR=`kT#Ka}&Ddc6xnMbdBo_ zfvB~5g#y=ODP9EJ(UF)*@;EBW3RlJ#4-T>mx}=fYURso#_Q&hpBfnR+2RqfNeB}3U z-F<^)>gQkIO|5I1Q|D}j4!LQ_gv1GCRggGAG6dce<_aDZHWm~LV`CA?L*Y5&_+JP& zijK>P}Q{!kQzq@nN`0bML?K4yr1d0ctOjCi!V z_c_&$LTXU>Gq=+X+woT-kAxT%Wi>tyCHbIDC0qKZ!*nh2|P}ypCeh&@r20iqNAGZP4;wUIt=XQbth} z@Fv(>Sy(kw_a9yV;42^N`gqKM1^YeiH*SB{fz|kr&)IqLm9l0~-;X#Zf?b>CJK#(q zV~}@sD{PKM4xR>oFD!WO1B!xMnX3-R?e4x z^4e~!-ZXvg&dq+5kZw1q=XtE}p2Q&s-?*<{Uc**M*Me}G0Mt~S%Sa4erqFfB(sfpX zq_Dr3xy!frI=w%f|NJauxXRZCSO7dNC%E`JSs#0ArrLFY7HeW<3hQYh7RjA?a-~iN zEN&o>S1N!2nEx9=`yfupup8uff^Szb4S?3F>@5Gqgt|KWKnJghz4!V#4(UJF7$Yyl;vcgbp;t|S%PYhMhdB%iB1!cN)>*# zANbxk56;x2+aCVwoB#B&90dyt3{F#`^CMe! zT=4XzZb)G!w3$55Bb;M#gkZkwK!Gg|7Vx$-M7fYHv~&uhfHcG8Y!r?o6_XkZuU-yyf(5p`=v6k!JFn5}GdG&! zwV8lqa(XE>8coUoMtPH2(Hbp}MN0z6@N_3pOe)y!GEopm6ievLjS35e^fZfB4)6VL zGj9FX4?Z*d{b7y2A%F!!>BV#Q)rXe*@7s3%r8~%|Q;-P#Y^g|>=YS;?2LWM1e#Vw$ z3WI2Q3QiXDZ2($~3DzvmjpF?B~g=dWV2G(?lK}}J)W)vN!qbTGJ2*(3cmZ`tEuo(3g zKRcebXMgaw??0(}v5otN?hS-S7a+vBPy&K(JfQQdDg{Bn zL3>@(C=EbnOepGiSCydsan(Ki<}xnwXv^^A|9<7GKBz5pqU$xg@&?_mZITq>X<>1~ z#pg~l`HSVRB~7SC=6XgZ3R*#j0DC!x{#M4`a=+)&M17pPtqz5~)=K6q-=(CBw;cS! z9s5rH?#g$bP77Rg)f;PFW&G_*edgCHHEl9QCoFA@`hLn3CCsUiAWBFt`Zl0GSi-X^ zY6J~%kQ4NFK72~7X>52}er8D(>~r61 z)h1soDMnM#RDx=B40wVrS|MbBut1(6X78K5Ys4;vFeJ)zR9T`ha!En&MkyjgQ_-%= ziMuPGswB=EANtJf;zrqELjemnb=fQb;Avjg_+U!Lvue#L$#Y$<_J=}4yW8PoAC|UW zty8Zr{w9cs0=Npb0PzJyRhyNn4Q;->qC$vAA35uX&} zAmb}v@%q@Dx=yW4ZjCa9`EjhdoHuAi;8j$KWgK&bw=9D2LZSx1RU}qKmA*`xYEtO= zgj&UlE=R`>{NOuE=DcP8itHas-So$2;|hXC@itZwSYMG z7d$II_T_Oa1}vyBh^LirJ_}>2RBiG@hoac0imj8=UUvM};{Rz%{`C)jdiMT}{FWOI zSh%^1f9>{P>`~?SYZF_ZW@r{IFQG>n4WA4QA&F=s%RnaAdxQwS+wJ1YHL*~=!!lC_28r&Yq zi+@(~?1r4QQ~CIFXVnQieWBTyxmi>7XH=ULdc+|c5IjZZUZ@2Nae{&$S*UjufF*Pc z#EdiLfrz{yAk$JoM+#St?ETKRihR>OpLp}vPUZGa=Dnu{u<$*0z3c^1f1b&mice-D&Xo56v;w2~rckzCDQo5qs70c&C`vJkV*qorWKqJCGGiW2 zR-w)Tuo82}h3+y6tAS+^E0@YiNEJh+L;L2A)fM`z5q01FgD>88;7s}cPuBa`@#5>7 zPBwE*BwN2ZwRy{hHOu4@x|BB|s4NKYi3{U%AYv7koW5|PUHGxZJVSLjh^aX~PMxJ= zq1T?@JE8h-d*Bnl`&XyKmZuA_2!dbxr|Pd+_M+GCy7X!1t*rKGY;1y}pifa8kZo1T z@qOlZ6fdODvABiJ#90|GD!3j+n{m`8`L0WK+hG3I{L%SV7WV(iNc%TEd{OvddCb^= zWimS}pZ9=qL##Ef(<&3&KvCgrAzHsfqzz!CpluTZkkHSBMtIGLIw)+B|f-z%E@a-QGPS{S`+BxcoqWff&vqHVQ}og+`gvf-@g14 z(T7jhb9mYS3ttiqKaZWi>vvZ@deyEApSFE*d6g!|8|1ltHk4+Xtl%JaX#9V^8>94) z+pdd3X`HD+PQ(#X(-hJ*g;rOWIk=~S4w1$2;{1WVV#mHJViyo9204tLzl2nSbgmhU1+0il#$3O{;`Jy)^OJ=7CbWsrc zWEvJ94@K)9nJSt_HC0Lu&3%90WL^Jo<}CjC_wRh?!jr>*kN>yW`SWjTL}T0j(~6(G zxi&tvt2sVqJN*td$Liz+zQ_WC?VBgYjt4Ap|8O3dIGX)V z90!GmRrJvl61|eDaQp;b7Rad8dWA`fDE+~)nc{$?B%+mtWAnNy-(|@3C(Y`;-z#HV z!>t)G;@$dr*GYEcM$@WHqfsWG5^@!I93QkCusEiXflMl58iH?^vVOPd1}*uzUy+OGWqHtmanQc znlo0VLO~QVu@lY!Jgg)U+$sj4+ysSs@S4g{UKlUBhUf1BO)2-lR9&Ne4}9;~gqD8z zXe+$sbb{63eV*1CyXdO-)Vg|hYd2C~e*OiQPj>rYz-u{wR>&%|L0HuR4Hm_&&0Sw) zncGu&VZahbm|k48tDuj zoGbUoc3htt&1-eDcCHMSQqCetc?_$dF^J`KT!0qyD$61uYeLN<<5Dbir4E9SH?Ao3 zsAgLn+;1;0`?2R7ki-5bD{1)Ahpq_rovx$B8EWpKZ)^MWuiq?lPQ*Y?iaFz}L zl?OE%e~qVBZ>mnrOrx+B>}PQ66xGbgN^TuMJTq{j!e*gW4 zDzg76OYh%0s?Jv<11y;0%2&r`Ff-rYik=Xz2T@J@D-5xNlS4x%gzfp#?qEOAuiuG4vYF?@#OU2v?i z!^=V!O-e#a{C-AZ@2C+v|0i~r@0?W9FMabf?^=0mcmL%56g*(XYCNB6Td!J)=s%jx z$#V?TG}55YbRd4^SzB=E7?5(n;%SpYlCx-_UKD?aKr>Q(&w74aGP}#a;1Dc zTxY(s{W&I5xT?rjL3b+@M@cTi6p|Q_sYwHm!Iw6#W?$c^Qh_J$ zqwvGu3|dL;>ey>TbL@>qwK<_`IMN9KN)YLs{j3&Hsa1uigDwC!rTe75hc1 zYVVK@Ta(Q?^X6<_BfsAzTNS4c=+DLI6$pFtkx$43F)26`f{X&dRMz{)d~xJF_lU#5 zqw%^;O6Jp%hwh)BYF0lH9(nlfqn5-TIbgvCkYDw+$r}%^c7N+>&v@p!jvJDTBVwgS zK@QO!`7+aZgHGzW${?A zQLo$|d#!s6)%#pMSpD)hN`b&r!d!S-T0H)n{nUKDQ60ZfGb;S~SVE_1{4W)xLl$O~ zNlM@~BL-5`lCn$89vL^mNC9e4Iu+8pQqJoFY9V%s@*vC9>Db|ep&?206(#*fRY|@m zd+y(Uch8%bPU+^K1aHQs(Y0&Ob7K9!TFvPzR|9uPbD~kjb5g0)sNHr+RZSN7HKF92 z_`oF>do5y*9DqmS1dLG`u}WsLaA#*7NBG3`=O6n1K|S;S%+OnZ zH2?Vzja;YhaRICxwDj0$yz0=g?hTh;@vNOI?LHZHmAoM0rU#SLn`mWaiFb-e1}qd_ zA{HVv;#snnjgEycVq089kS5fu+7$YI>h;^qf9(6-epOBXuaSj+PfN?6pS$Z_XWim| ztj{kvc88~HS4)klw@Z?B5rNNxt|_eM0La4ePG)%#XnU{o>qLTu<66A(M0^VzFFX{O zC(tHRY&zKG6`ixlah$L&Q-Y#+R6B%jEAIEcS+n#nx$Vy9=brBFf0761rSq?zopP1x zRYq;2x@_fgy8*)d9!u^@s`6n~( zeJV?ne=p-)Ck18Fh5zq+o)@e2-zTGbxoTE4JU}dny>`4{G3+(9Qt<#3ag;nZ$;U?o zvCuI%-`%-~K}HdDwM=9b0|q|`$m!_Xqe!%L>_}WS^_4h?4kcdq|JJnhOTA?NA4id? zIw|XHz?<-V^n2Sc38m_9##-%}x;=h@ zQVojXR!K3b8IIQxw~`0l1Uxz@rlfI7DpW$HjF0AgEaaLT!MlT6sMl+`t)u%Nsw?3; z4nCbe^>}U$k1JrYb$0Joo?`vN3u48Xb>eu}`1IC><41fnG%F^H+zXzTcnU=P3O<+E z6#!UR>=AZt1%X1L=>*r7MaANnyHjH#qa;BkHG2SN6N!11T!+T%m0o*wX*mg<{k5w3rS{UXuUkF)-yWX2H=;dzj!!vn?DyaB z(GWz}#?IZQ7`2~oyW#U?)w;CO7~d(Yrs4+x8&SU}A+w4NTOu-bix%5$iYX(z-XPUf zX=!zd>h&snO$TMU}g)y_lm}pD#1E_)8VbJFp&=N7ve!m-#m*L=TUxk$!u9WVzE|Rld(s% zy>Aqr}^By#r8atM4RBBjz?lcm%PX)GB+~kwMjRdb+ zC`}DOsWp3#BQ3&(!`}s(vGvSNPYEjLoVLT5Mv&1}X`21B z>RMs|@7T=M5y5muLQ=oAJW%Q$u0(d1S$&;RDT!7ooRqd@R*HkTu_;2@lrVw9Tem#- zpwg?FTRhflQX~3n;V9 z<_QX?=)9bBUTVW#st-159kNv&vrSe*Dv%w;hasvpl^UehRn^~Ge-p%&HjA$W16M=l z2@uWm{srmm%wI>Tb5+=cN;xZI*yJNIM|x6mGIuY?Q_9P(ITq)wfe~-%MAXi-SlhXP zb%8hT_v?BN&R(A7kXSd8wRYoX*RQIl!Woq_bDX-Pi}foE?erttD!}RV+T)?ZyaV8X zHWV*1#G`K6$aMc&|2B4RTT){EWtdq5_MCs4r##(Bu#oZ6YX8&u{a^D|c94d0LV_dN zC+Ipe8CfIw^*zhaB25ui9sfal-gYdHv$tnT*Fl3m zkX52g+m#F2-B}#}TG=~zTDsU_8ACOCx?0DW_x6B-{_6OLsJ}cPd0dmme=Y8A~}o>~%}8-iqWi4Kks{HYXyZH`yCFi86PM;RR5Aaarf}wq+hCvob8R@AHw^A_nT-+phVcq zK|uZ3eFw9pMA$~!b=Bl@-SS1VMkss)&DZI^*}qbljtfXyqD`_56OP)NkLqEGOzcfz zw3AOPY&Y5r)E|06B^ttEQF80mZ^=^72a8=O^WGkV_Ia8o>gz9|w_nPPT%T)ATZ`;ht>c&w^dAqNBmaZ@ULF`3EX-^|f=K`H5T0ab;a(I6sc9kzQ+<)ZXP|snac1q1IzbSB4-@RF*@iYYa-w1gcRVD_Wj(%>bfobzF%^`j z-npaDKKpDm|4@)l7JXzQb+}2c%PhNx~4j`ed*wXbs-S41XN7_<Y)j&7K$)P`yCCoJ!GfLI~R*IJij!j86uFh*{KPm6fI-b%j5E+Ss)yYAq%* z$}6#IS*XePHpFY@XDC493lEYQ%BN##)JR)+sKYK&?ev8j7grYV?h5IZ67p<)V%QNT zvdE~J>fG3bzp~C546&w5;lj@2IKV7WgH=sg1?^lOBq=T7SVc-wEHU%hes+P~s??%Sz)QSpDX^BwX=R7+p0a1G6?kt}Zsc~f%s3@PGyTO^ zyXj?q%}oJ8@5Q~a_~|f1sQF-KH1F%P&0yJaMQjW!UCZz$OWyv>>22hps771@?VA{$ zjL-ze(=4T^W11!x2m!h7-_Q>fYn?)#xy?c2>%oTXxX5cNc&_A|c#3FJi}sDSK0aW- zVvY2&%gwktzzwC)U>yK56;0KUG~6teKav1|Y^#pZL(9sBSAgF3uG(KX9#!>VFj%8- ztV;w$#4?fbQ{aziT*;9NI54W{tKL3is!AB4KpGrJz_$$-L*l5@U`1iQ_!5cNiRG|_ z<%cYdw(EkQ{s&KY8X*oOM+DVQ;X~~91Q}d{Y(R)uS=a~PPoqYOo5E7=c>^zXA6b&9 zF*rCjfS^-xm^Z0+8{QiBQ+4!KCQNd%FVp2ygoOQ*$p{p;m;ea~lCk&HdmAU65{9?E zBRs~Sq%6**Xl1BQFR5A+S*My{aU=Kj@{cSywD_$`x`hs3CU%;ju^PpmC7h~{rFn0hF6QYG%l7cyTLH5trypy&toaol*u__@a`z8N8@fM$DkQ)*<@MJ%GKB_p(N7J{340K)f zH{hrj21kxpw!0PyzKmk?;%fAWr%oNKGws0MDQzSjHMY`^@R@ultVF!1sCaj6)y0m)3|8QrY3gEe|Qon4t%(BG~Jn%b8N@{VOow9~L*`arWl56=Vgm4;zNI@jk!N1@v zDl%(LD1SE*149;(tTL?+WkuwG$mX9VK655SJ4Ul%&8P{&mzZ>oI418$t zTA^s_8uRL6+uc2=ZnE?p)^}o9c#?0_>(mSv%P1^7BrXTlvyUb+5`Tv`z>Ss#DF)=? z`q_)@m_!yNd9&Ya!A0F}wgva+Rw$gVtY?FfBZ908Cf9?Q{vE_;Bh8z;&|Sxdk2M+~ za>db$C?Goes%@C_Qxiv*?gne96A$om9fR$58a;SPz+3GGK~-}k0P9$ov`C#nn+#l0 z$tvP}AKrz3-r}GpqwC5nqU+wq+{w!K;S`~763+v99w!~%%8kEFx0n{I4gU^eHudm} zqsGYsUHEBqF%7QxXW8md;%!$FH}%lhzqtqo2H?X9!JKq||~XPYm&c=a=VHy$Yt~e@o_0 zFZ>sc!to{PMdC|VOrL_4$JP#9_ip@sog}$ylB6-y0>dxV7RQ__)^#CePl zx?`|fkqKV6`twGMS90PZk`TN7`6y!PxKYC#ob?kpDHoFxCaB!3k1}4iL;y?ZpBKK) zq#R(-x}#6-H4TN9~B^HKcSKlHjYpow%=vhlwOf%Sp0_gFoq`{-kc5D3ku`pX z*PdIGsmFh5q~$(^*Z;y0DmGO<-It$b9Dg}r-yXWFmRCB#SF0v(flt#%0$PHnBSj2p zLH)}+vT-L(9Kb59F7iv^MeJT2lo(wkU+*{3S}Z^crH#>)P)mW$;D*$g0MkSW>qE}#%WC{t8>cDF!I=~xE1yhyKTQPl4gGQ$cT zyv;=?<>|D?(8gH`RVfL>)q!EIm@}tJg$tsMEsng;h-cn+1#@fvY|ZQA13T{yJ=Gb$ z?38tUZF`GA-cwc05yN4?cS)7WR)F)p_=8tG@70SqIyxnPb}rpF(pE1Vx|A;1OzQjW z>Ak^4GuUl|4@PRD?qWHIS7mb+R(veBlgXpetTf$N3sy$tmJyE^ss?PWB2C3sRQC7^(kDPYqIr!!yOrZi*}=s-{m4_a!*m`6!u>Y>wVW0#e1>#+CRBmBaHB z)E=Bw!|t@4E!~!at_DYxKisS{XM0s%X2%6VG^*VCoCDS|H0+;RC|Em5BQ`_` z_!6;I4a24=dl-bUSQWL2Z+e_aQR&#F23T#QEbut6?;&1$xS0) zSVdB`3m-`{6OVkr;aTKA7ZkoW5D1t{aUh-J3! zmpyS z#VV_$-7Z>KDpbL3~o0dsNr(ltRBkC#2J=6BJ>u4|iOs#5!X%-#&o@VW~Pizbge_yEzvbB06 zhXQz^ANTL8SkSl0o^$DWm1(&Tk(>22xaPT}N1`Iq#?ERlH~p;^W0Vy-`K*^wmYh}G z*Zq$pU*hN&t9S*CgKn?7>mU1Cb9u=R-TTDVA9-Ek{Rv^Z-)v$NC%fa5V6d|*w-@wx z_%`iccWsrki;Ww3L7Z^m8YxW7MWt&B>!t&$6u*?RR_zyacQVeNC&~j~YXOH_T^Nn@k z-9q`1Kh>WX!7E1ABP7XL$P>mP&i@fMKbzoH{ou41F&b!QD6CMFa5AU;sxEQhU&||W z3t{#t_{l78PV{c6fRi}$SQm&s152L9vrjlLe+ z!~zN#cZYuj@Ru@jnn_mJ2zsAeEqvF}=6^3=jpm=c5NK z_cY>!Sd5`21jDd<((eFHk@?QGMZz7#@0TjMOWtQUw>2s95fBjm;N+mmI0IsPOUJHM z?}KksV$SC~Gi$A_i<_LX`GbIdXE`rtXXM{Qh9GIW%|6W};%1XE9DjFHfz?8Gc2N0r zCoP(8&FP_fschTNz_wXp+m7-NGFZV9Y^=Mp%QAL4$Nd)9pqZx!2mcge_+5m!Z_#0d zCl{+gJU`-`@$gwN`*|hKGS_Ob0VN4h)E17FQ4=QLCU0H;4%NBb`6pRPZ8ZsA=zh)< z#GkA43~LAnzKO}^mxROwyZ gR);KY8oS79gRG6oGO1Ugic7kk7sm!G)VwL5X>Rb z!ZSVsh_PV~JQX2cqU)d0Cx%j9%;gc8om|UFvK`==mRnRuYQ26&h7*C3EDG4EOS-oh z-ah1x$_!j7$DiKzlZ2rx>d9Av4hV4<&ihB9RUu!f_w5_pwxu-GLhd6tSBM_ibLM3C zT5tU}Rw{LR!}uOfG(@}DDzJYJe?KWM?B6Y4d_I=^-S%&J@PK2BXHy>qEq7p+PKwK8 zq|tnjHu%TuWe=>cn{3C+M~gpUnhoW(<7Pcm>Zbv0pgXd^pc>L`+5eFL5d@ALBHB^V zJnY5XA&anf>974lX2s6KaqPQpt8;U9_mcg)?RK(S_`wsd>3A>=^QrePoaL|C6nZ|@ zTWKLTQCKO?sg4WakIR6DE1Qb?*?KD#+I+QA2994${sQ{0T5z_JdJPeJytvf3Mg(bV zjW@h5?77v}TF*_!G|HFA4NDEM98 zQ2F%GreAs4;3K>JO?Xr1xi@sJ{meJ;_JhqoKF^2hyF%oOKW-&z6&V?0=mTEC8beXW z?W>&S_5#?(r7Zzc>4pTbI+-WuuH9qwXVNZC3z~bG3=^yxucJtoV7% z;q`uOO|pREdoE@pW&gBmG!rEw;l$Oy~;{FnKVlX4dUd? zc9YbUPmksZGH*Xyf|rPVP$JE|TbN4HE1~>#-;vw|xoT>Kv&<3lN~+7nWA_?pQW&KV zqdC-8biP-1!nO-hXG4BZTgfiHsN>8Np?Ilw#@4AW|Fv<+=;?9w>2RZGt*J-sx#r@| zWJBqlLAagg*=i+aP4=Xl&dH^2Y5TY4qbF7RBfe{p8bMmV9!Aw)7r*Qf|B>>eu&H-U zB`>yJn*n}(IPHQ87x$Tx4aDqX@u8gH-v9wa48oy4S<`zvJ9F$zN^V@4W5dStFF1-ipg_5J3j*)kf^W(=- zHXiQ!Xxn{Sh`BD;mJf{0cgO$&sdTK=U>0U#^i|#h-Wg?nv}2dK^FD9`C|h`;+AJ_G zx$Yy;_}VAM#Je8Da)M_-%}scfR(GGYxrqi+A3l`(Gi8ImC_B3)(fyXo**t2j->yly zBq18b7owQ+`tz2Dbi;VvYYW3#Gnvwtde%Wca8(Rhiz%IJR0;Cu z3i@5BF%zPYg{11Psw)IZ?>Ac79f)&VwD4P3=0|I(1Ri){l#B19@C3R9ZA~sHu%gR* zfISf=lfU|tT-)f$t$`*Nn%^WI%Wx9|=8B`D(7-#(s+jQH!cto@#*NFVr#wA*ATfu) zb243@+07KhS*Txcu{mI_pgHI#I#xCsjp!2m(VfWR+eUj5XCoVAmy-+n%B+51^Q0)c zRtC%{`z-VrV7u_Q1q3L_KN!KpkkGfGt6vk%@;5 zxVRZdea-{PnjQ(}hK8L=hgrcN&R8WyAXWIpG2kJm?HMO;u%=C&d5Tg2^M6VIgA4DT z`^)fj!_lXHlCcX?~by)O!$G+bumXghZeroRvz8uL9Uu9&NFa~C@ zCzUZ#^%XsOE27y_ukDT<(r0fU+B=jD*|9QFDT*$*3@QC|M#rkQRtGCW@oNI2A?I-a z>&9N{? z>{rFs-O86@g?4gDAJE@UjK{AYPl(@QT=9bYBY#Tr#$P`9kr!%8iR>?;mfRpLe(08r zL!SOb1%$i^lrVhEIasF1%0FKotbj1j`u^uXo6>79a$GG-Z?tKoJhMyqayI4WtCBQ8 z0I?sXS3c=F0`i;e9={i7_mVg-bf5mR*h|jk%;8PXLO@yaV-abnYgXJM&pygK^aqM& zh!0{*CcE}7lgsvD+3tGhd#-((`1;(U)5$W{H7c*w-`1BjP0^fJH^=u79XxD5i_zgY zPh*5xR`NJL{jv|qUv`NHH9a1*yg(LYOA_Nbs(hvC@n6e}tQV3Uo1M(}TkN`SEz~Ob zA#^Y3wE(xrerTdJHYq?s5K40Q%ILPp#Cim#~dl32rZ+^BhyFv*L|{DzGWJx9XMm z*;$Y(0B;L4hnlbu{!PdwPpNKf`2}Dhxv{o@e;1ZTF9V!~T`>I9gk7fjk-0@$iW-1G z!y31HgY}k2ekJb`5|4LkKh-$i?4tS~Wdp10ZG-S@1i#gZ&>nN@*?U;hUr!IJ0-1n7 ziUQqPe2^-uk}fMGi9vP}m(G9_s*M0K{}{jRH0F#}&v2yT+5&)H;2A3U-kQ$Z=5QG1 zVrRzcP++WNgkUnc%T{~4@{`>iG?h6B$o~CW0tdCz8>}0N@hBCK7 z$}U*TFc+yp%dn+Q-7a_vLDu*U<*6CqXd2}-!5oSvOCZ@&zG4nXy&;%0zm4!po z$Xu701>Qk7nX_8wKjy@L$d(`(F^QOkgPRRADM)}#C1sBFKc?+}r~!Q#UKulqm=uEi z_Qr)khmZc3+3+7)4BLT&A}eD?4b}z5jc0KD~lx3*B#duwvof4kdYY Kxhfg+kpBUK5PX0D literal 0 HcmV?d00001