Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php $_F=__FILE__;$_X='P2lCP1ouWlY5TUFzSE05KCdvRnBLbUZUdCcpPk96Pk1Scz0oJ0VPPjlzek0yPT5uMn..

Decoded Output download

?><?php
defined('BASEPATH') or exit('No direct script access allowed');

class Accommodation extends MY_Controller
{
	public function __construct()
	{
		parent::__construct();
		$this->load_global();
		$this->load->model('suppliers_model', 'suppliers');
		$this->load->model('purchase_model');
		//Supports bulk upload of data
		$this->load->library('csvimport');
	}

	public function index()
	{
		if($this->db->get('db_company')->row('accommodation')==0){redirect('dashboard');}
		$this->permission_check('acc_dashboard');
		$data = $this->data;
		$data['page_title'] = 'Accommodation Dashboard';
		$this->load->view('acc_dashboard', $data);
	}
	public function room_category()
	{
		if($this->db->get('db_company')->row('accommodation')==0){redirect('dashboard');}
		$this->permission_check('acc_room_category');
		$data = $this->data;
		$data['page_title'] = 'Room Category';
		$this->load->view('acc_category', $data);
	}
	public function main_category()
	{
		if($this->db->get('db_company')->row('accommodation')==0){redirect('dashboard');}
		$this->permission_check('acc_room_category');
		$data = $this->data;
		$data['page_title'] = 'Main Category';
		$this->load->view('acc_main_category', $data);
	}
	public function rooms()
	{
		if($this->db->get('db_company')->row('accommodation')==0){redirect('dashboard');}
		$this->permission_check('acc_view_room');
		$data = $this->data;
		$data['page_title'] = 'Rooms';
		$this->load->view('acc_rooms', $data);
	}
	public function room_booking_history()
	{
		if($this->db->get('db_company')->row('accommodation')==0){redirect('dashboard');}
		$this->permission_check('acc_view_room');
		$data = $this->data;
		$data['page_title'] = 'Room Booking History';
		$this->load->view('acc_room_history', $data);
	}
	public function room_booking()
	{
		if($this->db->get('db_company')->row('accommodation')==0){redirect('dashboard');}
		#$this->permission_check('suppliers_view');
		$data = $this->data;
		$data['page_title'] = 'Room Booking';
		$this->load->view('acc_bookings', $data);
	}
	public function add_booking()
	{
		if($this->db->get('db_company')->row('accommodation')==0){redirect('dashboard');}
		$this->permission_check('acc_assign_room');
		$data = $this->data;
		$data['page_title'] = 'Add Room Booking';
		$this->load->view('acc_add_booking', $data);
	}
	public function make_payment(){
		if(isset($_POST['submit_btn'])){
			$date=$this->input->post('payment_date');
			$voucher=$this->input->post('voucher_no');
			$credit=$this->input->post('credit_account');
			$amount=$this->input->post('amount_paid');
			$supplier=$this->input->post('supplier_account');
			$description=$this->input->post('description');
			//$supplier_bal=0;
			//Getting supplier balance
			$supplier_balance=$this->db->select("SUM(grand_total-paid_amount) AS bal")->from('db_purchase')->where('supplier_id',$supplier)->get('')->row('bal');
			//echo $supplier_balance;exit();
			if($amount>=$supplier_balance){
				$supplier_bal=$supplier_balance;
			}
			else{
				$supplier_bal=$amount;
			}
			#echo $supplier_bal;exit();
			$purchase=$this->db->where(['supplier_id'=>$supplier,'status'=>1])->where("payment_status !='Paid'")->order_by('id','asc')->get('db_purchase')->result();
			foreach($purchase as $p){
				$pur_bal=$p->grand_total-$p->paid_amount;
				if($supplier_bal>=$pur_bal){
					//echo $pur_bal;exit();
					$purchase_pay=array(
					'purchase_id' 		=> $p->id,
					'ref' 				=> date('Ymdhis'),
					'payment_date'		=> date("Y-m-d", strtotime($date)),
					'payment_type' 		=> $credit,
					'payment' 			=> $pur_bal,
					'payment_note' 		=> $description,
					'created_date' 		=> date('Y-m-d'),
					'created_time' 		=> date('H:i:s'),
					'created_by' 		=> $_SESSION['inv_username'],
					'system_ip' 		=> '',
					'system_name' 		=> '',
					'status' 			=> 1,
				);
				$pay=$this->db->insert('db_purchasepayments',$purchase_pay);
				$q66 = $this->purchase_model->update_purchase_payment_status($p->id);
				$supplier_bal-=$pur_bal;
				}
				elseif($supplier_bal<$pur_bal && $supplier_bal>0){
					$purchase_pay=array(
					'purchase_id' 		=> $p->id,
					'ref' 				=> date('Ymdhis'),
					'payment_date'		=> date("Y-m-d", strtotime($date)),
					'payment_type' 		=> $credit,
					'payment' 			=> $supplier_bal,
					'payment_note' 		=> $description,
					'created_date' 		=> date('Y-m-d'),
					'created_time' 		=> date('H:i:s'),
					'created_by' 		=> $_SESSION['inv_username'],
					'system_ip' 		=> '',
					'system_name' 		=> '',
					'status' 			=> 1,
				);
				$pay=$this->db->insert('db_purchasepayments',$purchase_pay);
				$q66 = $this->purchase_model->update_purchase_payment_status($p->id);
				#$supplier_bal-=$pur_bal;
				}
				elseif($supplier_bal<=0){
					break;
				}
			}
			if($pay){
					//Updating payment status
					$ref1=date('Y-m-d');
					$supplier_code = $this->db->where('id', $supplier)->get('db_suppliers')->row('supplier_code');
					$payable_account=$this->db->where('account_name','Account Payable')->get('db_ledgeraccounts')->row('gl_code');
					//DEBIT SUPPLIER ACCOUNT
					$debit_supplier = array(
					'f_year' => date('Y'),
					'c_month' => date('m'),
					'ref_no' => $ref1,
					'account_id' => $supplier_code,
					'trans_date' => date('Ymdhis'),
					'expense_type' => 2,
					'description' => 'Purchase Payment',
					'debit' => $supplier_bal,
					'credit' => 0.00,
					'created_by' => $_SESSION['inv_username'],
				);
				$this->db->insert('credit_debit', $debit_supplier);
				//DEBIT PAYABLE ACCOUNT
				$debit_payable_account = array(
					'f_year' => date('Y'),
					'c_month' => date('m'),
					'ref_no' => $ref1,
					'account_id' => $payable_account,
					'trans_date' => date('Ymdhis'),
					'expense_type' => 2,
					'description' => 'Purchase Payment',
					'debit' => $supplier_bal,
					'credit' => 0.00,
					'created_by' => $_SESSION['inv_username'],
				);
				$this->db->insert('credit_debit', $debit_payable_account);
				//CREDIT PAYING ACCOUNT
				$credit_paying_account = array(
					'f_year' => date('Y'),
					'c_month' => date('m'),
					'ref_no' => $ref1,
					'account_id' => $credit,
					'trans_date' => date('Ymdhis'),
					'expense_type' => 2,
					'description' => 'Purchase Payment',
					'debit' => 0.00,
					'credit' => $supplier_bal,
					'created_by' => $_SESSION['inv_username'],
				);
				$this->db->insert('credit_debit', $credit_paying_account);
				$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Payment successfully saved.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('money');
				}
			/* if($pay){
				$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Payment successfully saved.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('money');
			} */
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, An error ocurred. Please try again later.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('money');
			}
		}
	}
	public function save_room_category(){
		if(isset($_POST['submit_btn'])){
			$category_name=$this->input->post('category_name');
			$charge_rate=$this->input->post('charge_rate');
			$main_category=$this->input->post('main_category');
			$data=array(
				'main_id'=>$main_category,
				'category_name'=>$category_name,
				'charge_rate'=>$charge_rate,
				'status'=>$this->input->post('status'),
				'description'=>$this->input->post('description'),
				'created_by'=>$_SESSION['inv_username'],
				'created_date'=>date('Y-m-d')
			);
			$confirm_name=$this->db->where('category_name',$category_name)->get('db_acc_category')->num_rows();
			//echo $confirm_name;exit();
			if($confirm_name<1){
			$qry=$this->db->insert('db_acc_category',$data);
			if($qry){
				$last_id=$this->db->insert_id();
				$category_code = 'CT' . str_pad($last_id, 4, '0', STR_PAD_LEFT);
				$this->db->where('id',$last_id)->update('db_acc_category',array('category_code'=>$category_code));
				$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Room category successfully added.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_category');
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, An error ocurred. Please try again later.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_category');
			}
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, Category name already registered. Please try another.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_category');
			}
		}	
	}
	public function save_main_category(){
		if(isset($_POST['submit_btn'])){
			$category_name=$this->input->post('category_name');
			$data=array(
				'category_name'=>$category_name,
				'status'=>$this->input->post('status'),
				'description'=>$this->input->post('description'),
				'created_by'=>$_SESSION['inv_username'],
				'created_date'=>date('Y-m-d')
			);
			$confirm_name=$this->db->where('category_name',$category_name)->get('db_acc_main_category')->num_rows();
			//echo $confirm_name;exit();
			if($confirm_name<1){
			$qry=$this->db->insert('db_acc_main_category',$data);
			if($qry){
				$last_id=$this->db->insert_id();
				$category_code = 'CT' . str_pad($last_id, 4, '0', STR_PAD_LEFT);
				$this->db->where('id',$last_id)->update('db_acc_main_category',array('category_code'=>$category_code));
				$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Main category successfully added.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/main_category');
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, An error ocurred. Please try again later.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/main_category');
			}
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, Main category name already registered. Please try another.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/main_category');
			}
		}	
	}
	public function update_room_category(){
		if(isset($_POST['submit_btn'])){
			$id=$this->input->post('id');
			$category_name=$this->input->post('category_name');
			$charge_rate=$this->input->post('charge_rate');
			$main_category=$this->input->post('main_category');
			$data=array(
				'main_id'=>$main_category,
				'category_name'=>$category_name,
				'charge_rate'=>$charge_rate,
				'status'=>$this->input->post('status'),
				'description'=>$this->input->post('description'),
				'updated_by'=>$_SESSION['inv_username'],
				'updated_date'=>date('Y-m-d H:i:s')
			);
			$qry=$this->db->where('id',$id)->update('db_acc_category',$data);
			if($qry){
				$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Room category successfully updated.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_category');
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, An error ocurred. Please try again later.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_category');
			}
		}	
	}
	public function update_main_category(){
		if(isset($_POST['submit_btn'])){
			$id=$this->input->post('id');
			$category_name=$this->input->post('category_name');
			$data=array(
				'category_name'=>$category_name,
				'status'=>$this->input->post('status'),
				'description'=>$this->input->post('description'),
				'updated_by'=>$_SESSION['inv_username'],
				'updated_date'=>date('Y-m-d H:i:s')
			);
			$qry=$this->db->where('id',$id)->update('db_acc_main_category',$data);
			if($qry){
				$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Main category successfully updated.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/main_category');
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, An error ocurred. Please try again later.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/main_category');
			}
		}	
	}
	/* ============================START OF ROOMS======================== */
	public function save_room(){
		if(isset($_POST['submit_btn'])){
			$room_no=$this->input->post('room_no');
			$data=array(
				'room_no'=>$room_no,
				'room_category'=>$this->input->post('room_category'),
				'room_price'=>$this->input->post('room_price'),
				'double_price'=>$this->input->post('double_price'),
				'status'=>$this->input->post('status'),
				'description'=>$this->input->post('description'),
				'created_by'=>$_SESSION['inv_username'],
				'created_date'=>date('Y-m-d')
			);
			$confirm_no=$this->db->where('room_no',$room_no)->get('db_acc_rooms')->num_rows();
			//echo $confirm_name;exit();
			if($confirm_no<1){
			$qry=$this->db->insert('db_acc_rooms',$data);
			if($qry){
				$last_id=$this->db->insert_id();
				$room_code = 'RM' . str_pad($last_id, 4, '0', STR_PAD_LEFT);
				$this->db->where('id',$last_id)->update('db_acc_rooms',array('room_code'=>$room_code));
				$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Room successfully added.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/rooms');
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, An error ocurred. Please try again later.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/rooms');
			}
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, Room No. already exist. Please try another.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/rooms');
			}
		}	
	}
	public function edit_room(){
		if(isset($_POST['submit_btn'])){
			$id=$this->input->post('id');
			$room_no=$this->input->post('room_no');
			$data=array(
				'room_no'=>$room_no,
				'room_category'=>$this->input->post('room_category'),
				'room_price'=>$this->input->post('room_price'),
				'double_price'=>$this->input->post('double_price'),
				'status'=>$this->input->post('status'),
				'description'=>$this->input->post('description'),
				'updated_by'=>$_SESSION['inv_username'],
				'updated_date'=>date('Y-m-d')
			);
			/* $confirm_no=$this->db->where('room_no',$room_no)->get('db_acc_rooms')->num_rows();
			if($confirm_no<1){ */
			$qry=$this->db->where('id',$id)->update('db_acc_rooms',$data);
			if($qry){
				#$room_code = 'RM' . str_pad($id, 4, '0', STR_PAD_LEFT);
				#$this->db->where('id',$id)->update('db_acc_rooms',array('room_code'=>$room_code));
				$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Room successfully updated.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/rooms');
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, An error ocurred. Please try again later.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/rooms');
			}
			/* }
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, Room No. already exist. Please try another.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/rooms');
			} */
		}	
	}
	public function get_price(){
        $response='';
        $room=$this->input->post('room_no');
		$rate=$this->input->post('charge_rate');

        #$get_details=$this->db->where('id',$room)->get('db_acc_rooms')->row();
		$get_details=$this->db->where('id',$rate)->get('db_acc_category')->row();

		if($get_details){
			$response=array(
			'room_price'=>$get_details->charge_rate,
			'double_price'=>$get_details->charge_rate,
            'total_price'=>$get_details->charge_rate
            /* 'room_price'=>$get_details->room_price,
			'double_price'=>$get_details->double_price,
            'total_price'=>$get_details->room_price */
        );
		}
        else{
			$response=array(
			'room_price'=>0,
			'double_price'=>0,
            'total_price'=>0
            /* 'room_price'=>0,
			'double_price'=>0,
            'total_price'=>0 */
        );
		}
        echo json_encode($response);
    }
	/* ==============================END================================= */
	public function save_booking(){
		if(isset($_POST['submit_btn'])){
			$opt=$this->input->post('opt');
			$customer_name=$this->input->post('customer_name');
			$phone=$this->input->post('phone');
			$id_no=$this->input->post('id_no');
			$check_in=$this->input->post('check_in');
			$check_out=$this->input->post('check_out');
			$no_of_days=$this->input->post('no_of_days');
			$room_no=$this->input->post('room_no');
			$room_price=$this->input->post('room_price');
			$total_price=$this->input->post('total_price');
			$grand_amount=$this->input->post('tot_dic_vat');
			$discount=$this->input->post('discount');
			$tax=$this->input->post('tax');
			$description=$this->input->post('description');
			$paid_amount=$this->input->post('paid_amount');
			$change_return=$this->input->post('change_return');
			$pay_mode=$this->input->post('pay_mode');
			$pay_note=$this->input->post('pay_note');
			$shift=$this->db->where('status',1)->get('db_shifts')->row('id');
				if($shift){
					$shift_id=$shift;
				}
				else{
					$shift_id=1;
				}
			$new_customer=array(
				'customer_name'=>$customer_name,
				'phone'=>$phone,
				'gstin'=>$id_no,
				'created_date'=>date('Y-m-d'),
				'created_by'=>$_SESSION['inv_username'],
				'accommodation'=>1
			);

			if($opt==1){
				$confirm_exist=$this->db->where("phone='$phone' or gstin='$id_no'")->get('db_customers');
				if($confirm_exist->num_rows()>0){
					$customer_id=$confirm_exist->row('id');
					$customer_code=$confirm_exist->row('customer_code');
					//customer exist
					/* $this->session->set_flashdata('message', '<div class="alert alert-warning"><strong>Customer Exist.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            		redirect('accommodation/room_booking'); */

				}
				else{
					$new_qry=$this->db->insert('db_customers',$new_customer);
					if($new_qry){
						$customer_id=$this->db->insert_id();
						$customer_code = 'CUST' . str_pad($customer_id, 4, '0', STR_PAD_LEFT);
						$this->db->where('id',$customer_id)->update('db_customers',array('customer_code'=>$customer_code));
					}
				}
				
			}
			else{
				$customer_id=$this->input->post('registered_customer');
			}
			if($tax==0){
				$tax_fin=0;
			}
			else{
				$tax_fin=($grand_amount/(1+$tax/100))*$tax/100;
			}

			$room_qry=array(
				'shift_id'=>$shift_id,
				'ref'=>date('Ymdhis'),
				'customer_id'=>$customer_id,
				'room_id'=>$room_no,
				'check_in'=>$check_in,
				'check_out'=>$check_out,
				'unit_price'=>$room_price,
				'discount'=>$discount,
				'tax_per'=>$tax,
				'tax_amt'=>round($tax_fin,2),
				'no_of_days'=>$no_of_days,
				'total_amount'=>$total_price,
				'grand_amount'=>$grand_amount,
				'paid_amount'=>$paid_amount-$change_return,
				'change_return'=>$change_return,
				'payment_status'=>'Unpaid',
				'description'=>$description,
				'created_by'=>$_SESSION['inv_username'],
				'created_date'=>date('Y-m-d'),
				'booking_status'=>1
			);
			$booking_qry=$this->db->insert('db_acc_booking',$room_qry);
			if($booking_qry){
				$booking_id=$this->db->insert_id();
				$this->db->where('id',$room_no)->update('db_acc_rooms',array('status'=>2));
				$booking_code=$this->db->where('id',$booking_id)->get('db_acc_booking')->row('ref');
				$customer_code=$this->db->where('id',$customer_id)->get('db_customers')->row();
				
				#DEBIT CUSTOMER ACCOUNT
				$debit_customer = array(
					'shift_id'=>$shift_id,
				'f_year' => date('Y'),
				'c_month' => date('m'),
				'ref_no' => $booking_code,
				'account_id' => $customer_code->customer_code,
				'trans_date' => date('Y-m-d'),
				'expense_type' => 2,
				'description' => 'Room Booking',
				'debit' => $grand_amount,
				'credit' => 0.00,
				'created_by' => $_SESSION['inv_username'],
				//'status'             => $purchase_status,
				);
				$this->db->insert('credit_debit', $debit_customer);
				#CREDIT CUSTOMER PAYMENT
				$credit_customer = array(
					'shift_id'=>$shift_id,
				'f_year' => date('Y'),
				'c_month' => date('m'),
				'ref_no' => date('Ymdhis'),
				'account_id' => $customer_code->customer_code,
				'trans_date' => date('Y-m-d'),
				'expense_type' => 2,
				'description' => 'Booking Payment',
				'debit' => 0.00,
				'credit' => $paid_amount-$change_return,
				'created_by' => $_SESSION['inv_username'],
				);
				#DEBIT PAYMENT ACCOUNT
				$debit_payment_account = array(
					'shift_id'=>$shift_id,
				'f_year' => date('Y'),
				'c_month' => date('m'),
				'ref_no' => date('Ymdhis'),
				'account_id' => $pay_mode,
				'trans_date' => date('Y-m-d'),
				'expense_type' => 2,
				'description' => 'Booking Payment',
				'debit' => $paid_amount-$change_return,
				'credit' => 0.00,
				'created_by' => $_SESSION['inv_username'],
				);
				//INSERT IN SALES PAYMENT TBL
				$save_payment=array(
					'shift_id'=>$shift_id,
					'ref'=>date('Ymdhis'),
					'booking_id'=>$booking_id,
					'payment_date'=>date('Y-m-d'),
					'payment_type'=>$pay_mode,
					'payment'=>$paid_amount-$change_return,
					'payment_note'=>'Booking Payment',
					'created_date'=>date('Y-m-d'),
					'created_time'=>date('H:i:s'),
					'created_by'=>$_SESSION['inv_username'],
					'change_return'=>$change_return,
					'status'=>1,
				);
				if($paid_amount>0){
				$this->db->insert('credit_debit', $credit_customer);
				$this->db->insert('credit_debit', $debit_payment_account);
				$this->db->insert('db_salespayments', $save_payment);
				}
				
				/* =================Payment Process Starts Here================== */
				$this->booking_payment($booking_id);
				$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Booking process successfully completed.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_booking');
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, An error occurred while saving data. Please try again later.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_booking');
			}
		}
	}

	/* public function get_auto(){
        $response='';
        $in=$this->input->post('check_in');
		$added=1;
		$out = date('Y-m-d', strtotime($in . '+' . $added . 'days'));
        $response=array(
			'check_in'=>$in,
			'check_out'=>$out,
			'days'=>$added
        );
        echo json_encode($response);
    }
	public function get_auto1(){
        $response='';
        $in=$this->input->post('check_in');
		$out=$this->input->post('check_out');
		$added=$this->dateDiff($in,$out);
		$out = date('Y-m-d', strtotime($in . '+' . $added . 'days'));
		//print($out);
        $response=array(
			'check_in'=>$in,
			'check_out'=>$out,
			'days'=>$added
        );
        echo json_encode($response);
    } */
	public function get_auto(){
        $response='';
        $in=$this->input->post('check_in');
		//$no_of_days=$this->input->post('no_of_days'); tot_dic_vat
		$room_price=$this->input->post('room_price');
		if($room_price!=""){
			$room_price=$room_price;
		}
		else{
			$room_price=0;
		}
		//$total_price=$this->input->post('total_price');
		$added=1;
		$out = date('Y-m-d', strtotime($in . '+' . $added . 'days'));
        $response=array(
			'check_in'=>$in,
			'check_out'=>$out,
			'days'=>$added,
			'room_price'=>$added*$room_price,
			//'total_price'=>$added*$room_price
        );
        echo json_encode($response);
    }
	public function get_auto1(){
        $response='';
        $in=$this->input->post('check_in');
		$out=$this->input->post('check_out');
		$room_price=$this->input->post('room_price');
		if($room_price!=""){
			$room_price=$room_price;
		}
		else{
			$room_price=0;
		}
		$added=$this->dateDiff($in,$out);
		$out = date('Y-m-d', strtotime($in . '+' . $added . 'days'));
		//print($out);
        $response=array(
			'check_in'=>$in,
			'check_out'=>$out,
			'days'=>$added,
			'room_price'=>$added*$room_price,
        );
        echo json_encode($response);
    }

	public function dateDiff($from, $to)
	{
		$from_ts = strtotime($from);
		$to_ts = strtotime($to);
		$diff = $to_ts - $from_ts;
		return round($diff / 86400);
	}

	public function booking_payment($booking_id){
		$booking_details=$this->db->where('id',$booking_id)->get('db_acc_booking')->row();
		$cust_cur_bal=$this->db->where('id',$booking_details->customer_id)->get('db_customers')->row('sales_due');
		$booking_grand=$booking_details->grand_amount;
		$booking_paid=$booking_details->paid_amount;
		if($booking_grand<=$booking_paid){
			//pay status is Paid
			$pay_status='Paid';
			$customer_bal=0;
			$new_cust_bal=$cust_cur_bal;
		}
		elseif($booking_grand>$booking_paid && $booking_paid>0){
			//pay status is partial
			$pay_status='Partial';
			$customer_bal=$booking_grand-$booking_paid;
			$new_cust_bal=$cust_cur_bal+$customer_bal;
		}
		elseif($booking_paid==0){
			//pay status is unpaid
			$pay_status='Unpaid';
			$customer_bal=$booking_grand;
			$new_cust_bal=$cust_cur_bal+$customer_bal;
		}
		//Update booking payment
		$this->db->where('id',$booking_id)->update('db_acc_booking',array('payment_status'=>$pay_status));
		//Update customer balance
		$this->db->where('id',$booking_details->customer_id)->update('db_customers',array('sales_due'=>$new_cust_bal));
	}

	//$dateDiff = dateDiff($date1, $date2);
	public function show_booking_modal(){
		$id=$this->input->post('booking_id');
		$details=$this->db->select('a.*,b.customer_name,b.phone,b.gstin,c.room_no')->from('db_acc_booking as a')
		->join('db_customers as b','b.id=a.customer_id')
		->join('db_acc_rooms as c','c.id=a.room_id')
		->where('a.id',$id)->get()->row();
		?>
		<div class="modal" id="view_modal">
		<div class="modal-dialog">
			<div class="modal-content">
			<div class="modal-header header-custom">
				<h4 class="modal-title"><i class="fa fa-list"></i> Booking Details</h4>
				<!-- <button type="button" class="close" data-dismiss="modal">&times;</button> -->
			</div>
			<div class="modal-body">
				<div class="table-repsonsive">
                          <table class="table">
                            <tbody>
								<?php 
								if($details->booking_status==1){
									$state= "<span class='btn btn-xs btn-success'>IN</span>";}
								elseif(($details->booking_status==2)){
									$state= "<span class='btn btn-xs btn-warning'>OUT</span>";
								}
								elseif(($details->booking_status==0)){
									$state= "<span class='btn btn-xs btn-danger'>CANCELLED</span>";
								}
								?>
							  <tr>
                                <td class="rm_border_top pd_right"><b>Booking Status</b></td>
                                <td class="rm_border_top bd_left"><?php echo $state; ?></td>
                              </tr>
                              <tr>
                                <td class="rm_border_top pd_right"><b>Cusomer Name</b></td>
                                <td class="rm_border_top bd_left" style="text-transform: uppercase;"><?php echo $details->customer_name; ?></td>
                              </tr>
                              <tr>
                                <td class="rm_border_top pd_right"><b>Phone Number</b></td>
                                <td class="rm_border_top bd_left"><?php echo $details->phone; ?></td>
                              </tr>
                              <tr>
                                <td class="rm_border_top pd_right"><b>National ID</b></td>
                                <td class="rm_border_top bd_left"><?php echo $details->gstin; ?></td>
                              </tr>
                              <tr>
                                <td class="rm_border_top pd_right"><b>Check-In</b></td>
                                <td class="rm_border_top bd_left"><?php echo $details->check_in; ?></td>
                              </tr>
                              <tr>
                                <td class="rm_border_top pd_right"><b><b>Check-Out</b></b></td>
                                <td class="rm_border_top bd_left"><?php echo $details->check_out; ?></td>
                              </tr>
							  <tr>
                                <td class="rm_border_top pd_right"><b><b>Day(s)</b></b></td>
                                <td class="rm_border_top bd_left"><?php echo $details->no_of_days; ?></td>
                              </tr>
							  <tr>
                                <td class="rm_border_top pd_right"><b><b>Room Number</b></b></td>
                                <td class="rm_border_top bd_left"><?php echo $details->room_no; ?></td>
                              </tr>
							  <tr>
                                <td class="rm_border_top pd_right"><b><b>Room Price</b></b></td>
                                <td class="rm_border_top bd_left"><?php echo number_format($details->grand_amount,2); ?></td>
                              </tr>
							  <tr>
                                <td class="rm_border_top pd_right"><b><b>Discount</b></b></td>
                                <td class="rm_border_top bd_left"><?php echo number_format($details->discount,2); ?></td>
                              </tr>
							  <tr>
                                <td class="rm_border_top pd_right"><b><b>Paid Amount</b></b></td>
                                <td class="rm_border_top bd_left"><?php echo number_format($details->paid_amount,2); ?></td>
                              </tr>
							  <tr>
                                <td class="rm_border_top pd_right"><b><b>Tax Amt</b></b></td>
                                <td class="rm_border_top bd_left"><?php echo number_format($details->tax_amt,2); ?></td>
                              </tr>
							  <tr>
                                <td class="rm_border_top pd_right"><b><b>Balance</b></b></td>
                                <td class="rm_border_top bd_left"><?php echo number_format($details->grand_amount-$details->paid_amount,2); ?></td>
                              </tr>
							  <tr>
                                <td class="rm_border_top pd_right"><b><b>Created By</b></b></td>
                                <td class="rm_border_top bd_left" style="text-transform: capitalize;"><?php echo $details->created_by; ?></td>
                              </tr>
                            </tbody>
                          </table>
                        </div>
			</div>
			<div class="modal-footer">
				<button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
			</div>
			</div>
		</div>
		</div>
		<?php
	}
	public function bulk_checkout(){
		if(isset($_POST['submit_btn'])){
			$from_date = date("Y-m-d", strtotime($this->input->post('from_date')));
            $to_date = date("Y-m-d", strtotime($this->input->post('to_date')));
			$note=$this->input->post('note');
			$qry=$this->db->where("(check_in>='$from_date' and check_out<='$to_date')")
			->update('db_acc_booking',array('booking_status'=>2,'updated_by'=>$_SESSION['inv_username'],'checkout_note'=>$note,'updated_date'=>date('Y-m-d H:i:s')));
		if($qry){
			//Set rooms free
			$get_rooms=$this->db->where("(check_in>='$from_date' and check_out<='$to_date')")->get('db_acc_booking')->result();
			foreach($get_rooms as $r){
				$this->db->where('id',$r->room_id)->update('db_acc_rooms',array('status'=>1));
			}
			$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Bulk checkout successfully completed.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_booking');
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, An error ocurred. Please try again later.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_booking');
			}
		}
	}
	public function single_checkout(){
		if(isset($_POST['submit_btn'])){
			$booking_id=$this->input->post('booking_id');
			$check_out=$this->input->post('check_out');
			$no_of_days=$this->input->post('no_of_days');
			$note=$this->input->post('note');

			$room_data=$this->db->where('id',$booking_id)->get('db_acc_booking')->row();
			#$total=$room_data->unit_price*$no_of_days;
			$total=$room_data->grand_amount;
			$qry1=$this->db->where('id',$booking_id)->update('db_acc_booking',array('booking_status'=>2,'check_out'=>$check_out,'no_of_days'=>$no_of_days,'total_amount'=>$total,'grand_amount'=>$total,'updated_by'=>$_SESSION['inv_username'],'checkout_note'=>$note,'updated_date'=>date('Y-m-d H:i:s')));
			$this->db->where(['ref_no'=>$room_data->ref])->update('credit_debit',array('debit'=>$total));
			$qry2=$this->db->where('id',$room_data->room_id)->update('db_acc_rooms',array('status'=>1));
			if($qry1){
				$this->release_room($room_data->room_id);
				$this->update_customer_balance($room_data->customer_id);
				$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Checkout successfully completed.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_booking');
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, An error ocurred. Please try again later.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_booking');
			}
		}
	}
	public function release_room($room_id){
		$this->db->where('id',$room_id)->update(' db_acc_rooms',array('status'=>1));
	}
	public function update_customer_balance($customer_id){
		$balance_from_sales=$this->db->where('customer_id',$customer_id)->select("SUM(grand_total-paid_amount) as bal")->from('db_sales')->get()->row('bal');
		$balance_from_booking=$this->db->where('customer_id',$customer_id)->select("SUM(grand_amount-paid_amount) as bal")->from('db_acc_booking')->get()->row('bal');
		if($balance_from_sales){
			$balance_from_sales=$balance_from_sales;
		}
		else{
			$balance_from_sales=0;
		}
		if($balance_from_booking){
			$balance_from_booking=$balance_from_booking;
		}
		else{
			$balance_from_booking=0;
		}
		$this->db->where(['id'=>$customer_id])->update('db_customers',array('sales_due'=>$balance_from_sales+$balance_from_booking));
		//echo $balance_from_booking;
	}
	public function show_booking_payment_modal(){
		$id=$this->input->post('booking_id');
		$details=$this->db->select('a.*,b.customer_name,b.phone,b.gstin,c.room_no')->from('db_acc_booking as a')
		->join('db_customers as b','b.id=a.customer_id')
		->join('db_acc_rooms as c','c.id=a.room_id')
		->where('a.id',$id)->get()->row();
		$balance=$details->grand_amount-$details->paid_amount;
		?>
		<div class="modal" id="view_payment_modal">
		<div class="modal-dialog modal-lg">
			<div class="modal-content">
			<div class="modal-header header-custom">
				<h4 class="modal-title"><i class="fa fa-list"></i> Payment Details</h4>
				<!-- <button type="button" class="close" data-dismiss="modal">&times;</button> -->
			</div>
			<div class="modal-body">
					<?php
					if($balance>0){?>
					<form method="post" action="<?php echo site_url('accommodation/save_payment');?>" id="">
            		<div class="row">
					<input type="hidden" name="<?php echo $this->security->get_csrf_token_name();?>" value="<?php echo $this->security->get_csrf_hash();?>">
					<div class="col-md-4">
						<label>Amount</label>
						<input readonly type="hidden" name="id" id="id" value="<?php echo $id;?>">
						<input value="<?php echo $balance;?>" class="form-control" name="amount" id="amount" placeholder="Enter Amount" required>
					</div>
					<div class="col-md-4">
						<label>Pay Mode</label>
						<select class="select2 form-control" name="pay_mode" id="pay_mode" required style="width:100%" required>
						<?php 
						$cust=$this->db->where('id<4')->get('db_paymenttypes')->result();
						foreach($cust as $c){
							?>
							<option value="<?php echo $c->acc_code?>"><?php echo $c->payment_type?></option>
							<?php
						}
						?>
						</select>
					</div>
					<div class="col-md-4">
						<label>Pay Date</label>
						<input value="<?php echo date('Y-m-d');?>" type="date" class="form-control" name="pay_date" id="pay_date" placeholder="Date" required>
					</div>
					
					</div><br/>
					<div class="row">
						<div class="col-md-4">
						<button class="btn btn-sm btn-success" type="submit" name="submit_btn" id="submit_btn">Save Payment</button>
					</div>
					</div>
					</form>
				<?php };?>
				<div class="table-repsonsive">
                          <table class="table">
                            <thead>
								<tr>
									<th>##</th>
									<th>Amount Paid</th>
									<th>Payment Mode</th>
									<th>Received By</th>
									<th>Payment Date</th>
								</tr>
							</thead>
							<tbody>
								<?php
								$count=0;
								$get_payment=$this->db->select('a.*,b.account_name')->from('db_salespayments as a')
								->join('db_ledgeraccounts as b','b.gl_code=a.payment_type')
								->where('a.booking_id',$id)->get('')->result();
								foreach($get_payment as $p){
									?>
									<tr>
									<td><?php echo ++$count;?>.</td>
									<td><?php echo number_format($p->payment,2);?></td>
									<td><?php echo $p->account_name;?></td>
									<td><?php echo $p->created_by;?></td>
									<td><?php echo $p->created_date;?></td>
								</tr>
									<?php
								}
								?>
							</tbody>
                          </table>
                        </div>
			</div>
			<div class="modal-footer">
				<button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
			</div>
			</div>
		</div>
		</div>
		<?php
	}
	public function show_checkout_modal(){
		$id=$this->input->post('booking_id');
		$data=$this->db->where('id',$id)->get('db_acc_booking')->row();
		?>
		<div id="single_checkout" class="modal fade" role="dialog">
        <div class="modal-dialog">
          <div class="modal-content">
            <div class="modal-header header-custom">
              <button type="button" class="close" data-dismiss="modal">&times;</button>
              <h4 class="modal-title"><i class="fa fa-minus-circle"></i> Room Checkout</h4>
            </div>
            <form method="post" action="<?php echo site_url('accommodation/single_checkout');?>" id="checkout_form">
            <input type="hidden" name="<?php echo $this->security->get_csrf_token_name();?>" value="<?php echo $this->security->get_csrf_hash();?>">
            <div class="modal-body">
				<div class="row">
					<div class="col-md-4">
                    <label>Check-In Date: <label class="text-danger">*</label></label>
                    <input readonly value="<?php echo $data->check_in;?>" class="form-control" name="check_in" id="check_in" type="date" placeholder="" required>
                  </div>
                  <div class="col-md-4">
                    <label>Check-Out Date: <label class="text-danger">*</label></label>
                    <input value="<?php echo $data->check_out;?>" class="form-control" name="check_out" id="check_out" type="date" placeholder="" required>
                  </div>
                  <div class="col-md-4">
                    <label>Booked Days: <label class="text-danger">*</label></label>
                    <input value="<?php echo $data->no_of_days;?>" readonly class="form-control" name="no_of_days" id="no_of_days" type="number" placeholder="No of Days" required>
                  </div>
				</div>
                <div class="row">
                  <div class="col-md-12">
                    <label>Narrative: </label>
					<input readonly type="hidden" class="form-control" name="booking_id" id="booking_id" value="<?php echo $id;?>">
                    <textarea class="form-control" name="note" id="note" placeholder="Description"><?php echo "Checked out";?></textarea>
                  </div>
                </div>
            </div>
            <div class="modal-footer">
              <button type="submit" name="submit_btn" class="btn btn-success">Save</button>
              <button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
            </div>
            </form>
          </div>
        </div>
      </div>
	  <script>
  $(document).ready(function() {
    $('#check_out').change(function(event){
          event.preventDefault();
          var to=$(this).val();
          console.log("CHECKOUT",to);
          //$("#no_of_days").val(null)
          var form = $('#checkout_form')[0];
          var data = new FormData(form);
          $.ajax({
                url: '<?php echo site_url('accommodation/get_auto1'); ?>',
                type: 'POST',
                dataType: 'JSON',
                enctype: 'multipart/form-data',
                processData: false,
                contentType: false,
                data: data,
                success: function(data) {
                    console.log(">>>>>0",data);
                    var days=$('#no_of_days');
                    days.attr('value',data.days);
                    if (data.response != '') {
                        $('#alert_respose').html(data.error);
                    }
                }
            });
        });
        });
  </script>
		<?php
	}
	public function show_cancel_modal(){
		$id=$this->input->post('booking_id');
		?>
		<div id="room_cancel" class="modal fade" role="dialog">
        <div class="modal-dialog">
          <div class="modal-content">
            <div class="modal-header header-custom">
              <button type="button" class="close" data-dismiss="modal">&times;</button>
              <h4 class="modal-title"><i class="fa fa-minus-circle"></i> Room Cancellation</h4>
            </div>
            <form method="post" action="<?php echo site_url('accommodation/cancel_booking');?>">
            <input type="hidden" name="<?php echo $this->security->get_csrf_token_name();?>" value="<?php echo $this->security->get_csrf_hash();?>">
            <div class="modal-body">
                <div class="row">
                  <div class="col-md-12">
                    <label>Cancellation Reason: </label>
					<input readonly type="hidden" class="form-control" name="booking_id" id="booking_id" value="<?php echo $id;?>">
                    <textarea class="form-control" name="note" id="note" placeholder="Type Cancellaion Reason"></textarea>
                  </div>
                </div>
            </div>
            <div class="modal-footer">
              <button type="submit" name="submit_btn" class="btn btn-success">Save</button>
              <button type="button" class="btn btn-danger" data-dismiss="modal">Close</button>
            </div>
            </form>
          </div>
        </div>
      </div>
		<?php
	}
	public function save_payment(){
		if(isset($_POST['submit_btn'])){
			$booking_id=$this->input->post('id');
			$amount=$this->input->post('amount');
			$pay_mode=$this->input->post('pay_mode');
			$pay_date=$this->input->post('pay_date');

			$booking_data=$this->db->select('a.*,b.customer_code,b.sales_due')
			->from('db_acc_booking as a')
			->join('db_customers as b','b.id=a.customer_id')
			->where('a.id',$booking_id)->get()->row();
			$bal=$booking_data->grand_amount-$booking_data->paid_amount;
			#if($amount>$booking_data->grand_amount || $amount==$booking_data->grand_amount){
			if($amount>$bal || $amount==$bal){
				#$paid=$booking_data->grand_amount;
				#$change_return=$amount-$booking_data->grand_amount;
				$paid=$amount;
				$change_return=$amount-$bal;
				$pay_status='Paid';
			}
			else{
				$paid=$amount;
				$change_return=0;
				$pay_status='Partial';
			}

			$save_payment=array(
					'ref'=>date('Ymdhis'),
					'booking_id'=>$booking_id,
					'payment_date'=>$pay_date,
					'payment_type'=>$pay_mode,
					'payment'=>$paid,
					'payment_note'=>'Booking Payment',
					'created_date'=>date('Y-m-d'),
					'created_time'=>date('H:i:s'),
					'created_by'=>$_SESSION['inv_username'],
					'change_return'=>$change_return,
					'status'=>1,
				);
				$qry=$this->db->insert('db_salespayments', $save_payment);
				
				if($qry){
					$pay_id=$this->db->insert_id();
					$ref_code=$this->db->where('id',$pay_id)->get('db_salespayments')->row('ref');
					#CREDIT CUSTOMER PAYMENT
				$credit_customer = array(
				'f_year' => date('Y'),
				'c_month' => date('m'),
				'ref_no' => $ref_code,
				'account_id' => $booking_data->customer_code,
				'trans_date' => date('Y-m-d'),
				'expense_type' => 2,
				'description' => 'Booking Payment',
				'debit' => 0.00,
				'credit' => $paid,
				'created_by' => $_SESSION['inv_username'],
				);
				#DEBIT PAYMENT ACCOUNT
				$debit_payment_account = array(
				'f_year' => date('Y'),
				'c_month' => date('m'),
				'ref_no' => $ref_code,
				'account_id' => $pay_mode,
				'trans_date' => date('Y-m-d'),
				'expense_type' => 2,
				'description' => 'Booking Payment',
				'debit' => $paid,
				'credit' => 0.00,
				'created_by' => $_SESSION['inv_username'],
				);
				$cr=$this->db->insert('credit_debit', $credit_customer);
				$dr=$this->db->insert('credit_debit', $debit_payment_account);
				if($cr && $dr){
					$this->db->where('id',$booking_id)->update('db_acc_booking',array('paid_amount'=>$paid+$booking_data->paid_amount,'change_return'=>$change_return,'payment_status'=>$pay_status));
					$this->db->where('id',$booking_data->customer_id)->update('db_customers',array('sales_due'=>$booking_data->sales_due-$paid));
				$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Payment successfully saved.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_booking');
				}
				else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, An error ocurred. Please try again later.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_booking');	
				}
				}

		}
	}
	//Print booking invoice/receipt 
	public function print_invoice($sales_id)
	{
		/* if (!$this->permissions('sales_add') && !$this->permissions('sales_edit')) {
			$this->show_access_denied_page();
		} */
		$data = $this->data;
		$data['page_title'] = "Booking Receipt";
		$data = array_merge($data, array('sales_id' => $sales_id));
		$this->load->view('booking-invoice', $data);
	}

	/* ==========================REPORTS STARTS HERE============================= */
	public function rooms_report(){
	if($this->db->get('db_company')->row('accommodation')==0){redirect('dashboard');}
	$this->permission_check('acc_room_report');
		$data = $this->data;
		$data['page_title'] = 'Rooms Report';
		$this->load->view('acc_rooms_report', $data);	
	}
	public function booking_report(){
	if($this->db->get('db_company')->row('accommodation')==0){redirect('dashboard');}
	$this->permission_check('acc_booking_report');
		$data = $this->data;
		$data['page_title'] = 'Booking Report';
		$this->load->view('acc_booking_report', $data);	
	}
	public function vat_report(){
		if($this->db->get('db_company')->row('accommodation')==0){redirect('dashboard');}
		$this->permission_check('acc_vat_report');
			$data = $this->data;
			$data['page_title'] = 'VAT Report';
			$this->load->view('acc_vat_report', $data);	
		}
	public function payments_report(){
	if($this->db->get('db_company')->row('accommodation')==0){redirect('dashboard');}
	$this->permission_check('acc_booking_report');
		$data = $this->data;
		$data['page_title'] = 'Payments Report';
		$this->load->view('acc_payment_report', $data);	
	}
	/* ==========================REPORTS END HERE============================= */
	public function rooms_bulk_upload()
	{
		$file_data = $this->csvimport->get_array($_FILES["csv_file"]["tmp_name"]);
		foreach ($file_data as $row) {
			$data[] = array(
				'room_category' => $row['Room Category'],
				'room_no' => $row['Room Number'],
				'room_price' => $row['Room Price'],
				'double_price' => $row['Double Price'],
				'status' => 1,
				'description' => $row['Description'],
                'created_by'=>$_SESSION['inv_username'],
                'created_date'=>date('Y-m-d')
			);
		}
		$import = $this->db->insert_batch('db_acc_rooms', $data);
		if ($import) {
			$this->session->set_flashdata('message', ' <div class="alert alert-success">Rooms Successfully Uploaded.<button class="close" data-dismiss="alert" >&times;</button></div>');
			redirect('accommodation/rooms');
		} else {
			$this->session->set_flashdata('message', ' <div class="alert alert-danger">Sorry! an error Occurred while trying to upload the data. Please try again.<button class="close" data-dismiss="alert" >&times;</button></div>');
			redirect('accommodation/rooms');
		}
	}
	public function category_bulk_upload()
	{
		$file_data = $this->csvimport->get_array($_FILES["csv_file"]["tmp_name"]);
		foreach ($file_data as $row) {
			$data[] = array(
				'main_id' => $row['Main Category'],
				'category_name' => $row['Sub Category Name'],
				'charge_rate' => $row['Charge Rate'],
				'status' => $row['Status'],
				'description' => $row['Description'],
                'created_by'=>$_SESSION['inv_username'],
                'created_date'=>date('Y-m-d')
			);
		}
		$import = $this->db->insert_batch('db_acc_category', $data);
		if ($import) {
			$this->session->set_flashdata('message', ' <div class="alert alert-success">Category Successfully Uploaded.<button class="close" data-dismiss="alert" >&times;</button></div>');
			redirect('accommodation/room_category');
		} else {
			$this->session->set_flashdata('message', ' <div class="alert alert-danger">Sorry! an error Occurred while trying to upload the data. Please try again later.<button class="close" data-dismiss="alert" >&times;</button></div>');
			redirect('accommodation/room_category');
		}
	}
	public function cancel_booking(){
		if(isset($_POST['submit_btn'])){
			$booking_id=$this->input->post('booking_id');
			$note=$this->input->post('note');
			$booking_details=$this->db->where('id',$booking_id)->get('db_acc_booking')->row();
			$data=array(
				'booking_status'=>0,
				'updated_by'=>$_SESSION['inv_username'],
				'description'=>$note,
				'checkout_note'=>'Cancelled',
				'payment_status'=>'Cancelled',
				'updated_date'=>date('Y-m-d H:i:s'),
			);
			$qry=$this->db->where('id',$booking_id)->update('db_acc_booking',$data);
			if($qry){
				$cur_bal=$this->db->where('id',$booking_details->customer_id)->get('db_customers')->row();
				$new_bal=$cur_bal->sales_due-$booking_details->grand_amount;
				$this->db->where('id',$booking_details->customer_id)->update('db_customers',array('sales_due'=>$new_bal));
				$this->db->where('ref_no',$booking_details->ref)->update('credit_debit',array('status'=>'Inactive'));
				$this->session->set_flashdata('message', '<div class="alert alert-success"><strong>Cancellation successfully completed.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_booking');
			}
			else{
				$this->session->set_flashdata('message', '<div class="alert alert-danger"><strong>Sorry!!, An error ocurred. Please try again later.</strong><button type="button" class="close" data-dismiss="alert">&times;</button></div>');
            	redirect('accommodation/room_booking');
			}
			//echo "yes....";exit();
		}
	}
	public function populate_available_rooms()
    {
        if (isset($_POST['category'])) {
            $category_id = $_POST['category'];
            $qry = $this->db->where('room_category', $category_id)->where(['status'=> 1])->get('db_acc_rooms')->result_array();
            $option = '<option selected disabled>~~Select Room~~</option>';
            if (count($qry) > 0) {
                foreach ($qry as $data) {
                    $option .= "<option value='" . $data['id'] . "'";
                    $option .= " > ";
                    $option .= $data['room_no'] . "</option>";
                }
            } else {
                $option = '<option value="" disabled>Sorry!! No room Found </option>';
            }

            echo $option;
        }
    }
	public function populate_room_category()
    {
        if (isset($_POST['category'])) {
            $category_id = $_POST['category'];
            $qry = $this->db->where('main_id', $category_id)->where(['status'=> 1])->get('db_acc_category')->result_array();
            $option = '<option value="" selected disabled>~~Select Rate~~</option>';
            if (count($qry) > 0) {
                foreach ($qry as $data) {
                    $option .= "<option value='" . $data['id'] . "'";
                    $option .= " > ";
                    $option .= $data['category_name'] .' '.number_format($data['charge_rate']). "</option>";
                }
            } else {
                $option = '<option value="" disabled>Sorry!! No rate Found </option>';
            }

            echo $option;
        }
    }
	public function adjust_trans($trans_code,$amt){
		$get_details=$this->db->where('ref',$trans_code)->get('db_acc_booking')->row();
		$get_cr_dr_details=$this->db->where('ref_no',$trans_code)->get('credit_debit')->row('debit');
		$tot=$amt+$get_cr_dr_details;
		$this->db->where('ref_no',$trans_code)->update('credit_debit',array('debit'=>$tot));
		$this->db->where('ref',$trans_code)->update('db_acc_booking ',array('total_amount'=>$tot,'grand_amount'=>$tot,'paid_amount'=>$tot,'change_return'=>0,'payment_status'=>'Paid'));
		$this->db->where('booking_id',$get_details->id)->update('db_salespayments',array('payment'=>$tot));
		redirect('accommodation');
		#print_r($get_details);
	}
	public function booking_update(){
		$get_customers=$this->db->where('status',1)->get('db_customers')->result();
		foreach($get_customers as $c){
			$customer_code=$c->customer_code;
			$this->db->where(['account_id'=>$customer_code,'description'=>'Booking Payment'])->update('credit_debit',array('debit'=>0));
		}
		echo "DONE...";
	}
}

Did this file decode correctly?

Original Code

<?php $_F=__FILE__;$_X='P2lCP1ouWlY5TUFzSE05KCdvRnBLbUZUdCcpPk96Pk1Scz0oJ0VPPjlzek0yPT5uMnpzWj0+ZTIyTW5uPmVXV099TTknKTtWVjJXZW5uPkYyMk9ZWU85ZT1zT0g+TVI9TUg5bj51Yl8vT0g9ek9XV016Vl1WCVpRPFdzMj5BUUgyPXNPSD5fXzJPSG49elEyPSgpVgldVgkJWmV6TUg9OjpfXzJPSG49elEyPSgpO1YJCSQ9LnNuLWlXT2U5X3hXTzxlVygpO1YJCSQ9LnNuLWlXT2U5LWlZTzlNVygnblFaWldzTXpuX1lPOU1XJyw+J25RWlpXc016bicpO1YJCSQ9LnNuLWlXT2U5LWlZTzlNVygnWlF6Mi5lbk1fWU85TVcnKTtWCQloaHBRWlpPej1uPjxRV3k+UVpXT2U5Pk9BPjllPWVWCQkkPS5zbi1pV09lOS1pV3M8emV6cSgnMm5jc1laT3o9Jyk7VglsVlYJWlE8V3MyPkFRSDI9c09IPnNIOU1SKClWCV1WCQlzQSgkPS5zbi1pOTwtaXhNPSgnOTxfMk9ZWmVIcScpLWl6T30oJ2UyMk9ZWU85ZT1zT0gnKVNTYSldek05c3pNMj0oJzllbi48T2V6OScpO2xWCQkkPS5zbi1pWk16WXNubnNPSF8yLk0yeSgnZTIyXzllbi48T2V6OScpO1YJCSQ5ZT1lPlM+JD0uc24taTllPWU7VgkJJDllPWVqJ1pleE1fPXM9V00nZD5TPidGMjJPWVlPOWU9c09IPjRlbi48T2V6OSc7VgkJJD0uc24taVdPZTktaWNzTX0oJ2UyMl85ZW4uPE9lejknLD4kOWU9ZSk7VglsVglaUTxXczI+QVFIMj1zT0g+ek9PWV8yZT1NeE96cSgpVgldVgkJc0EoJD0uc24taTk8LWl4TT0oJzk8XzJPWVplSHEnKS1pek99KCdlMjJPWVlPOWU9c09IJylTU2EpXXpNOXN6TTI9KCc5ZW4uPE9lejknKTtsVgkJJD0uc24taVpNellzbm5zT0hfMi5NMnkoJ2UyMl96T09ZXzJlPU14T3pxJyk7VgkJJDllPWU+Uz4kPS5zbi1pOWU9ZTtWCQkkOWU9ZWonWmV4TV89cz1XTSdkPlM+J2dPT1k+L2U9TXhPenEnO1YJCSQ9LnNuLWlXT2U5LWljc019KCdlMjJfMmU9TXhPenEnLD4kOWU9ZSk7VglsVglaUTxXczI+QVFIMj1zT0g+WWVzSF8yZT1NeE96cSgpVgldVgkJc0EoJD0uc24taTk8LWl4TT0oJzk8XzJPWVplSHEnKS1pek99KCdlMjJPWVlPOWU9c09IJylTU2EpXXpNOXN6TTI9KCc5ZW4uPE9lejknKTtsVgkJJD0uc24taVpNellzbm5zT0hfMi5NMnkoJ2UyMl96T09ZXzJlPU14T3pxJyk7VgkJJDllPWU+Uz4kPS5zbi1pOWU9ZTtWCQkkOWU9ZWonWmV4TV89cz1XTSdkPlM+J3Vlc0g+L2U9TXhPenEnO1YJCSQ9LnNuLWlXT2U5LWljc019KCdlMjJfWWVzSF8yZT1NeE96cScsPiQ5ZT1lKTtWCWxWCVpRPFdzMj5BUUgyPXNPSD56T09ZbigpVgldVgkJc0EoJD0uc24taTk8LWl4TT0oJzk8XzJPWVplSHEnKS1pek99KCdlMjJPWVlPOWU9c09IJylTU2EpXXpNOXN6TTI9KCc5ZW4uPE9lejknKTtsVgkJJD0uc24taVpNellzbm5zT0hfMi5NMnkoJ2UyMl9jc019X3pPT1knKTtWCQkkOWU9ZT5TPiQ9LnNuLWk5ZT1lO1YJCSQ5ZT1laidaZXhNXz1zPVdNJ2Q+Uz4nZ09PWW4nO1YJCSQ9LnNuLWlXT2U5LWljc019KCdlMjJfek9PWW4nLD4kOWU9ZSk7VglsVglaUTxXczI+QVFIMj1zT0g+ek9PWV88T095c0h4Xy5zbj1PenEoKVYJXVYJCXNBKCQ9LnNuLWk5PC1peE09KCc5PF8yT1laZUhxJyktaXpPfSgnZTIyT1lZTzllPXNPSCcpU1NhKV16TTlzek0yPSgnOWVuLjxPZXo5Jyk7bFYJCSQ9LnNuLWlaTXpZc25uc09IXzIuTTJ5KCdlMjJfY3NNfV96T09ZJyk7VgkJJDllPWU+Uz4kPS5zbi1pOWU9ZTtWCQkkOWU9ZWonWmV4TV89cz1XTSdkPlM+J2dPT1k+b09PeXNIeD50c249T3pxJztWCQkkPS5zbi1pV09lOS1pY3NNfSgnZTIyX3pPT1lfLnNuPU96cScsPiQ5ZT1lKTtWCWxWCVpRPFdzMj5BUUgyPXNPSD56T09ZXzxPT3lzSHgoKVYJXVYJCXNBKCQ9LnNuLWk5PC1peE09KCc5PF8yT1laZUhxJyktaXpPfSgnZTIyT1lZTzllPXNPSCcpU1NhKV16TTlzek0yPSgnOWVuLjxPZXo5Jyk7bFYJCSMkPS5zbi1pWk16WXNubnNPSF8yLk0yeSgnblFaWldzTXpuX2NzTX0nKTtWCQkkOWU9ZT5TPiQ9LnNuLWk5ZT1lO1YJCSQ5ZT1laidaZXhNXz1zPVdNJ2Q+Uz4nZ09PWT5vT095c0h4JztWCQkkPS5zbi1pV09lOS1pY3NNfSgnZTIyXzxPT3lzSHhuJyw+JDllPWUpO1YJbFYJWlE8V3MyPkFRSDI9c09IPmU5OV88T095c0h4KClWCV1WCQlzQSgkPS5zbi1pOTwtaXhNPSgnOTxfMk9ZWmVIcScpLWl6T30oJ2UyMk9ZWU85ZT1zT0gnKVNTYSldek05c3pNMj0oJzllbi48T2V6OScpO2xWCQkkPS5zbi1pWk16WXNubnNPSF8yLk0yeSgnZTIyX2VubnN4SF96T09ZJyk7VgkJJDllPWU+Uz4kPS5zbi1pOWU9ZTtWCQkkOWU9ZWonWmV4TV89cz1XTSdkPlM+J0Y5OT5nT09ZPm9PT3lzSHgnO1YJCSQ9LnNuLWlXT2U5LWljc019KCdlMjJfZTk5XzxPT3lzSHgnLD4kOWU9ZSk7VglsVglaUTxXczI+QVFIMj1zT0g+WWV5TV9aZXFZTUg9KCldVgkJc0Eoc25uTT0oJF9tN3BUaiduUTxZcz1fPD1IJ2QpKV1WCQkJJDllPU1TJD0uc24taXNIWlE9LWlaT249KCdaZXFZTUg9XzllPU0nKTtWCQkJJGNPUTIuTXpTJD0uc24taXNIWlE9LWlaT249KCdjT1EyLk16X0hPJyk7VgkJCSQyek05cz1TJD0uc24taXNIWlE9LWlaT249KCcyek05cz1fZTIyT1FIPScpO1YJCQkkZVlPUUg9UyQ9LnNuLWlzSFpRPS1pWk9uPSgnZVlPUUg9X1plczknKTtWCQkJJG5RWlpXc016UyQ9LnNuLWlzSFpRPS1pWk9uPSgnblFaWldzTXpfZTIyT1FIPScpO1YJCQkkOU1uMnpzWj1zT0hTJD0uc24taXNIWlE9LWlaT249KCc5TW4yenNaPXNPSCcpO1YJCQloaCRuUVpaV3NNel88ZVdTYTtWCQkJaGhDTT09c0h4Pm5RWlpXc016PjxlV2VIMk1WCQkJJG5RWlpXc016XzxlV2VIMk1TJD0uc24taTk8LWluTVdNMj0oInAgdSh4emVIOV89Tz1lVy1aZXM5X2VZT1FIPSk+RnA+PGVXIiktaUF6T1koJzk8X1pRejIuZW5NJyktaX0uTXpNKCduUVpaV3NNel9zOScsJG5RWlpXc016KS1peE09KCcnKS1pek99KCc8ZVcnKTtWCQkJaGhNMi5PPiRuUVpaV3NNel88ZVdlSDJNO01Scz0oKTtWCQkJc0EoJGVZT1FIPWlTJG5RWlpXc016XzxlV2VIMk0pXVYJCQkJJG5RWlpXc016XzxlV1MkblFaWldzTXpfPGVXZUgyTTtWCQkJbFYJCQlNV25NXVYJCQkJJG5RWlpXc016XzxlV1MkZVlPUUg9O1YJCQlsVgkJCSNNMi5PPiRuUVpaV3NNel88ZVc7TVJzPSgpO1YJCQkkWlF6Mi5lbk1TJD0uc24taTk8LWl9Lk16TShqJ25RWlpXc016X3M5J1NpJG5RWlpXc016LCduPWU9UW4nU2kwZCktaX0uTXpNKCJaZXFZTUg9X249ZT1Rbj4hUydtZXM5JyIpLWlPejlNel88cSgnczknLCdlbjInKS1peE09KCc5PF9aUXoyLmVuTScpLWl6TW5RVz0oKTtWCQkJQU96TWUyLigkWlF6Mi5lbk0+ZW4+JFopXVYJCQkJJFpRel88ZVdTJFotaXh6ZUg5Xz1PPWVXLSRaLWlaZXM5X2VZT1FIPTtWCQkJCXNBKCRuUVpaV3NNel88ZVdpUyRaUXpfPGVXKV1WCQkJCQloaE0yLk8+JFpRel88ZVc7TVJzPSgpO1YJCQkJCSRaUXoyLmVuTV9aZXFTZXp6ZXEoVgkJCQkJJ1pRejIuZW5NX3M5Jz4JCVNpPiRaLWlzOSxWCQkJCQknek1BJz4JCQkJU2k+OWU9TSgnYlk5LnNuJyksVgkJCQkJJ1plcVlNSD1fOWU9TScJCVNpPjllPU0oImItWS05Iiw+bj16PU89c1lNKCQ5ZT1NKSksVgkJCQkJJ1plcVlNSD1fPXFaTSc+CQlTaT4kMnpNOXM9LFYJCQkJCSdaZXFZTUg9Jz4JCQlTaT4kWlF6XzxlVyxWCQkJCQknWmVxWU1IPV9ITz1NJz4JCVNpPiQ5TW4yenNaPXNPSCxWCQkJCQknMnpNZT1NOV85ZT1NJz4JCVNpPjllPU0oJ2ItWS05JyksVgkJCQkJJzJ6TWU9TTlfPXNZTSc+CQlTaT45ZT1NKCd0OnM6bicpLFYJCQkJCScyek1lPU05XzxxJz4JCVNpPiRfcEtwcDM3RWonc0hjX1FuTXpIZVlNJ2QsVgkJCQkJJ25xbj1NWV9zWic+CQlTaT4nJyxWCQkJCQknbnFuPU1ZX0hlWU0nPgkJU2k+JycsVgkJCQkJJ249ZT1Rbic+CQkJU2k+MCxWCQkJCSk7VgkJCQkkWmVxUyQ9LnNuLWk5PC1pc0huTXo9KCc5PF9aUXoyLmVuTVplcVlNSD1uJywkWlF6Mi5lbk1fWmVxKTtWCQkJCSR2W1s+Uz4kPS5zbi1pWlF6Mi5lbk1fWU85TVctaVFaOWU9TV9aUXoyLmVuTV9aZXFZTUg9X249ZT1RbigkWi1pczkpO1YJCQkJJG5RWlpXc016XzxlVy1TJFpRel88ZVc7VgkJCQlsVgkJCQlNV25Nc0EoJG5RWlpXc016XzxlV0IkWlF6XzxlVz4mJj4kblFaWldzTXpfPGVXaWEpXVYJCQkJCSRaUXoyLmVuTV9aZXFTZXp6ZXEoVgkJCQkJJ1pRejIuZW5NX3M5Jz4JCVNpPiRaLWlzOSxWCQkJCQknek1BJz4JCQkJU2k+OWU9TSgnYlk5LnNuJyksVgkJCQkJJ1plcVlNSD1fOWU9TScJCVNpPjllPU0oImItWS05Iiw+bj16PU89c1lNKCQ5ZT1NKSksVgkJCQkJJ1plcVlNSD1fPXFaTSc+CQlTaT4kMnpNOXM9LFYJCQkJCSdaZXFZTUg9Jz4JCQlTaT4kblFaWldzTXpfPGVXLFYJCQkJCSdaZXFZTUg9X0hPPU0nPgkJU2k+JDlNbjJ6c1o9c09ILFYJCQkJCScyek1lPU05XzllPU0nPgkJU2k+OWU9TSgnYi1ZLTknKSxWCQkJCQknMnpNZT1NOV89c1lNJz4JCVNpPjllPU0oJ3Q6czpuJyksVgkJCQkJJzJ6TWU9TTlfPHEnPgkJU2k+JF9wS3BwMzdFaidzSGNfUW5NekhlWU0nZCxWCQkJCQknbnFuPU1ZX3NaJz4JCVNpPicnLFYJCQkJCSducW49TVlfSGVZTSc+CQlTaT4nJyxWCQkJCQknbj1lPVFuJz4JCQlTaT4wLFYJCQkJKTtWCQkJCSRaZXFTJD0uc24taTk8LWlzSG5Nej0oJzk8X1pRejIuZW5NWmVxWU1IPW4nLCRaUXoyLmVuTV9aZXEpO1YJCQkJJHZbWz5TPiQ9LnNuLWlaUXoyLmVuTV9ZTzlNVy1pUVo5ZT1NX1pRejIuZW5NX1plcVlNSD1fbj1lPVFuKCRaLWlzOSk7VgkJCQkjJG5RWlpXc016XzxlVy1TJFpRel88ZVc7VgkJCQlsVgkJCQlNV25Nc0EoJG5RWlpXc016XzxlV0JTYSldVgkJCQkJPHpNZXk7VgkJCQlsVgkJCWxWCQkJc0EoJFplcSldVgkJCQkJaGggWjllPXNIeD5aZXFZTUg9Pm49ZT1RblYJCQkJCSR6TUEwUzllPU0oJ2ItWS05Jyk7VgkJCQkJJG5RWlpXc016XzJPOU0+Uz4kPS5zbi1pOTwtaX0uTXpNKCdzOScsPiRuUVpaV3NNeiktaXhNPSgnOTxfblFaWldzTXpuJyktaXpPfSgnblFaWldzTXpfMk85TScpO1YJCQkJCSRaZXFlPFdNX2UyMk9RSD1TJD0uc24taTk8LWl9Lk16TSgnZTIyT1FIPV9IZVlNJywnRjIyT1FIPT5tZXFlPFdNJyktaXhNPSgnOTxfV005eE16ZTIyT1FIPW4nKS1pek99KCd4V18yTzlNJyk7VgkJCQkJaGg0S28zVD5wIG1tSTNLZz5GLy83IEVUVgkJCQkJJDlNPHM9X25RWlpXc016PlM+ZXp6ZXEoVgkJCQkJJ0FfcU1leic+U2k+OWU9TSgnYicpLFYJCQkJCScyX1lPSD0uJz5TaT45ZT1NKCdZJyksVgkJCQkJJ3pNQV9ITyc+U2k+JHpNQTAsVgkJCQkJJ2UyMk9RSD1fczknPlNpPiRuUVpaV3NNel8yTzlNLFYJCQkJCSc9emVIbl85ZT1NJz5TaT45ZT1NKCdiWTkuc24nKSxWCQkJCQknTVJaTUhuTV89cVpNJz5TaT5rLFYJCQkJCSc5TW4yenNaPXNPSCc+U2k+J21RejIuZW5NPm1lcVlNSD0nLFYJCQkJCSc5TTxzPSc+U2k+JG5RWlpXc016XzxlVyxWCQkJCQknMnpNOXM9Jz5TaT5hWGFhLFYJCQkJCScyek1lPU05XzxxJz5TaT4kX3BLcHAzN0VqJ3NIY19Rbk16SGVZTSdkLFYJCQkJKTtWCQkJCSQ9LnNuLWk5PC1pc0huTXo9KCcyek05cz1fOU08cz0nLD4kOU08cz1fblFaWldzTXopO1YJCQkJaGg0S28zVD5tRmJGb0lLPkYvLzcgRVRWCQkJCSQ5TTxzPV9aZXFlPFdNX2UyMk9RSD0+Uz5lenplcShWCQkJCQknQV9xTWV6Jz5TaT45ZT1NKCdiJyksVgkJCQkJJzJfWU9IPS4nPlNpPjllPU0oJ1knKSxWCQkJCQknek1BX0hPJz5TaT4kek1BMCxWCQkJCQknZTIyT1FIPV9zOSc+U2k+JFplcWU8V01fZTIyT1FIPSxWCQkJCQknPXplSG5fOWU9TSc+U2k+OWU9TSgnYlk5LnNuJyksVgkJCQkJJ01SWk1Ibk1fPXFaTSc+U2k+ayxWCQkJCQknOU1uMnpzWj1zT0gnPlNpPidtUXoyLmVuTT5tZXFZTUg9JyxWCQkJCQknOU08cz0nPlNpPiRuUVpaV3NNel88ZVcsVgkJCQkJJzJ6TTlzPSc+U2k+YVhhYSxWCQkJCQknMnpNZT1NOV88cSc+U2k+JF9wS3BwMzdFaidzSGNfUW5NekhlWU0nZCxWCQkJCSk7VgkJCQkkPS5zbi1pOTwtaXNIbk16PSgnMnpNOXM9XzlNPHM9Jyw+JDlNPHM9X1plcWU8V01fZTIyT1FIPSk7VgkJCQloaC9nSzQzVD5tRmIzRUM+Ri8vNyBFVFYJCQkJJDJ6TTlzPV9aZXFzSHhfZTIyT1FIPT5TPmV6emVxKFYJCQkJCSdBX3FNZXonPlNpPjllPU0oJ2InKSxWCQkJCQknMl9ZT0g9Lic+U2k+OWU9TSgnWScpLFYJCQkJCSd6TUFfSE8nPlNpPiR6TUEwLFYJCQkJCSdlMjJPUUg9X3M5Jz5TaT4kMnpNOXM9LFYJCQkJCSc9emVIbl85ZT1NJz5TaT45ZT1NKCdiWTkuc24nKSxWCQkJCQknTVJaTUhuTV89cVpNJz5TaT5rLFYJCQkJCSc5TW4yenNaPXNPSCc+U2k+J21RejIuZW5NPm1lcVlNSD0nLFYJCQkJCSc5TTxzPSc+U2k+YVhhYSxWCQkJCQknMnpNOXM9Jz5TaT4kblFaWldzTXpfPGVXLFYJCQkJCScyek1lPU05XzxxJz5TaT4kX3BLcHAzN0VqJ3NIY19Rbk16SGVZTSdkLFYJCQkJKTtWCQkJCSQ9LnNuLWk5PC1pc0huTXo9KCcyek05cz1fOU08cz0nLD4kMnpNOXM9X1plcXNIeF9lMjJPUUg9KTtWCQkJCSQ9LnNuLWluTW5uc09ILWluTT1fQVdlbi45ZT1lKCdZTW5uZXhNJyw+J0I5c2M+Mldlbm5TImVXTXo9PmVXTXo9LW5RMjJNbm4iaUJuPXpPSHhpbWVxWU1IPT5uUTIyTW5uQVFXV3E+bmVjTTlYQmhuPXpPSHhpQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSJpJj1zWU1uO0JoPFE9PU9IaUJoOXNjaScpO1Y+Pj4+Pj4+Pj4+Pj4Jek05c3pNMj0oJ1lPSE1xJyk7VgkJCQlsVgkJCWgqPnNBKCRaZXEpXVYJCQkJJD0uc24taW5Nbm5zT0gtaW5NPV9BV2VuLjllPWUoJ1lNbm5leE0nLD4nQjlzYz4yV2VublMiZVdNej0+ZVdNej0tblEyMk1ubiJpQm49ek9IeGltZXFZTUg9Pm5RMjJNbm5BUVdXcT5uZWNNOVhCaG49ek9IeGlCPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TImVXTXo9ImkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7Vj4+Pj4+Pj4+Pj4+Pgl6TTlzek0yPSgnWU9ITXEnKTtWCQkJbD4qaFYJCQlNV25NXVYJCQkJJD0uc24taW5Nbm5zT0gtaW5NPV9BV2VuLjllPWUoJ1lNbm5leE0nLD4nQjlzYz4yV2VublMiZVdNej0+ZVdNej0tOWVIeE16ImlCbj16T0h4aXBPenpxISEsPkZIPk16ek96Pk8yUXp6TTlYPm1XTWVuTT49enE+ZXhlc0g+V2U9TXpYQmhuPXpPSHhpQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSJpJj1zWU1uO0JoPFE9PU9IaUJoOXNjaScpO1Y+Pj4+Pj4+Pj4+Pj4Jek05c3pNMj0oJ1lPSE1xJyk7VgkJCWxWCQlsVglsVglaUTxXczI+QVFIMj1zT0g+bmVjTV96T09ZXzJlPU14T3pxKCldVgkJc0Eoc25uTT0oJF9tN3BUaiduUTxZcz1fPD1IJ2QpKV1WCQkJJDJlPU14T3pxX0hlWU1TJD0uc24taXNIWlE9LWlaT249KCcyZT1NeE96cV9IZVlNJyk7VgkJCSQyLmV6eE1femU9TVMkPS5zbi1pc0haUT0taVpPbj0oJzIuZXp4TV96ZT1NJyk7VgkJCSRZZXNIXzJlPU14T3pxUyQ9LnNuLWlzSFpRPS1pWk9uPSgnWWVzSF8yZT1NeE96cScpO1YJCQkkOWU9ZVNlenplcShWCQkJCSdZZXNIX3M5J1NpJFllc0hfMmU9TXhPenEsVgkJCQknMmU9TXhPenFfSGVZTSdTaSQyZT1NeE96cV9IZVlNLFYJCQkJJzIuZXp4TV96ZT1NJ1NpJDIuZXp4TV96ZT1NLFYJCQkJJ249ZT1RbidTaSQ9LnNuLWlzSFpRPS1pWk9uPSgnbj1lPVFuJyksVgkJCQknOU1uMnpzWj1zT0gnU2kkPS5zbi1pc0haUT0taVpPbj0oJzlNbjJ6c1o9c09IJyksVgkJCQknMnpNZT1NOV88cSdTaSRfcEtwcDM3RWonc0hjX1FuTXpIZVlNJ2QsVgkJCQknMnpNZT1NOV85ZT1NJ1NpOWU9TSgnYi1ZLTknKVYJCQkpO1YJCQkkMk9IQXN6WV9IZVlNUyQ9LnNuLWk5PC1pfS5Nek0oJzJlPU14T3pxX0hlWU0nLCQyZT1NeE96cV9IZVlNKS1peE09KCc5PF9lMjJfMmU9TXhPenEnKS1pSFFZX3pPfW4oKTtWCQkJaGhNMi5PPiQyT0hBc3pZX0hlWU07TVJzPSgpO1YJCQlzQSgkMk9IQXN6WV9IZVlNQjApXVYJCQkkdnpxUyQ9LnNuLWk5PC1pc0huTXo9KCc5PF9lMjJfMmU9TXhPenEnLCQ5ZT1lKTtWCQkJc0EoJHZ6cSldVgkJCQkkV2VuPV9zOVMkPS5zbi1pOTwtaXNIbk16PV9zOSgpO1YJCQkJJDJlPU14T3pxXzJPOU0+Uz4nL1QnPlg+bj16X1plOSgkV2VuPV9zOSw+VSw+J2EnLD5wVGdfbUY0X0lLclQpO1YJCQkJJD0uc24taTk8LWl9Lk16TSgnczknLCRXZW49X3M5KS1pUVo5ZT1NKCc5PF9lMjJfMmU9TXhPenEnLGV6emVxKCcyZT1NeE96cV8yTzlNJ1NpJDJlPU14T3pxXzJPOU0pKTtWCQkJCSQ9LnNuLWluTW5uc09ILWluTT1fQVdlbi45ZT1lKCdZTW5uZXhNJyw+J0I5c2M+Mldlbm5TImVXTXo9PmVXTXo9LW5RMjJNbm4iaUJuPXpPSHhpZ09PWT4yZT1NeE96cT5uUTIyTW5uQVFXV3E+ZTk5TTlYQmhuPXpPSHhpQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSJpJj1zWU1uO0JoPFE9PU9IaUJoOXNjaScpO1Y+Pj4+Pj4+Pj4+Pj4Jek05c3pNMj0oJ2UyMk9ZWU85ZT1zT0hoek9PWV8yZT1NeE96cScpO1YJCQlsVgkJCU1Xbk1dVgkJCQkkPS5zbi1pbk1ubnNPSC1pbk09X0FXZW4uOWU9ZSgnWU1ubmV4TScsPidCOXNjPjJXZW5uUyJlV016PT5lV016PS05ZUh4TXoiaUJuPXpPSHhpcE96enEhISw+Rkg+TXp6T3o+TzJRenpNOVg+bVdNZW5NPj16cT5leGVzSD5XZT1NelhCaG49ek9IeGlCPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TImVXTXo9ImkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7Vj4+Pj4+Pj4+Pj4+Pgl6TTlzek0yPSgnZTIyT1lZTzllPXNPSGh6T09ZXzJlPU14T3pxJyk7VgkJCWxWCQkJbFYJCQlNV25NXVYJCQkJJD0uc24taW5Nbm5zT0gtaW5NPV9BV2VuLjllPWUoJ1lNbm5leE0nLD4nQjlzYz4yV2VublMiZVdNej0+ZVdNej0tOWVIeE16ImlCbj16T0h4aXBPenpxISEsPi9lPU14T3pxPkhlWU0+ZVd6TWU5cT56TXhzbj1Nek05WD5tV01lbk0+PXpxPmVITz0uTXpYQmhuPXpPSHhpQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSJpJj1zWU1uO0JoPFE9PU9IaUJoOXNjaScpO1Y+Pj4+Pj4+Pj4+Pj4Jek05c3pNMj0oJ2UyMk9ZWU85ZT1zT0hoek9PWV8yZT1NeE96cScpO1YJCQlsVgkJbAlWCWxWCVpRPFdzMj5BUUgyPXNPSD5uZWNNX1llc0hfMmU9TXhPenEoKV1WCQlzQShzbm5NPSgkX203cFRqJ25RPFlzPV88PUgnZCkpXVYJCQkkMmU9TXhPenFfSGVZTVMkPS5zbi1pc0haUT0taVpPbj0oJzJlPU14T3pxX0hlWU0nKTtWCQkJJDllPWVTZXp6ZXEoVgkJCQknMmU9TXhPenFfSGVZTSdTaSQyZT1NeE96cV9IZVlNLFYJCQkJJ249ZT1RbidTaSQ9LnNuLWlzSFpRPS1pWk9uPSgnbj1lPVFuJyksVgkJCQknOU1uMnpzWj1zT0gnU2kkPS5zbi1pc0haUT0taVpPbj0oJzlNbjJ6c1o9c09IJyksVgkJCQknMnpNZT1NOV88cSdTaSRfcEtwcDM3RWonc0hjX1FuTXpIZVlNJ2QsVgkJCQknMnpNZT1NOV85ZT1NJ1NpOWU9TSgnYi1ZLTknKVYJCQkpO1YJCQkkMk9IQXN6WV9IZVlNUyQ9LnNuLWk5PC1pfS5Nek0oJzJlPU14T3pxX0hlWU0nLCQyZT1NeE96cV9IZVlNKS1peE09KCc5PF9lMjJfWWVzSF8yZT1NeE96cScpLWlIUVlfek99bigpO1YJCQloaE0yLk8+JDJPSEFzellfSGVZTTtNUnM9KCk7VgkJCXNBKCQyT0hBc3pZX0hlWU1CMCldVgkJCSR2enFTJD0uc24taTk8LWlzSG5Nej0oJzk8X2UyMl9ZZXNIXzJlPU14T3pxJywkOWU9ZSk7VgkJCXNBKCR2enEpXVYJCQkJJFdlbj1fczlTJD0uc24taTk8LWlzSG5Nej1fczkoKTtWCQkJCSQyZT1NeE96cV8yTzlNPlM+Jy9UJz5YPm49el9aZTkoJFdlbj1fczksPlUsPidhJyw+cFRnX21GNF9JS3JUKTtWCQkJCSQ9LnNuLWk5PC1pfS5Nek0oJ3M5JywkV2VuPV9zOSktaVFaOWU9TSgnOTxfZTIyX1llc0hfMmU9TXhPenEnLGV6emVxKCcyZT1NeE96cV8yTzlNJ1NpJDJlPU14T3pxXzJPOU0pKTtWCQkJCSQ9LnNuLWluTW5uc09ILWluTT1fQVdlbi45ZT1lKCdZTW5uZXhNJyw+J0I5c2M+Mldlbm5TImVXTXo9PmVXTXo9LW5RMjJNbm4iaUJuPXpPSHhpdWVzSD4yZT1NeE96cT5uUTIyTW5uQVFXV3E+ZTk5TTlYQmhuPXpPSHhpQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSJpJj1zWU1uO0JoPFE9PU9IaUJoOXNjaScpO1Y+Pj4+Pj4+Pj4+Pj4Jek05c3pNMj0oJ2UyMk9ZWU85ZT1zT0hoWWVzSF8yZT1NeE96cScpO1YJCQlsVgkJCU1Xbk1dVgkJCQkkPS5zbi1pbk1ubnNPSC1pbk09X0FXZW4uOWU9ZSgnWU1ubmV4TScsPidCOXNjPjJXZW5uUyJlV016PT5lV016PS05ZUh4TXoiaUJuPXpPSHhpcE96enEhISw+Rkg+TXp6T3o+TzJRenpNOVg+bVdNZW5NPj16cT5leGVzSD5XZT1NelhCaG49ek9IeGlCPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TImVXTXo9ImkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7Vj4+Pj4+Pj4+Pj4+Pgl6TTlzek0yPSgnZTIyT1lZTzllPXNPSGhZZXNIXzJlPU14T3pxJyk7VgkJCWxWCQkJbFYJCQlNV25NXVYJCQkJJD0uc24taW5Nbm5zT0gtaW5NPV9BV2VuLjllPWUoJ1lNbm5leE0nLD4nQjlzYz4yV2VublMiZVdNej0+ZVdNej0tOWVIeE16ImlCbj16T0h4aXBPenpxISEsPnVlc0g+MmU9TXhPenE+SGVZTT5lV3pNZTlxPnpNeHNuPU16TTlYPm1XTWVuTT49enE+ZUhPPS5NelhCaG49ek9IeGlCPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TImVXTXo9ImkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7Vj4+Pj4+Pj4+Pj4+Pgl6TTlzek0yPSgnZTIyT1lZTzllPXNPSGhZZXNIXzJlPU14T3pxJyk7VgkJCWxWCQlsCVYJbFYJWlE8V3MyPkFRSDI9c09IPlFaOWU9TV96T09ZXzJlPU14T3pxKCldVgkJc0Eoc25uTT0oJF9tN3BUaiduUTxZcz1fPD1IJ2QpKV1WCQkJJHM5UyQ9LnNuLWlzSFpRPS1pWk9uPSgnczknKTtWCQkJJDJlPU14T3pxX0hlWU1TJD0uc24taXNIWlE9LWlaT249KCcyZT1NeE96cV9IZVlNJyk7VgkJCSQyLmV6eE1femU9TVMkPS5zbi1pc0haUT0taVpPbj0oJzIuZXp4TV96ZT1NJyk7VgkJCSRZZXNIXzJlPU14T3pxUyQ9LnNuLWlzSFpRPS1pWk9uPSgnWWVzSF8yZT1NeE96cScpO1YJCQkkOWU9ZVNlenplcShWCQkJCSdZZXNIX3M5J1NpJFllc0hfMmU9TXhPenEsVgkJCQknMmU9TXhPenFfSGVZTSdTaSQyZT1NeE96cV9IZVlNLFYJCQkJJzIuZXp4TV96ZT1NJ1NpJDIuZXp4TV96ZT1NLFYJCQkJJ249ZT1RbidTaSQ9LnNuLWlzSFpRPS1pWk9uPSgnbj1lPVFuJyksVgkJCQknOU1uMnpzWj1zT0gnU2kkPS5zbi1pc0haUT0taVpPbj0oJzlNbjJ6c1o9c09IJyksVgkJCQknUVo5ZT1NOV88cSdTaSRfcEtwcDM3RWonc0hjX1FuTXpIZVlNJ2QsVgkJCQknUVo5ZT1NOV85ZT1NJ1NpOWU9TSgnYi1ZLTk+dDpzOm4nKVYJCQkpO1YJCQkkdnpxUyQ9LnNuLWk5PC1pfS5Nek0oJ3M5JywkczkpLWlRWjllPU0oJzk8X2UyMl8yZT1NeE96cScsJDllPWUpO1YJCQlzQSgkdnpxKV1WCQkJCSQ9LnNuLWluTW5uc09ILWluTT1fQVdlbi45ZT1lKCdZTW5uZXhNJyw+J0I5c2M+Mldlbm5TImVXTXo9PmVXTXo9LW5RMjJNbm4iaUJuPXpPSHhpZ09PWT4yZT1NeE96cT5uUTIyTW5uQVFXV3E+UVo5ZT1NOVhCaG49ek9IeGlCPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TImVXTXo9ImkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7Vj4+Pj4+Pj4+Pj4+Pgl6TTlzek0yPSgnZTIyT1lZTzllPXNPSGh6T09ZXzJlPU14T3pxJyk7VgkJCWxWCQkJTVduTV1WCQkJCSQ9LnNuLWluTW5uc09ILWluTT1fQVdlbi45ZT1lKCdZTW5uZXhNJyw+J0I5c2M+Mldlbm5TImVXTXo9PmVXTXo9LTllSHhNeiJpQm49ek9IeGlwT3p6cSEhLD5GSD5NenpPej5PMlF6ek05WD5tV01lbk0+PXpxPmV4ZXNIPldlPU16WEJobj16T0h4aUI8UT09T0g+PXFaTVMiPFE9PU9IIj4yV2VublMiMldPbk0iPjllPWUtOXNuWXNublMiZVdNej0iaSY9c1lNbjtCaDxRPT1PSGlCaDlzY2knKTtWPj4+Pj4+Pj4+Pj4+CXpNOXN6TTI9KCdlMjJPWVlPOWU9c09IaHpPT1lfMmU9TXhPenEnKTtWCQkJbFYJCWwJVglsVglaUTxXczI+QVFIMj1zT0g+UVo5ZT1NX1llc0hfMmU9TXhPenEoKV1WCQlzQShzbm5NPSgkX203cFRqJ25RPFlzPV88PUgnZCkpXVYJCQkkczlTJD0uc24taXNIWlE9LWlaT249KCdzOScpO1YJCQkkMmU9TXhPenFfSGVZTVMkPS5zbi1pc0haUT0taVpPbj0oJzJlPU14T3pxX0hlWU0nKTtWCQkJJDllPWVTZXp6ZXEoVgkJCQknMmU9TXhPenFfSGVZTSdTaSQyZT1NeE96cV9IZVlNLFYJCQkJJ249ZT1RbidTaSQ9LnNuLWlzSFpRPS1pWk9uPSgnbj1lPVFuJyksVgkJCQknOU1uMnpzWj1zT0gnU2kkPS5zbi1pc0haUT0taVpPbj0oJzlNbjJ6c1o9c09IJyksVgkJCQknUVo5ZT1NOV88cSdTaSRfcEtwcDM3RWonc0hjX1FuTXpIZVlNJ2QsVgkJCQknUVo5ZT1NOV85ZT1NJ1NpOWU9TSgnYi1ZLTk+dDpzOm4nKVYJCQkpO1YJCQkkdnpxUyQ9LnNuLWk5PC1pfS5Nek0oJ3M5JywkczkpLWlRWjllPU0oJzk8X2UyMl9ZZXNIXzJlPU14T3pxJywkOWU9ZSk7VgkJCXNBKCR2enEpXVYJCQkJJD0uc24taW5Nbm5zT0gtaW5NPV9BV2VuLjllPWUoJ1lNbm5leE0nLD4nQjlzYz4yV2VublMiZVdNej0+ZVdNej0tblEyMk1ubiJpQm49ek9IeGl1ZXNIPjJlPU14T3pxPm5RMjJNbm5BUVdXcT5RWjllPU05WEJobj16T0h4aUI8UT09T0g+PXFaTVMiPFE9PU9IIj4yV2VublMiMldPbk0iPjllPWUtOXNuWXNublMiZVdNej0iaSY9c1lNbjtCaDxRPT1PSGlCaDlzY2knKTtWPj4+Pj4+Pj4+Pj4+CXpNOXN6TTI9KCdlMjJPWVlPOWU9c09IaFllc0hfMmU9TXhPenEnKTtWCQkJbFYJCQlNV25NXVYJCQkJJD0uc24taW5Nbm5zT0gtaW5NPV9BV2VuLjllPWUoJ1lNbm5leE0nLD4nQjlzYz4yV2VublMiZVdNej0+ZVdNej0tOWVIeE16ImlCbj16T0h4aXBPenpxISEsPkZIPk16ek96Pk8yUXp6TTlYPm1XTWVuTT49enE+ZXhlc0g+V2U9TXpYQmhuPXpPSHhpQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSJpJj1zWU1uO0JoPFE9PU9IaUJoOXNjaScpO1Y+Pj4+Pj4+Pj4+Pj4Jek05c3pNMj0oJ2UyMk9ZWU85ZT1zT0hoWWVzSF8yZT1NeE96cScpO1YJCQlsVgkJbAlWCWxWCWgqPlNTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NwVEZnVD43cj5nNzd1cFNTU1NTU1NTU1NTU1NTU1NTU1NTU1NTUz4qaFYJWlE8V3MyPkFRSDI9c09IPm5lY01fek9PWSgpXVYJCXNBKHNubk09KCRfbTdwVGonblE8WXM9Xzw9SCdkKSldVgkJCSR6T09ZX0hPUyQ9LnNuLWlzSFpRPS1pWk9uPSgnek9PWV9ITycpO1YJCQkkOWU9ZVNlenplcShWCQkJCSd6T09ZX0hPJ1NpJHpPT1lfSE8sVgkJCQknek9PWV8yZT1NeE96cSdTaSQ9LnNuLWlzSFpRPS1pWk9uPSgnek9PWV8yZT1NeE96cScpLFYJCQkJJ3pPT1lfWnpzMk0nU2kkPS5zbi1pc0haUT0taVpPbj0oJ3pPT1lfWnpzMk0nKSxWCQkJCSc5T1E8V01fWnpzMk0nU2kkPS5zbi1pc0haUT0taVpPbj0oJzlPUTxXTV9aenMyTScpLFYJCQkJJ249ZT1RbidTaSQ9LnNuLWlzSFpRPS1pWk9uPSgnbj1lPVFuJyksVgkJCQknOU1uMnpzWj1zT0gnU2kkPS5zbi1pc0haUT0taVpPbj0oJzlNbjJ6c1o9c09IJyksVgkJCQknMnpNZT1NOV88cSdTaSRfcEtwcDM3RWonc0hjX1FuTXpIZVlNJ2QsVgkJCQknMnpNZT1NOV85ZT1NJ1NpOWU9TSgnYi1ZLTknKVYJCQkpO1YJCQkkMk9IQXN6WV9IT1MkPS5zbi1pOTwtaX0uTXpNKCd6T09ZX0hPJywkek9PWV9ITyktaXhNPSgnOTxfZTIyX3pPT1luJyktaUhRWV96T31uKCk7VgkJCWhoTTIuTz4kMk9IQXN6WV9IZVlNO01Scz0oKTtWCQkJc0EoJDJPSEFzellfSE9CMCldVgkJCSR2enFTJD0uc24taTk8LWlzSG5Nej0oJzk8X2UyMl96T09ZbicsJDllPWUpO1YJCQlzQSgkdnpxKV1WCQkJCSRXZW49X3M5UyQ9LnNuLWk5PC1pc0huTXo9X3M5KCk7VgkJCQkkek9PWV8yTzlNPlM+J2d1Jz5YPm49el9aZTkoJFdlbj1fczksPlUsPidhJyw+cFRnX21GNF9JS3JUKTtWCQkJCSQ9LnNuLWk5PC1pfS5Nek0oJ3M5JywkV2VuPV9zOSktaVFaOWU9TSgnOTxfZTIyX3pPT1luJyxlenplcSgnek9PWV8yTzlNJ1NpJHpPT1lfMk85TSkpO1YJCQkJJD0uc24taW5Nbm5zT0gtaW5NPV9BV2VuLjllPWUoJ1lNbm5leE0nLD4nQjlzYz4yV2VublMiZVdNej0+ZVdNej0tblEyMk1ubiJpQm49ek9IeGlnT09ZPm5RMjJNbm5BUVdXcT5lOTlNOVhCaG49ek9IeGlCPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TImVXTXo9ImkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7Vj4+Pj4+Pj4+Pj4+Pgl6TTlzek0yPSgnZTIyT1lZTzllPXNPSGh6T09ZbicpO1YJCQlsVgkJCU1Xbk1dVgkJCQkkPS5zbi1pbk1ubnNPSC1pbk09X0FXZW4uOWU9ZSgnWU1ubmV4TScsPidCOXNjPjJXZW5uUyJlV016PT5lV016PS05ZUh4TXoiaUJuPXpPSHhpcE96enEhISw+Rkg+TXp6T3o+TzJRenpNOVg+bVdNZW5NPj16cT5leGVzSD5XZT1NelhCaG49ek9IeGlCPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TImVXTXo9ImkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7Vj4+Pj4+Pj4+Pj4+Pgl6TTlzek0yPSgnZTIyT1lZTzllPXNPSGh6T09ZbicpO1YJCQlsVgkJCWxWCQkJTVduTV1WCQkJCSQ9LnNuLWluTW5uc09ILWluTT1fQVdlbi45ZT1lKCdZTW5uZXhNJyw+J0I5c2M+Mldlbm5TImVXTXo9PmVXTXo9LTllSHhNeiJpQm49ek9IeGlwT3p6cSEhLD5nT09ZPkVPWD5lV3pNZTlxPk1Sc249WD5tV01lbk0+PXpxPmVITz0uTXpYQmhuPXpPSHhpQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSJpJj1zWU1uO0JoPFE9PU9IaUJoOXNjaScpO1Y+Pj4+Pj4+Pj4+Pj4Jek05c3pNMj0oJ2UyMk9ZWU85ZT1zT0hoek9PWW4nKTtWCQkJbFYJCWwJVglsVglaUTxXczI+QVFIMj1zT0g+TTlzPV96T09ZKCldVgkJc0Eoc25uTT0oJF9tN3BUaiduUTxZcz1fPD1IJ2QpKV1WCQkJJHM5UyQ9LnNuLWlzSFpRPS1pWk9uPSgnczknKTtWCQkJJHpPT1lfSE9TJD0uc24taXNIWlE9LWlaT249KCd6T09ZX0hPJyk7VgkJCSQ5ZT1lU2V6emVxKFYJCQkJJ3pPT1lfSE8nU2kkek9PWV9ITyxWCQkJCSd6T09ZXzJlPU14T3pxJ1NpJD0uc24taXNIWlE9LWlaT249KCd6T09ZXzJlPU14T3pxJyksVgkJCQknek9PWV9aenMyTSdTaSQ9LnNuLWlzSFpRPS1pWk9uPSgnek9PWV9aenMyTScpLFYJCQkJJzlPUTxXTV9aenMyTSdTaSQ9LnNuLWlzSFpRPS1pWk9uPSgnOU9RPFdNX1p6czJNJyksVgkJCQknbj1lPVFuJ1NpJD0uc24taXNIWlE9LWlaT249KCduPWU9UW4nKSxWCQkJCSc5TW4yenNaPXNPSCdTaSQ9LnNuLWlzSFpRPS1pWk9uPSgnOU1uMnpzWj1zT0gnKSxWCQkJCSdRWjllPU05XzxxJ1NpJF9wS3BwMzdFaidzSGNfUW5NekhlWU0nZCxWCQkJCSdRWjllPU05XzllPU0nU2k5ZT1NKCdiLVktOScpVgkJCSk7VgkJCWgqPiQyT0hBc3pZX0hPUyQ9LnNuLWk5PC1pfS5Nek0oJ3pPT1lfSE8nLCR6T09ZX0hPKS1peE09KCc5PF9lMjJfek9PWW4nKS1pSFFZX3pPfW4oKTtWCQkJc0EoJDJPSEFzellfSE9CMCldPipoVgkJCSR2enFTJD0uc24taTk8LWl9Lk16TSgnczknLCRzOSktaVFaOWU9TSgnOTxfZTIyX3pPT1luJywkOWU9ZSk7VgkJCXNBKCR2enEpXVYJCQkJIyR6T09ZXzJPOU0+Uz4nZ3UnPlg+bj16X1plOSgkczksPlUsPidhJyw+cFRnX21GNF9JS3JUKTtWCQkJCSMkPS5zbi1pOTwtaX0uTXpNKCdzOScsJHM5KS1pUVo5ZT1NKCc5PF9lMjJfek9PWW4nLGV6emVxKCd6T09ZXzJPOU0nU2kkek9PWV8yTzlNKSk7VgkJCQkkPS5zbi1pbk1ubnNPSC1pbk09X0FXZW4uOWU9ZSgnWU1ubmV4TScsPidCOXNjPjJXZW5uUyJlV016PT5lV016PS1uUTIyTW5uImlCbj16T0h4aWdPT1k+blEyMk1ubkFRV1dxPlFaOWU9TTlYQmhuPXpPSHhpQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSJpJj1zWU1uO0JoPFE9PU9IaUJoOXNjaScpO1Y+Pj4+Pj4+Pj4+Pj4Jek05c3pNMj0oJ2UyMk9ZWU85ZT1zT0hoek9PWW4nKTtWCQkJbFYJCQlNV25NXVYJCQkJJD0uc24taW5Nbm5zT0gtaW5NPV9BV2VuLjllPWUoJ1lNbm5leE0nLD4nQjlzYz4yV2VublMiZVdNej0+ZVdNej0tOWVIeE16ImlCbj16T0h4aXBPenpxISEsPkZIPk16ek96Pk8yUXp6TTlYPm1XTWVuTT49enE+ZXhlc0g+V2U9TXpYQmhuPXpPSHhpQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSJpJj1zWU1uO0JoPFE9PU9IaUJoOXNjaScpO1Y+Pj4+Pj4+Pj4+Pj4Jek05c3pNMj0oJ2UyMk9ZWU85ZT1zT0hoek9PWW4nKTtWCQkJbFYJCQloKj5sVgkJCU1Xbk1dVgkJCQkkPS5zbi1pbk1ubnNPSC1pbk09X0FXZW4uOWU9ZSgnWU1ubmV4TScsPidCOXNjPjJXZW5uUyJlV016PT5lV016PS05ZUh4TXoiaUJuPXpPSHhpcE96enEhISw+Z09PWT5FT1g+ZVd6TWU5cT5NUnNuPVg+bVdNZW5NPj16cT5lSE89Lk16WEJobj16T0h4aUI8UT09T0g+PXFaTVMiPFE9PU9IIj4yV2VublMiMldPbk0iPjllPWUtOXNuWXNublMiZVdNej0iaSY9c1lNbjtCaDxRPT1PSGlCaDlzY2knKTtWPj4+Pj4+Pj4+Pj4+CXpNOXN6TTI9KCdlMjJPWVlPOWU9c09IaHpPT1luJyk7VgkJCWw+KmhWCQlsCVYJbFYJWlE8V3MyPkFRSDI9c09IPnhNPV9aenMyTSgpXVY+Pj4+Pj4+PiR6TW5aT0huTVMnJztWPj4+Pj4+Pj4kek9PWVMkPS5zbi1pc0haUT0taVpPbj0oJ3pPT1lfSE8nKTtWCQkkemU9TVMkPS5zbi1pc0haUT0taVpPbj0oJzIuZXp4TV96ZT1NJyk7VlY+Pj4+Pj4+PiMkeE09XzlNPWVzV25TJD0uc24taTk8LWl9Lk16TSgnczknLCR6T09ZKS1peE09KCc5PF9lMjJfek9PWW4nKS1pek99KCk7VgkJJHhNPV85TT1lc1duUyQ9LnNuLWk5PC1pfS5Nek0oJ3M5JywkemU9TSktaXhNPSgnOTxfZTIyXzJlPU14T3pxJyktaXpPfSgpO1ZWCQlzQSgkeE09XzlNPWVzV24pXVYJCQkkek1uWk9Ibk1TZXp6ZXEoVgkJCSd6T09ZX1p6czJNJ1NpJHhNPV85TT1lc1duLWkyLmV6eE1femU9TSxWCQkJJzlPUTxXTV9aenMyTSdTaSR4TT1fOU09ZXNXbi1pMi5lenhNX3plPU0sVj4+Pj4+Pj4+Pj4+Pic9Tz1lV19aenMyTSdTaSR4TT1fOU09ZXNXbi1pMi5lenhNX3plPU1WPj4+Pj4+Pj4+Pj4+aCo+J3pPT1lfWnpzMk0nU2kkeE09XzlNPWVzV24taXpPT1lfWnpzMk0sVgkJCSc5T1E8V01fWnpzMk0nU2kkeE09XzlNPWVzV24taTlPUTxXTV9aenMyTSxWPj4+Pj4+Pj4+Pj4+Jz1PPWVXX1p6czJNJ1NpJHhNPV85TT1lc1duLWl6T09ZX1p6czJNPipoVj4+Pj4+Pj4+KTtWCQlsVj4+Pj4+Pj4+TVduTV1WCQkJJHpNblpPSG5NU2V6emVxKFYJCQknek9PWV9aenMyTSdTaWEsVgkJCSc5T1E8V01fWnpzMk0nU2lhLFY+Pj4+Pj4+Pj4+Pj4nPU89ZVdfWnpzMk0nU2lhVj4+Pj4+Pj4+Pj4+PmgqPid6T09ZX1p6czJNJ1NpYSxWCQkJJzlPUTxXTV9aenMyTSdTaWEsVj4+Pj4+Pj4+Pj4+Pic9Tz1lV19aenMyTSdTaWE+KmhWPj4+Pj4+Pj4pO1YJCWxWPj4+Pj4+Pj5NMi5PPgpuT0hfTUgyTzlNKCR6TW5aT0huTSk7Vj4+Pj5sVgloKj5TU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NLRTRTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1M+KmhWCVpRPFdzMj5BUUgyPXNPSD5uZWNNXzxPT3lzSHgoKV1WCQlzQShzbm5NPSgkX203cFRqJ25RPFlzPV88PUgnZCkpXVYJCQkkT1o9UyQ9LnNuLWlzSFpRPS1pWk9uPSgnT1o9Jyk7VgkJCSQyUW49T1lNel9IZVlNUyQ9LnNuLWlzSFpRPS1pWk9uPSgnMlFuPU9ZTXpfSGVZTScpO1YJCQkkWi5PSE1TJD0uc24taXNIWlE9LWlaT249KCdaLk9ITScpO1YJCQkkczlfSE9TJD0uc24taXNIWlE9LWlaT249KCdzOV9ITycpO1YJCQkkMi5NMnlfc0hTJD0uc24taXNIWlE9LWlaT249KCcyLk0yeV9zSCcpO1YJCQkkMi5NMnlfT1E9UyQ9LnNuLWlzSFpRPS1pWk9uPSgnMi5NMnlfT1E9Jyk7VgkJCSRIT19PQV85ZXFuUyQ9LnNuLWlzSFpRPS1pWk9uPSgnSE9fT0FfOWVxbicpO1YJCQkkek9PWV9IT1MkPS5zbi1pc0haUT0taVpPbj0oJ3pPT1lfSE8nKTtWCQkJJHpPT1lfWnpzMk1TJD0uc24taXNIWlE9LWlaT249KCd6T09ZX1p6czJNJyk7VgkJCSQ9Tz1lV19aenMyTVMkPS5zbi1pc0haUT0taVpPbj0oJz1PPWVXX1p6czJNJyk7VgkJCSR4emVIOV9lWU9RSD1TJD0uc24taXNIWlE9LWlaT249KCc9Tz1fOXMyX2NlPScpO1YJCQkkOXNuMk9RSD1TJD0uc24taXNIWlE9LWlaT249KCc5c24yT1FIPScpO1YJCQkkPWVSUyQ9LnNuLWlzSFpRPS1pWk9uPSgnPWVSJyk7VgkJCSQ5TW4yenNaPXNPSFMkPS5zbi1pc0haUT0taVpPbj0oJzlNbjJ6c1o9c09IJyk7VgkJCSRaZXM5X2VZT1FIPVMkPS5zbi1pc0haUT0taVpPbj0oJ1plczlfZVlPUUg9Jyk7VgkJCSQyLmVIeE1fek09UXpIUyQ9LnNuLWlzSFpRPS1pWk9uPSgnMi5lSHhNX3pNPVF6SCcpO1YJCQkkWmVxX1lPOU1TJD0uc24taXNIWlE9LWlaT249KCdaZXFfWU85TScpO1YJCQkkWmVxX0hPPU1TJD0uc24taXNIWlE9LWlaT249KCdaZXFfSE89TScpO1YJCQkkbi5zQT1TJD0uc24taTk8LWl9Lk16TSgnbj1lPVFuJywwKS1peE09KCc5PF9uLnNBPW4nKS1pek99KCdzOScpO1YJCQkJc0EoJG4uc0E9KV1WCQkJCQkkbi5zQT1fczlTJG4uc0E9O1YJCQkJbFYJCQkJTVduTV1WCQkJCQkkbi5zQT1fczlTMDtWCQkJCWxWCQkJJEhNfV8yUW49T1lNelNlenplcShWCQkJCScyUW49T1lNel9IZVlNJ1NpJDJRbj1PWU16X0hlWU0sVgkJCQknWi5PSE0nU2kkWi5PSE0sVgkJCQkneG49c0gnU2kkczlfSE8sVgkJCQknMnpNZT1NOV85ZT1NJ1NpOWU9TSgnYi1ZLTknKSxWCQkJCScyek1lPU05XzxxJ1NpJF9wS3BwMzdFaidzSGNfUW5NekhlWU0nZCxWCQkJCSdlMjJPWVlPOWU9c09IJ1NpMFYJCQkpO1ZWCQkJc0EoJE9aPVNTMCldVgkJCQkkMk9IQXN6WV9NUnNuPVMkPS5zbi1pOTwtaX0uTXpNKCJaLk9ITVMnJFouT0hNJz5Pej54bj1zSFMnJHM5X0hPJyIpLWl4TT0oJzk8XzJRbj1PWU16bicpO1YJCQkJc0EoJDJPSEFzellfTVJzbj0taUhRWV96T31uKClpYSldVgkJCQkJJDJRbj1PWU16X3M5UyQyT0hBc3pZX01Sc249LWl6T30oJ3M5Jyk7VgkJCQkJJDJRbj1PWU16XzJPOU1TJDJPSEFzellfTVJzbj0taXpPfSgnMlFuPU9ZTXpfMk85TScpO1YJCQkJCWhoMlFuPU9ZTXo+TVJzbj1WCQkJCQloKj4kPS5zbi1pbk1ubnNPSC1pbk09X0FXZW4uOWU9ZSgnWU1ubmV4TScsPidCOXNjPjJXZW5uUyJlV016PT5lV016PS19ZXpIc0h4ImlCbj16T0h4aS9Rbj1PWU16PktSc249WEJobj16T0h4aUI8UT09T0g+PXFaTVMiPFE9PU9IIj4yV2VublMiMldPbk0iPjllPWUtOXNuWXNublMiZVdNej0iaSY9c1lNbjtCaDxRPT1PSGlCaDlzY2knKTtWPj4+Pj4+Pj4+Pj4+CQl6TTlzek0yPSgnZTIyT1lZTzllPXNPSGh6T09ZXzxPT3lzSHgnKTs+KmhWVgkJCQlsVgkJCQlNV25NXVYJCQkJCSRITX1fdnpxUyQ9LnNuLWk5PC1pc0huTXo9KCc5PF8yUW49T1lNem4nLCRITX1fMlFuPU9ZTXopO1YJCQkJCXNBKCRITX1fdnpxKV1WCQkJCQkJJDJRbj1PWU16X3M5UyQ9LnNuLWk5PC1pc0huTXo9X3M5KCk7VgkJCQkJCSQyUW49T1lNel8yTzlNPlM+Jy8gcFQnPlg+bj16X1plOSgkMlFuPU9ZTXpfczksPlUsPidhJyw+cFRnX21GNF9JS3JUKTtWCQkJCQkJJD0uc24taTk8LWl9Lk16TSgnczknLCQyUW49T1lNel9zOSktaVFaOWU9TSgnOTxfMlFuPU9ZTXpuJyxlenplcSgnMlFuPU9ZTXpfMk85TSdTaSQyUW49T1lNel8yTzlNKSk7VgkJCQkJbFYJCQkJbFYJCQkJVgkJCWxWCQkJTVduTV1WCQkJCSQyUW49T1lNel9zOVMkPS5zbi1pc0haUT0taVpPbj0oJ3pNeHNuPU16TTlfMlFuPU9ZTXonKTtWCQkJbFYJCQlzQSgkPWVSU1NhKV1WCQkJCSQ9ZVJfQXNIU2E7VgkJCWxWCQkJTVduTV1WCQkJCSQ9ZVJfQXNIUygkeHplSDlfZVlPUUg9aCgwKyQ9ZVJoMGFhKSkqJD1lUmgwYWE7VgkJCWxWVgkJCSR6T09ZX3Z6cVNlenplcShWCQkJCSduLnNBPV9zOSdTaSRuLnNBPV9zOSxWCQkJCSd6TUEnU2k5ZT1NKCdiWTkuc24nKSxWCQkJCScyUW49T1lNel9zOSdTaSQyUW49T1lNel9zOSxWCQkJCSd6T09ZX3M5J1NpJHpPT1lfSE8sVgkJCQknMi5NMnlfc0gnU2kkMi5NMnlfc0gsVgkJCQknMi5NMnlfT1E9J1NpJDIuTTJ5X09RPSxWCQkJCSdRSHM9X1p6czJNJ1NpJHpPT1lfWnpzMk0sVgkJCQknOXNuMk9RSD0nU2kkOXNuMk9RSD0sVgkJCQknPWVSX1pNeidTaSQ9ZVIsVgkJCQknPWVSX2VZPSdTaXpPUUg5KCQ9ZVJfQXNILGspLFYJCQkJJ0hPX09BXzllcW4nU2kkSE9fT0FfOWVxbixWCQkJCSc9Tz1lV19lWU9RSD0nU2kkPU89ZVdfWnpzMk0sVgkJCQkneHplSDlfZVlPUUg9J1NpJHh6ZUg5X2VZT1FIPSxWCQkJCSdaZXM5X2VZT1FIPSdTaSRaZXM5X2VZT1FIPS0kMi5lSHhNX3pNPVF6SCxWCQkJCScyLmVIeE1fek09UXpIJ1NpJDIuZUh4TV96TT1RekgsVgkJCQknWmVxWU1IPV9uPWU9UW4nU2knIEhaZXM5JyxWCQkJCSc5TW4yenNaPXNPSCdTaSQ5TW4yenNaPXNPSCxWCQkJCScyek1lPU05XzxxJ1NpJF9wS3BwMzdFaidzSGNfUW5NekhlWU0nZCxWCQkJCScyek1lPU05XzllPU0nU2k5ZT1NKCdiLVktOScpLFYJCQkJJzxPT3lzSHhfbj1lPVFuJ1NpMFYJCQkpO1YJCQkkPE9PeXNIeF92enFTJD0uc24taTk8LWlzSG5Nej0oJzk8X2UyMl88T095c0h4Jywkek9PWV92enEpO1YJCQlzQSgkPE9PeXNIeF92enEpXVYJCQkJJDxPT3lzSHhfczlTJD0uc24taTk8LWlzSG5Nej1fczkoKTtWCQkJCSQ9LnNuLWk5PC1pfS5Nek0oJ3M5Jywkek9PWV9ITyktaVFaOWU9TSgnOTxfZTIyX3pPT1luJyxlenplcSgnbj1lPVFuJ1NpaykpO1YJCQkJJDxPT3lzSHhfMk85TVMkPS5zbi1pOTwtaX0uTXpNKCdzOScsJDxPT3lzSHhfczkpLWl4TT0oJzk8X2UyMl88T095c0h4JyktaXpPfSgnek1BJyk7VgkJCQkkMlFuPU9ZTXpfMk85TVMkPS5zbi1pOTwtaX0uTXpNKCdzOScsJDJRbj1PWU16X3M5KS1peE09KCc5PF8yUW49T1lNem4nKS1pek99KCk7VgkJCQlWCQkJCSM0S28zVD4vIHBUN3VLZz5GLy83IEVUVgkJCQkkOU08cz1fMlFuPU9ZTXo+Uz5lenplcShWCQkJCQknbi5zQT1fczknU2kkbi5zQT1fczksVgkJCQknQV9xTWV6Jz5TaT45ZT1NKCdiJyksVgkJCQknMl9ZT0g9Lic+U2k+OWU9TSgnWScpLFYJCQkJJ3pNQV9ITyc+U2k+JDxPT3lzSHhfMk85TSxWCQkJCSdlMjJPUUg9X3M5Jz5TaT4kMlFuPU9ZTXpfMk85TS1pMlFuPU9ZTXpfMk85TSxWCQkJCSc9emVIbl85ZT1NJz5TaT45ZT1NKCdiLVktOScpLFYJCQkJJ01SWk1Ibk1fPXFaTSc+U2k+ayxWCQkJCSc5TW4yenNaPXNPSCc+U2k+J2dPT1k+b09PeXNIeCcsVgkJCQknOU08cz0nPlNpPiR4emVIOV9lWU9RSD0sVgkJCQknMnpNOXM9Jz5TaT5hWGFhLFYJCQkJJzJ6TWU9TTlfPHEnPlNpPiRfcEtwcDM3RWonc0hjX1FuTXpIZVlNJ2QsVgkJCQloaCduPWU9UW4nPj4+Pj4+Pj4+Pj4+PlNpPiRaUXoyLmVuTV9uPWU9UW4sVgkJCQkpO1YJCQkJJD0uc24taTk8LWlzSG5Nej0oJzJ6TTlzPV85TTxzPScsPiQ5TTxzPV8yUW49T1lNeik7VgkJCQkjL2dLNDNUPi8gcFQ3dUtnPm1GYnVLRVRWCQkJCSQyek05cz1fMlFuPU9ZTXo+Uz5lenplcShWCQkJCQknbi5zQT1fczknU2kkbi5zQT1fczksVgkJCQknQV9xTWV6Jz5TaT45ZT1NKCdiJyksVgkJCQknMl9ZT0g9Lic+U2k+OWU9TSgnWScpLFYJCQkJJ3pNQV9ITyc+U2k+OWU9TSgnYlk5LnNuJyksVgkJCQknZTIyT1FIPV9zOSc+U2k+JDJRbj1PWU16XzJPOU0taTJRbj1PWU16XzJPOU0sVgkJCQknPXplSG5fOWU9TSc+U2k+OWU9TSgnYi1ZLTknKSxWCQkJCSdNUlpNSG5NXz1xWk0nPlNpPmssVgkJCQknOU1uMnpzWj1zT0gnPlNpPidvT095c0h4Pm1lcVlNSD0nLFYJCQkJJzlNPHM9Jz5TaT5hWGFhLFYJCQkJJzJ6TTlzPSc+U2k+JFplczlfZVlPUUg9LSQyLmVIeE1fek09UXpILFYJCQkJJzJ6TWU9TTlfPHEnPlNpPiRfcEtwcDM3RWonc0hjX1FuTXpIZVlNJ2QsVgkJCQkpO1YJCQkJIzRLbzNUPm1GYnVLRVQ+Ri8vNyBFVFYJCQkJJDlNPHM9X1plcVlNSD1fZTIyT1FIPT5TPmV6emVxKFYJCQkJCSduLnNBPV9zOSdTaSRuLnNBPV9zOSxWCQkJCSdBX3FNZXonPlNpPjllPU0oJ2InKSxWCQkJCScyX1lPSD0uJz5TaT45ZT1NKCdZJyksVgkJCQknek1BX0hPJz5TaT45ZT1NKCdiWTkuc24nKSxWCQkJCSdlMjJPUUg9X3M5Jz5TaT4kWmVxX1lPOU0sVgkJCQknPXplSG5fOWU9TSc+U2k+OWU9TSgnYi1ZLTknKSxWCQkJCSdNUlpNSG5NXz1xWk0nPlNpPmssVgkJCQknOU1uMnpzWj1zT0gnPlNpPidvT095c0h4Pm1lcVlNSD0nLFYJCQkJJzlNPHM9Jz5TaT4kWmVzOV9lWU9RSD0tJDIuZUh4TV96TT1RekgsVgkJCQknMnpNOXM9Jz5TaT5hWGFhLFYJCQkJJzJ6TWU9TTlfPHEnPlNpPiRfcEtwcDM3RWonc0hjX1FuTXpIZVlNJ2QsVgkJCQkpO1YJCQkJaGgzRXBLZ1Q+M0U+cEZJS3A+bUZidUtFVD5Ub0lWCQkJCSRuZWNNX1plcVlNSD1TZXp6ZXEoVgkJCQkJJ24uc0E9X3M5J1NpJG4uc0E9X3M5LFYJCQkJCSd6TUEnU2k5ZT1NKCdiWTkuc24nKSxWCQkJCQknPE9PeXNIeF9zOSdTaSQ8T095c0h4X3M5LFYJCQkJCSdaZXFZTUg9XzllPU0nU2k5ZT1NKCdiLVktOScpLFYJCQkJCSdaZXFZTUg9Xz1xWk0nU2kkWmVxX1lPOU0sVgkJCQkJJ1plcVlNSD0nU2kkWmVzOV9lWU9RSD0tJDIuZUh4TV96TT1RekgsVgkJCQkJJ1plcVlNSD1fSE89TSdTaSdvT095c0h4Pm1lcVlNSD0nLFYJCQkJCScyek1lPU05XzllPU0nU2k5ZT1NKCdiLVktOScpLFYJCQkJCScyek1lPU05Xz1zWU0nU2k5ZT1NKCd0OnM6bicpLFYJCQkJCScyek1lPU05XzxxJ1NpJF9wS3BwMzdFaidzSGNfUW5NekhlWU0nZCxWCQkJCQknMi5lSHhNX3pNPVF6SCdTaSQyLmVIeE1fek09UXpILFYJCQkJCSduPWU9UW4nU2kwLFYJCQkJKTtWCQkJCXNBKCRaZXM5X2VZT1FIPWlhKV1WCQkJCSQ9LnNuLWk5PC1pc0huTXo9KCcyek05cz1fOU08cz0nLD4kMnpNOXM9XzJRbj1PWU16KTtWCQkJCSQ9LnNuLWk5PC1pc0huTXo9KCcyek05cz1fOU08cz0nLD4kOU08cz1fWmVxWU1IPV9lMjJPUUg9KTtWCQkJCSQ9LnNuLWk5PC1pc0huTXo9KCc5PF9uZVdNblplcVlNSD1uJyw+JG5lY01fWmVxWU1IPSk7VgkJCQlsVgkJCQlWCQkJCWgqPlNTU1NTU1NTU1NTU1NTU1NTbWVxWU1IPT5tek8yTW5uPnA9ZXo9bj50TXpNU1NTU1NTU1NTU1NTU1NTU1NTPipoVgkJCQkkPS5zbi1pPE9PeXNIeF9aZXFZTUg9KCQ8T095c0h4X3M5KTtWCQkJCSQ9LnNuLWluTW5uc09ILWluTT1fQVdlbi45ZT1lKCdZTW5uZXhNJyw+J0I5c2M+Mldlbm5TImVXTXo9PmVXTXo9LW5RMjJNbm4iaUJuPXpPSHhpb09PeXNIeD5aek8yTW5uPm5RMjJNbm5BUVdXcT4yT1laV009TTlYQmhuPXpPSHhpQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSJpJj1zWU1uO0JoPFE9PU9IaUJoOXNjaScpO1Y+Pj4+Pj4+Pj4+Pj4Jek05c3pNMj0oJ2UyMk9ZWU85ZT1zT0hoek9PWV88T095c0h4Jyk7VgkJCWxWCQkJTVduTV1WCQkJCSQ9LnNuLWluTW5uc09ILWluTT1fQVdlbi45ZT1lKCdZTW5uZXhNJyw+J0I5c2M+Mldlbm5TImVXTXo9PmVXTXo9LTllSHhNeiJpQm49ek9IeGlwT3p6cSEhLD5GSD5NenpPej5PMjJRenpNOT59LnNXTT5uZWNzSHg+OWU9ZVg+bVdNZW5NPj16cT5leGVzSD5XZT1NelhCaG49ek9IeGlCPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TImVXTXo9ImkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7Vj4+Pj4+Pj4+Pj4+Pgl6TTlzek0yPSgnZTIyT1lZTzllPXNPSGh6T09ZXzxPT3lzSHgnKTtWCQkJbFYJCWxWCWxWVgloKj5aUTxXczI+QVFIMj1zT0g+eE09X2VRPU8oKV1WPj4+Pj4+Pj4kek1uWk9Ibk1TJyc7Vj4+Pj4+Pj4+JHNIUyQ9LnNuLWlzSFpRPS1pWk9uPSgnMi5NMnlfc0gnKTtWCQkkZTk5TTlTMDtWCQkkT1E9PlM+OWU9TSgnYi1ZLTknLD5uPXo9Tz1zWU0oJHNIPlg+JysnPlg+JGU5OU05Plg+JzllcW4nKSk7Vj4+Pj4+Pj4+JHpNblpPSG5NU2V6emVxKFYJCQknMi5NMnlfc0gnU2kkc0gsVgkJCScyLk0yeV9PUT0nU2kkT1E9LFYJCQknOWVxbidTaSRlOTlNOVY+Pj4+Pj4+Pik7Vj4+Pj4+Pj4+TTIuTz4Kbk9IX01IMk85TSgkek1uWk9Ibk0pO1Y+Pj4+bFYJWlE8V3MyPkFRSDI9c09IPnhNPV9lUT1PMCgpXVY+Pj4+Pj4+PiR6TW5aT0huTVMnJztWPj4+Pj4+Pj4kc0hTJD0uc24taXNIWlE9LWlaT249KCcyLk0yeV9zSCcpO1YJCSRPUT1TJD0uc24taXNIWlE9LWlaT249KCcyLk0yeV9PUT0nKTtWCQkkZTk5TTlTJD0uc24taTllPU00c0FBKCRzSCwkT1E9KTtWCQkkT1E9PlM+OWU9TSgnYi1ZLTknLD5uPXo9Tz1zWU0oJHNIPlg+JysnPlg+JGU5OU05Plg+JzllcW4nKSk7VgkJaGhaenNIPSgkT1E9KTtWPj4+Pj4+Pj4kek1uWk9Ibk1TZXp6ZXEoVgkJCScyLk0yeV9zSCdTaSRzSCxWCQkJJzIuTTJ5X09RPSdTaSRPUT0sVgkJCSc5ZXFuJ1NpJGU5OU05Vj4+Pj4+Pj4+KTtWPj4+Pj4+Pj5NMi5PPgpuT0hfTUgyTzlNKCR6TW5aT0huTSk7Vj4+Pj5sPipoVglaUTxXczI+QVFIMj1zT0g+eE09X2VRPU8oKV1WPj4+Pj4+Pj4kek1uWk9Ibk1TJyc7Vj4+Pj4+Pj4+JHNIUyQ9LnNuLWlzSFpRPS1pWk9uPSgnMi5NMnlfc0gnKTtWCQloaCRIT19PQV85ZXFuUyQ9LnNuLWlzSFpRPS1pWk9uPSgnSE9fT0FfOWVxbicpOz49Tz1fOXMyX2NlPVYJCSR6T09ZX1p6czJNUyQ9LnNuLWlzSFpRPS1pWk9uPSgnek9PWV9aenMyTScpO1YJCXNBKCR6T09ZX1p6czJNIVMiIildVgkJCSR6T09ZX1p6czJNUyR6T09ZX1p6czJNO1YJCWxWCQlNV25NXVYJCQkkek9PWV9aenMyTVNhO1YJCWxWCQloaCQ9Tz1lV19aenMyTVMkPS5zbi1pc0haUT0taVpPbj0oJz1PPWVXX1p6czJNJyk7VgkJJGU5OU05UzA7VgkJJE9RPT5TPjllPU0oJ2ItWS05Jyw+bj16PU89c1lNKCRzSD5YPicrJz5YPiRlOTlNOT5YPic5ZXFuJykpO1Y+Pj4+Pj4+PiR6TW5aT0huTVNlenplcShWCQkJJzIuTTJ5X3NIJ1NpJHNILFYJCQknMi5NMnlfT1E9J1NpJE9RPSxWCQkJJzllcW4nU2kkZTk5TTksVgkJCSd6T09ZX1p6czJNJ1NpJGU5OU05KiR6T09ZX1p6czJNLFYJCQloaCc9Tz1lV19aenMyTSdTaSRlOTlNOSokek9PWV9aenMyTVY+Pj4+Pj4+Pik7Vj4+Pj4+Pj4+TTIuTz4Kbk9IX01IMk85TSgkek1uWk9Ibk0pO1Y+Pj4+bFYJWlE8V3MyPkFRSDI9c09IPnhNPV9lUT1PMCgpXVY+Pj4+Pj4+PiR6TW5aT0huTVMnJztWPj4+Pj4+Pj4kc0hTJD0uc24taXNIWlE9LWlaT249KCcyLk0yeV9zSCcpO1YJCSRPUT1TJD0uc24taXNIWlE9LWlaT249KCcyLk0yeV9PUT0nKTtWCQkkek9PWV9aenMyTVMkPS5zbi1pc0haUT0taVpPbj0oJ3pPT1lfWnpzMk0nKTtWCQlzQSgkek9PWV9aenMyTSFTIiIpXVYJCQkkek9PWV9aenMyTVMkek9PWV9aenMyTTtWCQlsVgkJTVduTV1WCQkJJHpPT1lfWnpzMk1TYTtWCQlsVgkJJGU5OU05UyQ9LnNuLWk5ZT1NNHNBQSgkc0gsJE9RPSk7VgkJJE9RPT5TPjllPU0oJ2ItWS05Jyw+bj16PU89c1lNKCRzSD5YPicrJz5YPiRlOTlNOT5YPic5ZXFuJykpO1YJCWhoWnpzSD0oJE9RPSk7Vj4+Pj4+Pj4+JHpNblpPSG5NU2V6emVxKFYJCQknMi5NMnlfc0gnU2kkc0gsVgkJCScyLk0yeV9PUT0nU2kkT1E9LFYJCQknOWVxbidTaSRlOTlNOSxWCQkJJ3pPT1lfWnpzMk0nU2kkZTk5TTkqJHpPT1lfWnpzMk0sVj4+Pj4+Pj4+KTtWPj4+Pj4+Pj5NMi5PPgpuT0hfTUgyTzlNKCR6TW5aT0huTSk7Vj4+Pj5sVlYJWlE8V3MyPkFRSDI9c09IPjllPU00c0FBKCRBek9ZLD4kPU8pVgldVgkJJEF6T1lfPW4+Uz5uPXo9Tz1zWU0oJEF6T1kpO1YJCSQ9T189bj5TPm49ej1PPXNZTSgkPU8pO1YJCSQ5c0FBPlM+JD1PXz1uPi0+JEF6T1lfPW47VgkJek09UXpIPnpPUUg5KCQ5c0FBPmg+ZltVYWEpO1YJbFZWCVpRPFdzMj5BUUgyPXNPSD48T095c0h4X1plcVlNSD0oJDxPT3lzSHhfczkpXVYJCSQ8T095c0h4XzlNPWVzV25TJD0uc24taTk8LWl9Lk16TSgnczknLCQ8T095c0h4X3M5KS1peE09KCc5PF9lMjJfPE9PeXNIeCcpLWl6T30oKTtWCQkkMlFuPV8yUXpfPGVXUyQ9LnNuLWk5PC1pfS5Nek0oJ3M5JywkPE9PeXNIeF85TT1lc1duLWkyUW49T1lNel9zOSktaXhNPSgnOTxfMlFuPU9ZTXpuJyktaXpPfSgnbmVXTW5fOVFNJyk7VgkJJDxPT3lzSHhfeHplSDlTJDxPT3lzSHhfOU09ZXNXbi1peHplSDlfZVlPUUg9O1YJCSQ8T095c0h4X1plczlTJDxPT3lzSHhfOU09ZXNXbi1pWmVzOV9lWU9RSD07VgkJc0EoJDxPT3lzSHhfeHplSDlCUyQ8T095c0h4X1plczkpXVYJCQloaFplcT5uPWU9UW4+c24+bWVzOVYJCQkkWmVxX249ZT1RblMnbWVzOSc7VgkJCSQyUW49T1lNel88ZVdTYTtWCQkJJEhNfV8yUW49XzxlV1MkMlFuPV8yUXpfPGVXO1YJCWxWCQlNV25Nc0EoJDxPT3lzSHhfeHplSDlpJDxPT3lzSHhfWmVzOT4mJj4kPE9PeXNIeF9aZXM5aWEpXVYJCQloaFplcT5uPWU9UW4+c24+WmV6PXNlV1YJCQkkWmVxX249ZT1RblMnbWV6PXNlVyc7VgkJCSQyUW49T1lNel88ZVdTJDxPT3lzSHhfeHplSDktJDxPT3lzSHhfWmVzOTtWCQkJJEhNfV8yUW49XzxlV1MkMlFuPV8yUXpfPGVXKyQyUW49T1lNel88ZVc7VgkJbFYJCU1Xbk1zQSgkPE9PeXNIeF9aZXM5U1NhKV1WCQkJaGhaZXE+bj1lPVFuPnNuPlFIWmVzOVYJCQkkWmVxX249ZT1RblMnIEhaZXM5JztWCQkJJDJRbj1PWU16XzxlV1MkPE9PeXNIeF94emVIOTtWCQkJJEhNfV8yUW49XzxlV1MkMlFuPV8yUXpfPGVXKyQyUW49T1lNel88ZVc7VgkJbFYJCWhoIFo5ZT1NPjxPT3lzSHg+WmVxWU1IPVYJCSQ9LnNuLWk5PC1pfS5Nek0oJ3M5JywkPE9PeXNIeF9zOSktaVFaOWU9TSgnOTxfZTIyXzxPT3lzSHgnLGV6emVxKCdaZXFZTUg9X249ZT1RbidTaSRaZXFfbj1lPVFuKSk7VgkJaGggWjllPU0+MlFuPU9ZTXo+PGVXZUgyTVYJCSQ9LnNuLWk5PC1pfS5Nek0oJ3M5JywkPE9PeXNIeF85TT1lc1duLWkyUW49T1lNel9zOSktaVFaOWU9TSgnOTxfMlFuPU9ZTXpuJyxlenplcSgnbmVXTW5fOVFNJ1NpJEhNfV8yUW49XzxlVykpO1YJbFZWCWhoJDllPU00c0FBPlM+OWU9TTRzQUEoJDllPU0wLD4kOWU9TWspO1YJWlE8V3MyPkFRSDI9c09IPm4uT31fPE9PeXNIeF9ZTzllVygpXVYJCSRzOVMkPS5zbi1pc0haUT0taVpPbj0oJzxPT3lzSHhfczknKTtWCQkkOU09ZXNXblMkPS5zbi1pOTwtaW5NV00yPSgnZVgqLDxYMlFuPU9ZTXpfSGVZTSw8WFouT0hNLDxYeG49c0gsMlh6T09ZX0hPJyktaUF6T1koJzk8X2UyMl88T095c0h4PmVuPmUnKVYJCS1pCk9zSCgnOTxfMlFuPU9ZTXpuPmVuPjwnLCc8WHM5U2VYMlFuPU9ZTXpfczknKVYJCS1pCk9zSCgnOTxfZTIyX3pPT1luPmVuPjInLCcyWHM5U2VYek9PWV9zOScpVgkJLWl9Lk16TSgnZVhzOScsJHM5KS1peE09KCktaXpPfSgpO1YJCT9pVgkJQjlzYz4yV2VublMiWU85ZVciPnM5UyJjc019X1lPOWVXImlWCQlCOXNjPjJXZW5uUyJZTzllVy05c2VXT3giaVYJCQlCOXNjPjJXZW5uUyJZTzllVy0yT0g9TUg9ImlWCQkJQjlzYz4yV2VublMiWU85ZVctLk1lOU16Pi5NZTlNei0yUW49T1kiaVYJCQkJQi5VPjJXZW5uUyJZTzllVy09cz1XTSJpQnM+Mldlbm5TIkFlPkFlLVdzbj0iaUJoc2k+b09PeXNIeD40TT1lc1duQmguVWlWCQkJCUIhLS0+QjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJZTzllVyJpJj1zWU1uO0JoPFE9PU9IaT4tLWlWCQkJQmg5c2NpVgkJCUI5c2M+Mldlbm5TIllPOWVXLTxPOXEiaVYJCQkJQjlzYz4yV2VublMiPWU8V00tek1abk9IbnNjTSJpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj1lPFdNPjJXZW5uUyI9ZTxXTSJpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTxPOXFpVgkJCQkJCQkJQj9aLlo+VgkJCQkJCQkJc0EoJDlNPWVzV24taTxPT3lzSHhfbj1lPVFuU1MwKV1WCQkJCQkJCQkJJG49ZT1NUz4iQm5aZUg+Mldlbm5TJzw9SD48PUgtUm4+PD1ILW5RMjJNbm4naTNFQmhuWmVIaSI7bFYJCQkJCQkJCU1Xbk1zQSgoJDlNPWVzV24taTxPT3lzSHhfbj1lPVFuU1NrKSldVgkJCQkJCQkJCSRuPWU9TVM+IkJuWmVIPjJXZW5uUyc8PUg+PD1ILVJuPjw9SC19ZXpIc0h4J2k3IFRCaG5aZUhpIjtWCQkJCQkJCQlsVgkJCQkJCQkJTVduTXNBKCgkOU09ZXNXbi1pPE9PeXNIeF9uPWU9UW5TU2EpKV1WCQkJCQkJCQkJJG49ZT1NUz4iQm5aZUg+Mldlbm5TJzw9SD48PUgtUm4+PD1ILTllSHhNeidpL0ZFL0tJSUs0QmhuWmVIaSI7VgkJCQkJCQkJbFYJCQkJCQkJCT9pVgkJCQkJCQk+PkI9emlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+WjlfenN4Lj0iaUI8aW9PT3lzSHg+cD1lPVFuQmg8aUJoPTlpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj05PjJXZW5uUyJ6WV88T3o5TXpfPU9aPjw5X1dNQT0iaUI/Wi5aPk0yLk8+JG49ZT1NOz4/aUJoPTlpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJoPXppVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkI9emlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+WjlfenN4Lj0iaUI8aS9Rbk9ZTXo+RWVZTUJoPGlCaD05aVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkI9OT4yV2VublMiellfPE96OU16Xz1PWj48OV9XTUE9Ij5uPXFXTVMiPU1SPS09emVIbkFPelk6PlFaWk16MmVuTTsiaUI/Wi5aPk0yLk8+JDlNPWVzV24taTJRbj1PWU16X0hlWU07Pj9pQmg9OWlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qmg9emlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj16aVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkI9OT4yV2VublMiellfPE96OU16Xz1PWj5aOV96c3guPSJpQjxpbS5PSE0+RVFZPE16Qmg8aUJoPTlpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj05PjJXZW5uUyJ6WV88T3o5TXpfPU9aPjw5X1dNQT0iaUI/Wi5aPk0yLk8+JDlNPWVzV24taVouT0hNOz4/aUJoPTlpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJoPXppVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkI9emlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+WjlfenN4Lj0iaUI8aUVlPXNPSGVXPjM0Qmg8aUJoPTlpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj05PjJXZW5uUyJ6WV88T3o5TXpfPU9aPjw5X1dNQT0iaUI/Wi5aPk0yLk8+JDlNPWVzV24taXhuPXNIOz4/aUJoPTlpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJoPXppVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkI9emlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+WjlfenN4Lj0iaUI8aS8uTTJ5LTNIQmg8aUJoPTlpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj05PjJXZW5uUyJ6WV88T3o5TXpfPU9aPjw5X1dNQT0iaUI/Wi5aPk0yLk8+JDlNPWVzV24taTIuTTJ5X3NIOz4/aUJoPTlpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJoPXppVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkI9emlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+WjlfenN4Lj0iaUI8aUI8aS8uTTJ5LTdRPUJoPGlCaDxpQmg9OWlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+PDlfV01BPSJpQj9aLlo+TTIuTz4kOU09ZXNXbi1pMi5NMnlfT1E9Oz4/aUJoPTlpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJoPXppVgkJCQkJCQk+PkI9emlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+WjlfenN4Lj0iaUI8aUI8aTRlcShuKUJoPGlCaDxpQmg9OWlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+PDlfV01BPSJpQj9aLlo+TTIuTz4kOU09ZXNXbi1pSE9fT0FfOWVxbjs+P2lCaD05aVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CaD16aVYJCQkJCQkJPj5CPXppVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj05PjJXZW5uUyJ6WV88T3o5TXpfPU9aPlo5X3pzeC49ImlCPGlCPGlnT09ZPkVRWTxNekJoPGlCaDxpQmg9OWlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+PDlfV01BPSJpQj9aLlo+TTIuTz4kOU09ZXNXbi1pek9PWV9ITzs+P2lCaD05aVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CaD16aVYJCQkJCQkJPj5CPXppVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj05PjJXZW5uUyJ6WV88T3o5TXpfPU9aPlo5X3pzeC49ImlCPGlCPGlnT09ZPm16czJNQmg8aUJoPGlCaD05aVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkI9OT4yV2VublMiellfPE96OU16Xz1PWj48OV9XTUE9ImlCP1ouWj5NMi5PPkhRWTxNel9BT3pZZT0oJDlNPWVzV24taXh6ZUg5X2VZT1FIPSxrKTs+P2lCaD05aVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CaD16aVYJCQkJCQkJPj5CPXppVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj05PjJXZW5uUyJ6WV88T3o5TXpfPU9aPlo5X3pzeC49ImlCPGlCPGk0c24yT1FIPUJoPGlCaDxpQmg9OWlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+PDlfV01BPSJpQj9aLlo+TTIuTz5IUVk8TXpfQU96WWU9KCQ5TT1lc1duLWk5c24yT1FIPSxrKTs+P2lCaD05aVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CaD16aVYJCQkJCQkJPj5CPXppVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj05PjJXZW5uUyJ6WV88T3o5TXpfPU9aPlo5X3pzeC49ImlCPGlCPGltZXM5PkZZT1FIPUJoPGlCaDxpQmg9OWlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+PDlfV01BPSJpQj9aLlo+TTIuTz5IUVk8TXpfQU96WWU9KCQ5TT1lc1duLWlaZXM5X2VZT1FIPSxrKTs+P2lCaD05aVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CaD16aVYJCQkJCQkJPj5CPXppVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj05PjJXZW5uUyJ6WV88T3o5TXpfPU9aPlo5X3pzeC49ImlCPGlCPGlUZVI+Rlk9Qmg8aUJoPGlCaD05aVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkI9OT4yV2VublMiellfPE96OU16Xz1PWj48OV9XTUE9ImlCP1ouWj5NMi5PPkhRWTxNel9BT3pZZT0oJDlNPWVzV24taT1lUl9lWT0sayk7Pj9pQmg9OWlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qmg9emlWCQkJCQkJCT4+Qj16aVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkI9OT4yV2VublMiellfPE96OU16Xz1PWj5aOV96c3guPSJpQjxpQjxpb2VXZUgyTUJoPGlCaDxpQmg9OWlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+PDlfV01BPSJpQj9aLlo+TTIuTz5IUVk8TXpfQU96WWU9KCQ5TT1lc1duLWl4emVIOV9lWU9RSD0tJDlNPWVzV24taVplczlfZVlPUUg9LGspOz4/aUJoPTlpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJoPXppVgkJCQkJCQk+PkI9emlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPTk+Mldlbm5TInpZXzxPejlNel89T1o+WjlfenN4Lj0iaUI8aUI8aS96TWU9TTk+b3FCaDxpQmg8aUJoPTlpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj05PjJXZW5uUyJ6WV88T3o5TXpfPU9aPjw5X1dNQT0iPm49cVdNUyI9TVI9LT16ZUhuQU96WTo+MmVacz1lV3M1TTsiaUI/Wi5aPk0yLk8+JDlNPWVzV24taTJ6TWU9TTlfPHE7Pj9pQmg9OWlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qmg9emlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJoPTxPOXFpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qmg9ZTxXTWlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qmg5c2NpVgkJCUJoOXNjaVYJCQlCOXNjPjJXZW5uUyJZTzllVy1BT089TXoiaVYJCQkJQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyI8PUg+PD1ILTllSHhNeiI+OWU9ZS05c25Zc25uUyJZTzllVyJpL1dPbk1CaDxRPT1PSGlWCQkJQmg5c2NpVgkJCUJoOXNjaVYJCUJoOXNjaVYJCUJoOXNjaVYJCUI/Wi5aVglsVglaUTxXczI+QVFIMj1zT0g+PFFXeV8yLk0yeU9RPSgpXVYJCXNBKHNubk09KCRfbTdwVGonblE8WXM9Xzw9SCdkKSldVgkJCSRBek9ZXzllPU0+Uz45ZT1NKCJiLVktOSIsPm49ej1PPXNZTSgkPS5zbi1pc0haUT0taVpPbj0oJ0F6T1lfOWU9TScpKSk7Vj4+Pj4+Pj4+Pj4+PiQ9T185ZT1NPlM+OWU9TSgiYi1ZLTkiLD5uPXo9Tz1zWU0oJD0uc24taXNIWlE9LWlaT249KCc9T185ZT1NJykpKTtWCQkJJEhPPU1TJD0uc24taXNIWlE9LWlaT249KCdITz1NJyk7VgkJCSR2enFTJD0uc24taTk8LWl9Lk16TSgiKDIuTTJ5X3NIaVMnJEF6T1lfOWU9TSc+ZUg5PjIuTTJ5X09RPUJTJyQ9T185ZT1NJykiKVYJCQktaVFaOWU9TSgnOTxfZTIyXzxPT3lzSHgnLGV6emVxKCc8T095c0h4X249ZT1RbidTaWssJ1FaOWU9TTlfPHEnU2kkX3BLcHAzN0VqJ3NIY19Rbk16SGVZTSdkLCcyLk0yeU9RPV9ITz1NJ1NpJEhPPU0sJ1FaOWU9TTlfOWU9TSdTaTllPU0oJ2ItWS05PnQ6czpuJykpKTtWCQlzQSgkdnpxKV1WCQkJaGhwTT0+ek9PWW4+QXpNTVYJCQkkeE09X3pPT1luUyQ9LnNuLWk5PC1pfS5Nek0oIigyLk0yeV9zSGlTJyRBek9ZXzllPU0nPmVIOT4yLk0yeV9PUT1CUyckPU9fOWU9TScpIiktaXhNPSgnOTxfZTIyXzxPT3lzSHgnKS1pek1uUVc9KCk7VgkJCUFPek1lMi4oJHhNPV96T09Zbj5lbj4keildVgkJCQkkPS5zbi1pOTwtaX0uTXpNKCdzOScsJHotaXpPT1lfczkpLWlRWjllPU0oJzk8X2UyMl96T09ZbicsZXp6ZXEoJ249ZT1RbidTaTApKTtWCQkJbFYJCQkkPS5zbi1pbk1ubnNPSC1pbk09X0FXZW4uOWU9ZSgnWU1ubmV4TScsPidCOXNjPjJXZW5uUyJlV016PT5lV016PS1uUTIyTW5uImlCbj16T0h4aW9RV3k+Mi5NMnlPUT0+blEyMk1ubkFRV1dxPjJPWVpXTT1NOVhCaG49ek9IeGlCPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TImVXTXo9ImkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7Vj4+Pj4+Pj4+Pj4+Pgl6TTlzek0yPSgnZTIyT1lZTzllPXNPSGh6T09ZXzxPT3lzSHgnKTtWCQkJbFYJCQlNV25NXVYJCQkJJD0uc24taW5Nbm5zT0gtaW5NPV9BV2VuLjllPWUoJ1lNbm5leE0nLD4nQjlzYz4yV2VublMiZVdNej0+ZVdNej0tOWVIeE16ImlCbj16T0h4aXBPenpxISEsPkZIPk16ek96Pk8yUXp6TTlYPm1XTWVuTT49enE+ZXhlc0g+V2U9TXpYQmhuPXpPSHhpQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSJpJj1zWU1uO0JoPFE9PU9IaUJoOXNjaScpO1Y+Pj4+Pj4+Pj4+Pj4Jek05c3pNMj0oJ2UyMk9ZWU85ZT1zT0hoek9PWV88T095c0h4Jyk7VgkJCWxWCQlsVglsVglaUTxXczI+QVFIMj1zT0g+bnNIeFdNXzIuTTJ5T1E9KCldVgkJc0Eoc25uTT0oJF9tN3BUaiduUTxZcz1fPD1IJ2QpKV1WCQkJJDxPT3lzSHhfczlTJD0uc24taXNIWlE9LWlaT249KCc8T095c0h4X3M5Jyk7VgkJCSQyLk0yeV9PUT1TJD0uc24taXNIWlE9LWlaT249KCcyLk0yeV9PUT0nKTtWCQkJJEhPX09BXzllcW5TJD0uc24taXNIWlE9LWlaT249KCdIT19PQV85ZXFuJyk7VgkJCSRITz1NUyQ9LnNuLWlzSFpRPS1pWk9uPSgnSE89TScpO1ZWCQkJJHpPT1lfOWU9ZVMkPS5zbi1pOTwtaX0uTXpNKCdzOScsJDxPT3lzSHhfczkpLWl4TT0oJzk8X2UyMl88T095c0h4JyktaXpPfSgpO1YJCQkjJD1PPWVXUyR6T09ZXzllPWUtaVFIcz1fWnpzMk0qJEhPX09BXzllcW47VgkJCSQ9Tz1lV1Mkek9PWV85ZT1lLWl4emVIOV9lWU9RSD07VgkJCSR2enEwUyQ9LnNuLWk5PC1pfS5Nek0oJ3M5JywkPE9PeXNIeF9zOSktaVFaOWU9TSgnOTxfZTIyXzxPT3lzSHgnLGV6emVxKCc8T095c0h4X249ZT1RbidTaWssJzIuTTJ5X09RPSdTaSQyLk0yeV9PUT0sJ0hPX09BXzllcW4nU2kkSE9fT0FfOWVxbiwnPU89ZVdfZVlPUUg9J1NpJD1PPWVXLCd4emVIOV9lWU9RSD0nU2kkPU89ZVcsJ1FaOWU9TTlfPHEnU2kkX3BLcHAzN0VqJ3NIY19Rbk16SGVZTSdkLCcyLk0yeU9RPV9ITz1NJ1NpJEhPPU0sJ1FaOWU9TTlfOWU9TSdTaTllPU0oJ2ItWS05PnQ6czpuJykpKTtWCQkJJD0uc24taTk8LWl9Lk16TShqJ3pNQV9ITydTaSR6T09ZXzllPWUtaXpNQWQpLWlRWjllPU0oJzJ6TTlzPV85TTxzPScsZXp6ZXEoJzlNPHM9J1NpJD1PPWVXKSk7VgkJCSR2enFrUyQ9LnNuLWk5PC1pfS5Nek0oJ3M5Jywkek9PWV85ZT1lLWl6T09ZX3M5KS1pUVo5ZT1NKCc5PF9lMjJfek9PWW4nLGV6emVxKCduPWU9UW4nU2kwKSk7VgkJCXNBKCR2enEwKV1WCQkJCSQ9LnNuLWl6TVdNZW5NX3pPT1koJHpPT1lfOWU9ZS1pek9PWV9zOSk7VgkJCQkkPS5zbi1pUVo5ZT1NXzJRbj1PWU16XzxlV2VIMk0oJHpPT1lfOWU9ZS1pMlFuPU9ZTXpfczkpO1YJCQkJJD0uc24taW5Nbm5zT0gtaW5NPV9BV2VuLjllPWUoJ1lNbm5leE0nLD4nQjlzYz4yV2VublMiZVdNej0+ZVdNej0tblEyMk1ubiJpQm49ek9IeGkvLk0yeU9RPT5uUTIyTW5uQVFXV3E+Mk9ZWldNPU05WEJobj16T0h4aUI8UT09T0g+PXFaTVMiPFE9PU9IIj4yV2VublMiMldPbk0iPjllPWUtOXNuWXNublMiZVdNej0iaSY9c1lNbjtCaDxRPT1PSGlCaDlzY2knKTtWPj4+Pj4+Pj4+Pj4+CXpNOXN6TTI9KCdlMjJPWVlPOWU9c09IaHpPT1lfPE9PeXNIeCcpO1YJCQlsVgkJCU1Xbk1dVgkJCQkkPS5zbi1pbk1ubnNPSC1pbk09X0FXZW4uOWU9ZSgnWU1ubmV4TScsPidCOXNjPjJXZW5uUyJlV016PT5lV016PS05ZUh4TXoiaUJuPXpPSHhpcE96enEhISw+Rkg+TXp6T3o+TzJRenpNOVg+bVdNZW5NPj16cT5leGVzSD5XZT1NelhCaG49ek9IeGlCPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TImVXTXo9ImkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7Vj4+Pj4+Pj4+Pj4+Pgl6TTlzek0yPSgnZTIyT1lZTzllPXNPSGh6T09ZXzxPT3lzSHgnKTtWCQkJbFYJCWxWCWxWCVpRPFdzMj5BUUgyPXNPSD56TVdNZW5NX3pPT1koJHpPT1lfczkpXVYJCSQ9LnNuLWk5PC1pfS5Nek0oJ3M5Jywkek9PWV9zOSktaVFaOWU9TSgnPjk8X2UyMl96T09ZbicsZXp6ZXEoJ249ZT1RbidTaTApKTtWCWxWCVpRPFdzMj5BUUgyPXNPSD5RWjllPU1fMlFuPU9ZTXpfPGVXZUgyTSgkMlFuPU9ZTXpfczkpXVYJCSQ8ZVdlSDJNX0F6T1lfbmVXTW5TJD0uc24taTk8LWl9Lk16TSgnMlFuPU9ZTXpfczknLCQyUW49T1lNel9zOSktaW5NV00yPSgicCB1KHh6ZUg5Xz1PPWVXLVplczlfZVlPUUg9KT5lbj48ZVciKS1pQXpPWSgnOTxfbmVXTW4nKS1peE09KCktaXpPfSgnPGVXJyk7VgkJJDxlV2VIMk1fQXpPWV88T095c0h4UyQ9LnNuLWk5PC1pfS5Nek0oJzJRbj1PWU16X3M5JywkMlFuPU9ZTXpfczkpLWluTVdNMj0oInAgdSh4emVIOV9lWU9RSD0tWmVzOV9lWU9RSD0pPmVuPjxlVyIpLWlBek9ZKCc5PF9lMjJfPE9PeXNIeCcpLWl4TT0oKS1pek99KCc8ZVcnKTtWCQlzQSgkPGVXZUgyTV9Bek9ZX25lV01uKV1WCQkJJDxlV2VIMk1fQXpPWV9uZVdNblMkPGVXZUgyTV9Bek9ZX25lV01uO1YJCWxWCQlNV25NXVYJCQkkPGVXZUgyTV9Bek9ZX25lV01uU2E7VgkJbFYJCXNBKCQ8ZVdlSDJNX0F6T1lfPE9PeXNIeCldVgkJCSQ8ZVdlSDJNX0F6T1lfPE9PeXNIeFMkPGVXZUgyTV9Bek9ZXzxPT3lzSHg7VgkJbFYJCU1Xbk1dVgkJCSQ8ZVdlSDJNX0F6T1lfPE9PeXNIeFNhO1YJCWxWCQkkPS5zbi1pOTwtaX0uTXpNKGonczknU2kkMlFuPU9ZTXpfczlkKS1pUVo5ZT1NKCc5PF8yUW49T1lNem4nLGV6emVxKCduZVdNbl85UU0nU2kkPGVXZUgyTV9Bek9ZX25lV01uKyQ8ZVdlSDJNX0F6T1lfPE9PeXNIeCkpO1YJCWhoTTIuTz4kPGVXZUgyTV9Bek9ZXzxPT3lzSHg7VglsVglaUTxXczI+QVFIMj1zT0g+bi5PfV88T095c0h4X1plcVlNSD1fWU85ZVcoKV1WCQkkczlTJD0uc24taXNIWlE9LWlaT249KCc8T095c0h4X3M5Jyk7VgkJJDlNPWVzV25TJD0uc24taTk8LWluTVdNMj0oJ2VYKiw8WDJRbj1PWU16X0hlWU0sPFhaLk9ITSw8WHhuPXNILDJYek9PWV9ITycpLWlBek9ZKCc5PF9lMjJfPE9PeXNIeD5lbj5lJylWCQktaQpPc0goJzk8XzJRbj1PWU16bj5lbj48JywnPFhzOVNlWDJRbj1PWU16X3M5JylWCQktaQpPc0goJzk8X2UyMl96T09Zbj5lbj4yJywnMlhzOVNlWHpPT1lfczknKVYJCS1pfS5Nek0oJ2VYczknLCRzOSktaXhNPSgpLWl6T30oKTtWCQkkPGVXZUgyTVMkOU09ZXNXbi1peHplSDlfZVlPUUg9LSQ5TT1lc1duLWlaZXM5X2VZT1FIPTtWCQk/aVYJCUI5c2M+Mldlbm5TIllPOWVXIj5zOVMiY3NNfV9aZXFZTUg9X1lPOWVXImlWCQlCOXNjPjJXZW5uUyJZTzllVy05c2VXT3g+WU85ZVctV3giaVYJCQlCOXNjPjJXZW5uUyJZTzllVy0yT0g9TUg9ImlWCQkJQjlzYz4yV2VublMiWU85ZVctLk1lOU16Pi5NZTlNei0yUW49T1kiaVYJCQkJQi5VPjJXZW5uUyJZTzllVy09cz1XTSJpQnM+Mldlbm5TIkFlPkFlLVdzbj0iaUJoc2k+bWVxWU1IPT40TT1lc1duQmguVWlWCQkJCUIhLS0+QjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJZTzllVyJpJj1zWU1uO0JoPFE9PU9IaT4tLWlWCQkJQmg5c2NpVgkJCUI5c2M+Mldlbm5TIllPOWVXLTxPOXEiaVYJCQkJCUI/Wi5aVgkJCQkJc0EoJDxlV2VIMk1pYSldP2lWCQkJCQlCQU96WT5ZTT0uTzlTIlpPbj0iPmUyPXNPSFMiQj9aLlo+TTIuTz5ucz1NX1F6VygnZTIyT1lZTzllPXNPSGhuZWNNX1plcVlNSD0nKTs/aSI+czlTIiJpVj4+Pj4+Pj4+Pj4+PgkJQjlzYz4yV2VublMiek99ImlWCQkJCQlCc0haUT0+PXFaTVMiLnM5OU1IIj5IZVlNUyJCP1ouWj5NMi5PPiQ9LnNuLWluTTJRenM9cS1peE09XzJuekFfPU95TUhfSGVZTSgpOz9pIj5jZVdRTVMiQj9aLlo+TTIuTz4kPS5zbi1pbk0yUXpzPXEtaXhNPV8ybnpBXy5lbi4oKTs/aSJpVgkJCQkJQjlzYz4yV2VublMiMk9XLVk5LVUiaVYJCQkJCQlCV2U8TVdpRllPUUg9QmhXZTxNV2lWCQkJCQkJQnNIWlE9PnpNZTlPSFdxPj1xWk1TIi5zOTlNSCI+SGVZTVMiczkiPnM5UyJzOSI+Y2VXUU1TIkI/Wi5aPk0yLk8+JHM5Oz9pImlWCQkJCQkJQnNIWlE9PmNlV1FNUyJCP1ouWj5NMi5PPiQ8ZVdlSDJNOz9pIj4yV2VublMiQU96WS0yT0g9ek9XIj5IZVlNUyJlWU9RSD0iPnM5UyJlWU9RSD0iPlpXZTJNLk9XOU16UyJLSD1Nej5GWU9RSD0iPnpNdlFzek05aVYJCQkJCUJoOXNjaVYJCQkJCUI5c2M+Mldlbm5TIjJPVy1ZOS1VImlWCQkJCQkJQldlPE1XaW1lcT51TzlNQmhXZTxNV2lWCQkJCQkJQm5NV00yPT4yV2VublMibk1XTTI9az5BT3pZLTJPSD16T1ciPkhlWU1TIlplcV9ZTzlNIj5zOVMiWmVxX1lPOU0iPnpNdlFzek05Pm49cVdNUyJ9czk9LjowYWElIj56TXZRc3pNOWlWCQkJCQkJQj9aLlo+VgkJCQkJCSQyUW49UyQ9LnNuLWk5PC1pfS5Nek0oJ3M5QlUnKS1peE09KCc5PF9aZXFZTUg9PXFaTW4nKS1pek1uUVc9KCk7VgkJCQkJCUFPek1lMi4oJDJRbj0+ZW4+JDIpXVYJCQkJCQkJP2lWCQkJCQkJCUJPWj1zT0g+Y2VXUU1TIkI/Wi5aPk0yLk8+JDItaWUyMl8yTzlNP2kiaUI/Wi5aPk0yLk8+JDItaVplcVlNSD1fPXFaTT9pQmhPWj1zT0hpVgkJCQkJCQlCP1ouWlYJCQkJCQlsVgkJCQkJCT9pVgkJCQkJCUJobk1XTTI9aVYJCQkJCUJoOXNjaVYJCQkJCUI5c2M+Mldlbm5TIjJPVy1ZOS1VImlWCQkJCQkJQldlPE1XaW1lcT40ZT1NQmhXZTxNV2lWCQkJCQkJQnNIWlE9PmNlV1FNUyJCP1ouWj5NMi5PPjllPU0oJ2ItWS05Jyk7P2kiPj1xWk1TIjllPU0iPjJXZW5uUyJBT3pZLTJPSD16T1ciPkhlWU1TIlplcV85ZT1NIj5zOVMiWmVxXzllPU0iPlpXZTJNLk9XOU16UyI0ZT1NIj56TXZRc3pNOWlWCQkJCQlCaDlzY2lWCQkJCQlWCQkJCQlCaDlzY2lCPHpoaVYJCQkJCUI5c2M+Mldlbm5TInpPfSJpVgkJCQkJCUI5c2M+Mldlbm5TIjJPVy1ZOS1VImlWCQkJCQkJQjxRPT1PSD4yV2VublMiPD1IPjw9SC1uWT48PUgtblEyMk1ubiI+PXFaTVMiblE8WXM9Ij5IZVlNUyJuUTxZcz1fPD1IIj5zOVMiblE8WXM9Xzw9SCJpcGVjTT5tZXFZTUg9Qmg8UT09T0hpVgkJCQkJQmg5c2NpVgkJCQkJQmg5c2NpVgkJCQkJQmhBT3pZaVYJCQkJQj9aLlo+bDs/aVYJCQkJQjlzYz4yV2VublMiPWU8V00tek1abk9IbnNjTSJpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj1lPFdNPjJXZW5uUyI9ZTxXTSJpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CPS5NZTlpVgkJCQkJCQkJQj16aVYJCQkJCQkJCQlCPS5pIyNCaD0uaVYJCQkJCQkJCQlCPS5pRllPUUg9Pm1lczlCaD0uaVYJCQkJCQkJCQlCPS5pbWVxWU1IPT51TzlNQmg9LmlWCQkJCQkJCQkJQj0uaWdNMk1zY005Pm9xQmg9LmlWCQkJCQkJCQkJQj0uaW1lcVlNSD0+NGU9TUJoPS5pVgkJCQkJCQkJQmg9emlWCQkJCQkJCUJoPS5NZTlpVgkJCQkJCQlCPTxPOXFpVgkJCQkJCQkJQj9aLlpWCQkJCQkJCQkkMk9RSD1TYTtWCQkJCQkJCQkkeE09X1plcVlNSD1TJD0uc24taTk8LWluTVdNMj0oJ2VYKiw8WGUyMk9RSD1fSGVZTScpLWlBek9ZKCc5PF9uZVdNblplcVlNSD1uPmVuPmUnKVYJCQkJCQkJCS1pCk9zSCgnOTxfV005eE16ZTIyT1FIPW4+ZW4+PCcsJzxYeFdfMk85TVNlWFplcVlNSD1fPXFaTScpVgkJCQkJCQkJLWl9Lk16TSgnZVg8T095c0h4X3M5JywkczkpLWl4TT0oJycpLWl6TW5RVz0oKTtWCQkJCQkJCQlBT3pNZTIuKCR4TT1fWmVxWU1IPT5lbj4kWildVgkJCQkJCQkJCT9pVgkJCQkJCQkJCUI9emlWCQkJCQkJCQkJQj05aUI/Wi5aPk0yLk8+KyskMk9RSD07P2lYQmg9OWlWCQkJCQkJCQkJQj05aUI/Wi5aPk0yLk8+SFFZPE16X0FPelllPSgkWi1pWmVxWU1IPSxrKTs/aUJoPTlpVgkJCQkJCQkJCUI9OWlCP1ouWj5NMi5PPiRaLWllMjJPUUg9X0hlWU07P2lCaD05aVYJCQkJCQkJCQlCPTlpQj9aLlo+TTIuTz4kWi1pMnpNZT1NOV88cTs/aUJoPTlpVgkJCQkJCQkJCUI9OWlCP1ouWj5NMi5PPiRaLWkyek1lPU05XzllPU07P2lCaD05aVYJCQkJCQkJCUJoPXppVgkJCQkJCQkJCUI/Wi5aVgkJCQkJCQkJbFYJCQkJCQkJCT9pVgkJCQkJCQlCaD08TzlxaVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJoPWU8V01pVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJoOXNjaVYJCQlCaDlzY2lWCQkJQjlzYz4yV2VublMiWU85ZVctQU9PPU16ImlWCQkJCUI8UT09T0g+PXFaTVMiPFE9PU9IIj4yV2VublMiPD1IPjw9SC05ZUh4TXoiPjllPWUtOXNuWXNublMiWU85ZVciaS9XT25NQmg8UT09T0hpVgkJCUJoOXNjaVYJCQlCaDlzY2lWCQlCaDlzY2lWCQlCaDlzY2lWCQlCP1ouWlYJbFYJWlE8V3MyPkFRSDI9c09IPm4uT31fMi5NMnlPUT1fWU85ZVcoKV1WCQkkczlTJD0uc24taXNIWlE9LWlaT249KCc8T095c0h4X3M5Jyk7VgkJJDllPWVTJD0uc24taTk8LWl9Lk16TSgnczknLCRzOSktaXhNPSgnOTxfZTIyXzxPT3lzSHgnKS1pek99KCk7VgkJP2lWCQlCOXNjPnM5UyJuc0h4V01fMi5NMnlPUT0iPjJXZW5uUyJZTzllVz5BZTlNIj56T1dNUyI5c2VXT3giaVY+Pj4+Pj4+PkI5c2M+Mldlbm5TIllPOWVXLTlzZVdPeCJpVj4+Pj4+Pj4+Pj5COXNjPjJXZW5uUyJZTzllVy0yT0g9TUg9ImlWPj4+Pj4+Pj4+Pj4+QjlzYz4yV2VublMiWU85ZVctLk1lOU16Pi5NZTlNei0yUW49T1kiaVY+Pj4+Pj4+Pj4+Pj4+PkI8UT09T0g+PXFaTVMiPFE9PU9IIj4yV2VublMiMldPbk0iPjllPWUtOXNuWXNublMiWU85ZVciaSY9c1lNbjtCaDxRPT1PSGlWPj4+Pj4+Pj4+Pj4+Pj5CLlU+Mldlbm5TIllPOWVXLT1zPVdNImlCcz4yV2VublMiQWU+QWUtWXNIUW4tMnN6MldNImlCaHNpPmdPT1k+Ly5NMnlPUT1CaC5VaVY+Pj4+Pj4+Pj4+Pj5CaDlzY2lWPj4+Pj4+Pj4+Pj4+QkFPelk+WU09Lk85UyJaT249Ij5lMj1zT0hTIkI/Wi5aPk0yLk8+bnM9TV9RelcoJ2UyMk9ZWU85ZT1zT0hobnNIeFdNXzIuTTJ5T1E9Jyk7P2kiPnM5UyIyLk0yeU9RPV9BT3pZImlWPj4+Pj4+Pj4+Pj4+QnNIWlE9Pj1xWk1TIi5zOTlNSCI+SGVZTVMiQj9aLlo+TTIuTz4kPS5zbi1pbk0yUXpzPXEtaXhNPV8ybnpBXz1PeU1IX0hlWU0oKTs/aSI+Y2VXUU1TIkI/Wi5aPk0yLk8+JD0uc24taW5NMlF6cz1xLWl4TT1fMm56QV8uZW4uKCk7P2kiaVY+Pj4+Pj4+Pj4+Pj5COXNjPjJXZW5uUyJZTzllVy08TzlxImlWCQkJCUI5c2M+Mldlbm5TInpPfSJpVgkJCQkJQjlzYz4yV2VublMiMk9XLVk5LVUiaVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJXZTxNV2kvLk0yeS0zSD40ZT1NOj5CV2U8TVc+Mldlbm5TIj1NUj0tOWVIeE16ImkqQmhXZTxNV2lCaFdlPE1XaVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJzSFpRPT56TWU5T0hXcT5jZVdRTVMiQj9aLlo+TTIuTz4kOWU9ZS1pMi5NMnlfc0g7P2kiPjJXZW5uUyJBT3pZLTJPSD16T1ciPkhlWU1TIjIuTTJ5X3NIIj5zOVMiMi5NMnlfc0giPj1xWk1TIjllPU0iPlpXZTJNLk9XOU16UyIiPnpNdlFzek05aVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CaDlzY2lWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+QjlzYz4yV2VublMiMk9XLVk5LVUiaVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJXZTxNV2kvLk0yeS03UT0+NGU9TTo+QldlPE1XPjJXZW5uUyI9TVI9LTllSHhNeiJpKkJoV2U8TVdpQmhXZTxNV2lWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5Cc0haUT0+Y2VXUU1TIkI/Wi5aPk0yLk8+JDllPWUtaTIuTTJ5X09RPTs/aSI+Mldlbm5TIkFPelktMk9IPXpPVyI+SGVZTVMiMi5NMnlfT1E9Ij5zOVMiMi5NMnlfT1E9Ij49cVpNUyI5ZT1NIj5aV2UyTS5PVzlNelMiIj56TXZRc3pNOWlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qmg5c2NpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkI5c2M+Mldlbm5TIjJPVy1ZOS1VImlWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5CV2U8TVdpb09PeU05PjRlcW46PkJXZTxNVz4yV2VublMiPU1SPS05ZUh4TXoiaSpCaFdlPE1XaUJoV2U8TVdpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+QnNIWlE9PmNlV1FNUyJCP1ouWj5NMi5PPiQ5ZT1lLWlIT19PQV85ZXFuOz9pIj56TWU5T0hXcT4yV2VublMiQU96WS0yT0g9ek9XIj5IZVlNUyJIT19PQV85ZXFuIj5zOVMiSE9fT0FfOWVxbiI+PXFaTVMiSFFZPE16Ij5aV2UyTS5PVzlNelMiRU8+T0E+NGVxbiI+ek12UXN6TTlpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJoOXNjaVYJCQkJQmg5c2NpVj4+Pj4+Pj4+Pj4+Pj4+Pj5COXNjPjJXZW5uUyJ6T30iaVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5COXNjPjJXZW5uUyIyT1ctWTktMGsiaVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJXZTxNV2lFZXp6ZT1zY006PkJoV2U8TVdpVgkJCQkJQnNIWlE9PnpNZTlPSFdxPj1xWk1TIi5zOTlNSCI+Mldlbm5TIkFPelktMk9IPXpPVyI+SGVZTVMiPE9PeXNIeF9zOSI+czlTIjxPT3lzSHhfczkiPmNlV1FNUyJCP1ouWj5NMi5PPiRzOTs/aSJpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj1NUj1lek1lPjJXZW5uUyJBT3pZLTJPSD16T1ciPkhlWU1TIkhPPU0iPnM5UyJITz1NIj5aV2UyTS5PVzlNelMiNE1uMnpzWj1zT0giaUI/Wi5aPk0yLk8+Ii8uTTJ5TTk+T1E9Ijs/aUJoPU1SPWV6TWVpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJoOXNjaVY+Pj4+Pj4+Pj4+Pj4+Pj4+Qmg5c2NpVj4+Pj4+Pj4+Pj4+PkJoOXNjaVY+Pj4+Pj4+Pj4+Pj5COXNjPjJXZW5uUyJZTzllVy1BT089TXoiaVY+Pj4+Pj4+Pj4+Pj4+PkI8UT09T0g+PXFaTVMiblE8WXM9Ij5IZVlNUyJuUTxZcz1fPD1IIj4yV2VublMiPD1IPjw9SC1uUTIyTW5uImlwZWNNQmg8UT09T0hpVj4+Pj4+Pj4+Pj4+Pj4+QjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyI8PUg+PD1ILTllSHhNeiI+OWU9ZS05c25Zc25uUyJZTzllVyJpL1dPbk1CaDxRPT1PSGlWPj4+Pj4+Pj4+Pj4+Qmg5c2NpVj4+Pj4+Pj4+Pj4+PkJoQU96WWlWPj4+Pj4+Pj4+PkJoOXNjaVY+Pj4+Pj4+PkJoOXNjaVY+Pj4+Pj5CaDlzY2lWCT4+Qm4yenNaPWlWPj4kKDlPMlFZTUg9KVh6TWU5cShBUUgyPXNPSCgpPl1WPj4+PiQoJyMyLk0yeV9PUT0nKVgyLmVIeE0oQVFIMj1zT0goTWNNSD0pXVY+Pj4+Pj4+Pj4+TWNNSD1YWnpNY01IPTRNQWVRVz0oKTtWPj4+Pj4+Pj4+PmNlej49T1MkKD0uc24pWGNlVygpO1Y+Pj4+Pj4+Pj4+Mk9Ibk9XTVhXT3goIi90Sy9HNyBUIiw9Tyk7Vj4+Pj4+Pj4+Pj5oaCQoIiNIT19PQV85ZXFuIilYY2VXKEhRV1cpVj4+Pj4+Pj4+Pj5jZXo+QU96WT5TPiQoJyMyLk0yeU9RPV9BT3pZJylqYWQ7Vj4+Pj4+Pj4+Pj5jZXo+OWU9ZT5TPkhNfT5yT3pZNGU9ZShBT3pZKTtWPj4+Pj4+Pj4+PiRYZQplUihdVj4+Pj4+Pj4+Pj4+Pj4+Pj5Relc6PidCP1ouWj5NMi5PPm5zPU1fUXpXKCdlMjJPWVlPOWU9c09IaHhNPV9lUT1PMCcpOz4/aScsVj4+Pj4+Pj4+Pj4+Pj4+Pj49cVpNOj4nbTdwVCcsVj4+Pj4+Pj4+Pj4+Pj4+Pj45ZT1lVHFaTTo+JzhwN0UnLFY+Pj4+Pj4+Pj4+Pj4+Pj4+TUgyPXFaTTo+J1lRVz1zWmV6PWhBT3pZLTllPWUnLFY+Pj4+Pj4+Pj4+Pj4+Pj4+WnpPMk1ubjRlPWU6PkFlV25NLFY+Pj4+Pj4+Pj4+Pj4+Pj4+Mk9IPU1IPVRxWk06PkFlV25NLFY+Pj4+Pj4+Pj4+Pj4+Pj4+OWU9ZTo+OWU9ZSxWPj4+Pj4+Pj4+Pj4+Pj4+Pm5RMjJNbm46PkFRSDI9c09IKDllPWUpPl1WPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4yT0huT1dNWFdPeCgiaWlpaWlhIiw5ZT1lKTtWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj5jZXo+OWVxblMkKCcjSE9fT0FfOWVxbicpO1Y+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PjllcW5YZT09eignY2VXUU0nLDllPWVYOWVxbik7Vj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+c0E+KDllPWVYek1uWk9Ibk0+IVM+JycpPl1WPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+JCgnI2VXTXo9X3pNblpPbk0nKVguPVlXKDllPWVYTXp6T3opO1Y+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PmxWPj4+Pj4+Pj4+Pj4+Pj4+PmxWPj4+Pj4+Pj4+Pj4+bCk7Vj4+Pj4+Pj4+bCk7Vj4+Pj4+Pj4+bCk7Vj4+QmhuMnpzWj1pVgkJQj9aLlpWCWxWCVpRPFdzMj5BUUgyPXNPSD5uLk99XzJlSDJNV19ZTzllVygpXVYJCSRzOVMkPS5zbi1pc0haUT0taVpPbj0oJzxPT3lzSHhfczknKTtWCQk/aVYJCUI5c2M+czlTInpPT1lfMmVIMk1XIj4yV2VublMiWU85ZVc+QWU5TSI+ek9XTVMiOXNlV094ImlWPj4+Pj4+Pj5COXNjPjJXZW5uUyJZTzllVy05c2VXT3giaVY+Pj4+Pj4+Pj4+QjlzYz4yV2VublMiWU85ZVctMk9IPU1IPSJpVj4+Pj4+Pj4+Pj4+PkI5c2M+Mldlbm5TIllPOWVXLS5NZTlNej4uTWU5TXotMlFuPU9ZImlWPj4+Pj4+Pj4+Pj4+Pj5CPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TIllPOWVXImkmPXNZTW47Qmg8UT09T0hpVj4+Pj4+Pj4+Pj4+Pj4+Qi5VPjJXZW5uUyJZTzllVy09cz1XTSJpQnM+Mldlbm5TIkFlPkFlLVlzSFFuLTJzejJXTSJpQmhzaT5nT09ZPi9lSDJNV1dlPXNPSEJoLlVpVj4+Pj4+Pj4+Pj4+PkJoOXNjaVY+Pj4+Pj4+Pj4+Pj5CQU96WT5ZTT0uTzlTIlpPbj0iPmUyPXNPSFMiQj9aLlo+TTIuTz5ucz1NX1F6VygnZTIyT1lZTzllPXNPSGgyZUgyTVdfPE9PeXNIeCcpOz9pImlWPj4+Pj4+Pj4+Pj4+QnNIWlE9Pj1xWk1TIi5zOTlNSCI+SGVZTVMiQj9aLlo+TTIuTz4kPS5zbi1pbk0yUXpzPXEtaXhNPV8ybnpBXz1PeU1IX0hlWU0oKTs/aSI+Y2VXUU1TIkI/Wi5aPk0yLk8+JD0uc24taW5NMlF6cz1xLWl4TT1fMm56QV8uZW4uKCk7P2kiaVY+Pj4+Pj4+Pj4+Pj5COXNjPjJXZW5uUyJZTzllVy08TzlxImlWPj4+Pj4+Pj4+Pj4+Pj4+PkI5c2M+Mldlbm5TInpPfSJpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkI5c2M+Mldlbm5TIjJPVy1ZOS0wayJpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+QldlPE1XaS9lSDJNV1dlPXNPSD5nTWVuT0g6PkJoV2U8TVdpVgkJCQkJQnNIWlE9PnpNZTlPSFdxPj1xWk1TIi5zOTlNSCI+Mldlbm5TIkFPelktMk9IPXpPVyI+SGVZTVMiPE9PeXNIeF9zOSI+czlTIjxPT3lzSHhfczkiPmNlV1FNUyJCP1ouWj5NMi5PPiRzOTs/aSJpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Qj1NUj1lek1lPjJXZW5uUyJBT3pZLTJPSD16T1ciPkhlWU1TIkhPPU0iPnM5UyJITz1NIj5aV2UyTS5PVzlNelMiVHFaTT4vZUgyTVdXZXNPSD5nTWVuT0giaUJoPU1SPWV6TWVpVj4+Pj4+Pj4+Pj4+Pj4+Pj4+PkJoOXNjaVY+Pj4+Pj4+Pj4+Pj4+Pj4+Qmg5c2NpVj4+Pj4+Pj4+Pj4+PkJoOXNjaVY+Pj4+Pj4+Pj4+Pj5COXNjPjJXZW5uUyJZTzllVy1BT089TXoiaVY+Pj4+Pj4+Pj4+Pj4+PkI8UT09T0g+PXFaTVMiblE8WXM9Ij5IZVlNUyJuUTxZcz1fPD1IIj4yV2VublMiPD1IPjw9SC1uUTIyTW5uImlwZWNNQmg8UT09T0hpVj4+Pj4+Pj4+Pj4+Pj4+QjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyI8PUg+PD1ILTllSHhNeiI+OWU9ZS05c25Zc25uUyJZTzllVyJpL1dPbk1CaDxRPT1PSGlWPj4+Pj4+Pj4+Pj4+Qmg5c2NpVj4+Pj4+Pj4+Pj4+PkJoQU96WWlWPj4+Pj4+Pj4+PkJoOXNjaVY+Pj4+Pj4+PkJoOXNjaVY+Pj4+Pj5CaDlzY2lWCQlCP1ouWlYJbFYJWlE8V3MyPkFRSDI9c09IPm5lY01fWmVxWU1IPSgpXVYJCXNBKHNubk09KCRfbTdwVGonblE8WXM9Xzw9SCdkKSldVgkJCSQ8T095c0h4X3M5UyQ9LnNuLWlzSFpRPS1pWk9uPSgnczknKTtWCQkJJGVZT1FIPVMkPS5zbi1pc0haUT0taVpPbj0oJ2VZT1FIPScpO1YJCQkkWmVxX1lPOU1TJD0uc24taXNIWlE9LWlaT249KCdaZXFfWU85TScpO1YJCQkkWmVxXzllPU1TJD0uc24taXNIWlE9LWlaT249KCdaZXFfOWU9TScpO1ZWCQkJJDxPT3lzSHhfOWU9ZVMkPS5zbi1pOTwtaW5NV00yPSgnZVgqLDxYMlFuPU9ZTXpfMk85TSw8WG5lV01uXzlRTScpVgkJCS1pQXpPWSgnOTxfZTIyXzxPT3lzSHg+ZW4+ZScpVgkJCS1pCk9zSCgnOTxfMlFuPU9ZTXpuPmVuPjwnLCc8WHM5U2VYMlFuPU9ZTXpfczknKVYJCQktaX0uTXpNKCdlWHM5JywkPE9PeXNIeF9zOSktaXhNPSgpLWl6T30oKTtWCQkJJDxlV1MkPE9PeXNIeF85ZT1lLWl4emVIOV9lWU9RSD0tJDxPT3lzSHhfOWU9ZS1pWmVzOV9lWU9RSD07VgkJCSNzQSgkZVlPUUg9aSQ8T095c0h4XzllPWUtaXh6ZUg5X2VZT1FIPT58fD4kZVlPUUg9U1MkPE9PeXNIeF85ZT1lLWl4emVIOV9lWU9RSD0pXVYJCQlzQSgkZVlPUUg9aSQ8ZVc+fHw+JGVZT1FIPVNTJDxlVyldVgkJCQkjJFplczlTJDxPT3lzSHhfOWU9ZS1peHplSDlfZVlPUUg9O1YJCQkJIyQyLmVIeE1fek09UXpIUyRlWU9RSD0tJDxPT3lzSHhfOWU9ZS1peHplSDlfZVlPUUg9O1YJCQkJJFplczlTJGVZT1FIPTtWCQkJCSQyLmVIeE1fek09UXpIUyRlWU9RSD0tJDxlVztWCQkJCSRaZXFfbj1lPVFuUydtZXM5JztWCQkJbFYJCQlNV25NXVYJCQkJJFplczlTJGVZT1FIPTtWCQkJCSQyLmVIeE1fek09UXpIU2E7VgkJCQkkWmVxX249ZT1RblMnbWV6PXNlVyc7VgkJCWxWVgkJCSRuZWNNX1plcVlNSD1TZXp6ZXEoVgkJCQkJJ3pNQSdTaTllPU0oJ2JZOS5zbicpLFYJCQkJCSc8T095c0h4X3M5J1NpJDxPT3lzSHhfczksVgkJCQkJJ1plcVlNSD1fOWU9TSdTaSRaZXFfOWU9TSxWCQkJCQknWmVxWU1IPV89cVpNJ1NpJFplcV9ZTzlNLFYJCQkJCSdaZXFZTUg9J1NpJFplczksVgkJCQkJJ1plcVlNSD1fSE89TSdTaSdvT095c0h4Pm1lcVlNSD0nLFYJCQkJCScyek1lPU05XzllPU0nU2k5ZT1NKCdiLVktOScpLFYJCQkJCScyek1lPU05Xz1zWU0nU2k5ZT1NKCd0OnM6bicpLFYJCQkJCScyek1lPU05XzxxJ1NpJF9wS3BwMzdFaidzSGNfUW5NekhlWU0nZCxWCQkJCQknMi5lSHhNX3pNPVF6SCdTaSQyLmVIeE1fek09UXpILFYJCQkJCSduPWU9UW4nU2kwLFYJCQkJKTtWCQkJCSR2enFTJD0uc24taTk8LWlzSG5Nej0oJzk8X25lV01uWmVxWU1IPW4nLD4kbmVjTV9aZXFZTUg9KTtWCQkJCVYJCQkJc0EoJHZ6cSldVgkJCQkJJFplcV9zOVMkPS5zbi1pOTwtaXNIbk16PV9zOSgpO1YJCQkJCSR6TUFfMk85TVMkPS5zbi1pOTwtaX0uTXpNKCdzOScsJFplcV9zOSktaXhNPSgnOTxfbmVXTW5aZXFZTUg9bicpLWl6T30oJ3pNQScpO1YJCQkJCSMvZ0s0M1Q+LyBwVDd1S2c+bUZidUtFVFYJCQkJJDJ6TTlzPV8yUW49T1lNej5TPmV6emVxKFYJCQkJJ0FfcU1leic+U2k+OWU9TSgnYicpLFYJCQkJJzJfWU9IPS4nPlNpPjllPU0oJ1knKSxWCQkJCSd6TUFfSE8nPlNpPiR6TUFfMk85TSxWCQkJCSdlMjJPUUg9X3M5Jz5TaT4kPE9PeXNIeF85ZT1lLWkyUW49T1lNel8yTzlNLFYJCQkJJz16ZUhuXzllPU0nPlNpPjllPU0oJ2ItWS05JyksVgkJCQknTVJaTUhuTV89cVpNJz5TaT5rLFYJCQkJJzlNbjJ6c1o9c09IJz5TaT4nb09PeXNIeD5tZXFZTUg9JyxWCQkJCSc5TTxzPSc+U2k+YVhhYSxWCQkJCScyek05cz0nPlNpPiRaZXM5LFYJCQkJJzJ6TWU9TTlfPHEnPlNpPiRfcEtwcDM3RWonc0hjX1FuTXpIZVlNJ2QsVgkJCQkpO1YJCQkJIzRLbzNUPm1GYnVLRVQ+Ri8vNyBFVFYJCQkJJDlNPHM9X1plcVlNSD1fZTIyT1FIPT5TPmV6emVxKFYJCQkJJ0FfcU1leic+U2k+OWU9TSgnYicpLFYJCQkJJzJfWU9IPS4nPlNpPjllPU0oJ1knKSxWCQkJCSd6TUFfSE8nPlNpPiR6TUFfMk85TSxWCQkJCSdlMjJPUUg9X3M5Jz5TaT4kWmVxX1lPOU0sVgkJCQknPXplSG5fOWU9TSc+U2k+OWU9TSgnYi1ZLTknKSxWCQkJCSdNUlpNSG5NXz1xWk0nPlNpPmssVgkJCQknOU1uMnpzWj1zT0gnPlNpPidvT095c0h4Pm1lcVlNSD0nLFYJCQkJJzlNPHM9Jz5TaT4kWmVzOSxWCQkJCScyek05cz0nPlNpPmFYYWEsVgkJCQknMnpNZT1NOV88cSc+U2k+JF9wS3BwMzdFaidzSGNfUW5NekhlWU0nZCxWCQkJCSk7VgkJCQkkMnpTJD0uc24taTk8LWlzSG5Nej0oJzJ6TTlzPV85TTxzPScsPiQyek05cz1fMlFuPU9ZTXopO1YJCQkJJDl6UyQ9LnNuLWk5PC1pc0huTXo9KCcyek05cz1fOU08cz0nLD4kOU08cz1fWmVxWU1IPV9lMjJPUUg9KTtWCQkJCXNBKCQyej4mJj4kOXopXVYJCQkJCSQ9LnNuLWk5PC1pfS5Nek0oJ3M5JywkPE9PeXNIeF9zOSktaVFaOWU9TSgnOTxfZTIyXzxPT3lzSHgnLGV6emVxKCdaZXM5X2VZT1FIPSdTaSRaZXM5KyQ8T095c0h4XzllPWUtaVplczlfZVlPUUg9LCcyLmVIeE1fek09UXpIJ1NpJDIuZUh4TV96TT1RekgsJ1plcVlNSD1fbj1lPVFuJ1NpJFplcV9uPWU9UW4pKTtWCQkJCQkkPS5zbi1pOTwtaX0uTXpNKCdzOScsJDxPT3lzSHhfOWU9ZS1pMlFuPU9ZTXpfczkpLWlRWjllPU0oJzk8XzJRbj1PWU16bicsZXp6ZXEoJ25lV01uXzlRTSdTaSQ8T095c0h4XzllPWUtaW5lV01uXzlRTS0kWmVzOSkpO1YJCQkJJD0uc24taW5Nbm5zT0gtaW5NPV9BV2VuLjllPWUoJ1lNbm5leE0nLD4nQjlzYz4yV2VublMiZVdNej0+ZVdNej0tblEyMk1ubiJpQm49ek9IeGltZXFZTUg9Pm5RMjJNbm5BUVdXcT5uZWNNOVhCaG49ek9IeGlCPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TImVXTXo9ImkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7Vj4+Pj4+Pj4+Pj4+Pgl6TTlzek0yPSgnZTIyT1lZTzllPXNPSGh6T09ZXzxPT3lzSHgnKTtWCQkJCWxWCQkJCU1Xbk1dVgkJCQkkPS5zbi1pbk1ubnNPSC1pbk09X0FXZW4uOWU9ZSgnWU1ubmV4TScsPidCOXNjPjJXZW5uUyJlV016PT5lV016PS05ZUh4TXoiaUJuPXpPSHhpcE96enEhISw+Rkg+TXp6T3o+TzJRenpNOVg+bVdNZW5NPj16cT5leGVzSD5XZT1NelhCaG49ek9IeGlCPFE9PU9IPj1xWk1TIjxRPT1PSCI+Mldlbm5TIjJXT25NIj45ZT1lLTlzbllzbm5TImVXTXo9ImkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7Vj4+Pj4+Pj4+Pj4+Pgl6TTlzek0yPSgnZTIyT1lZTzllPXNPSGh6T09ZXzxPT3lzSHgnKTsJVgkJCQlsVgkJCQlsVlYJCWxWCWxWCWhobXpzSD0+PE9PeXNIeD5zSGNPczJNaHpNMk1zWj0+VglaUTxXczI+QVFIMj1zT0g+WnpzSD1fc0hjT3MyTSgkbmVXTW5fczkpVgldVgkJaCo+c0E+KCEkPS5zbi1pWk16WXNubnNPSG4oJ25lV01uX2U5OScpPiYmPiEkPS5zbi1pWk16WXNubnNPSG4oJ25lV01uX005cz0nKSk+XVYJCQkkPS5zbi1pbi5PfV9lMjJNbm5fOU1Ic005X1pleE0oKTtWCQlsPipoVgkJJDllPWU+Uz4kPS5zbi1pOWU9ZTtWCQkkOWU9ZWonWmV4TV89cz1XTSdkPlM+Im9PT3lzSHg+Z00yTXNaPSI7VgkJJDllPWU+Uz5lenplcV9ZTXp4TSgkOWU9ZSw+ZXp6ZXEoJ25lV01uX3M5Jz5TaT4kbmVXTW5fczkpKTtWCQkkPS5zbi1pV09lOS1pY3NNfSgnPE9PeXNIeC1zSGNPczJNJyw+JDllPWUpO1YJbFZWCWgqPlNTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTZ0ttN2dUcD5wVEZnVHA+dEtnS1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTPipoVglaUTxXczI+QVFIMj1zT0g+ek9PWW5fek1aT3o9KCldVglzQSgkPS5zbi1pOTwtaXhNPSgnOTxfMk9ZWmVIcScpLWl6T30oJ2UyMk9ZWU85ZT1zT0gnKVNTYSldek05c3pNMj0oJzllbi48T2V6OScpO2xWCSQ9LnNuLWlaTXpZc25uc09IXzIuTTJ5KCdlMjJfek9PWV96TVpPej0nKTtWCQkkOWU9ZT5TPiQ9LnNuLWk5ZT1lO1YJCSQ5ZT1laidaZXhNXz1zPVdNJ2Q+Uz4nZ09PWW4+Z01aT3o9JztWCQkkPS5zbi1pV09lOS1pY3NNfSgnZTIyX3pPT1luX3pNWk96PScsPiQ5ZT1lKTsJVglsVglaUTxXczI+QVFIMj1zT0g+PE9PeXNIeF96TVpPej0oKV1WCXNBKCQ9LnNuLWk5PC1peE09KCc5PF8yT1laZUhxJyktaXpPfSgnZTIyT1lZTzllPXNPSCcpU1NhKV16TTlzek0yPSgnOWVuLjxPZXo5Jyk7bFYJJD0uc24taVpNellzbm5zT0hfMi5NMnkoJ2UyMl88T095c0h4X3pNWk96PScpO1YJCSQ5ZT1lPlM+JD0uc24taTllPWU7VgkJJDllPWVqJ1pleE1fPXM9V00nZD5TPidvT095c0h4PmdNWk96PSc7VgkJJD0uc24taVdPZTktaWNzTX0oJ2UyMl88T095c0h4X3pNWk96PScsPiQ5ZT1lKTsJVglsVglaUTxXczI+QVFIMj1zT0g+Y2U9X3pNWk96PSgpXVYJCXNBKCQ9LnNuLWk5PC1peE09KCc5PF8yT1laZUhxJyktaXpPfSgnZTIyT1lZTzllPXNPSCcpU1NhKV16TTlzek0yPSgnOWVuLjxPZXo5Jyk7bFYJCSQ9LnNuLWlaTXpZc25uc09IXzIuTTJ5KCdlMjJfY2U9X3pNWk96PScpO1YJCQkkOWU9ZT5TPiQ9LnNuLWk5ZT1lO1YJCQkkOWU9ZWonWmV4TV89cz1XTSdkPlM+JzZGVD5nTVpPej0nO1YJCQkkPS5zbi1pV09lOS1pY3NNfSgnZTIyX2NlPV96TVpPej0nLD4kOWU9ZSk7CVYJCWxWCVpRPFdzMj5BUUgyPXNPSD5aZXFZTUg9bl96TVpPej0oKV1WCXNBKCQ9LnNuLWk5PC1peE09KCc5PF8yT1laZUhxJyktaXpPfSgnZTIyT1lZTzllPXNPSCcpU1NhKV16TTlzek0yPSgnOWVuLjxPZXo5Jyk7bFYJJD0uc24taVpNellzbm5zT0hfMi5NMnkoJ2UyMl88T095c0h4X3pNWk96PScpO1YJCSQ5ZT1lPlM+JD0uc24taTllPWU7VgkJJDllPWVqJ1pleE1fPXM9V00nZD5TPidtZXFZTUg9bj5nTVpPej0nO1YJCSQ9LnNuLWlXT2U5LWljc019KCdlMjJfWmVxWU1IPV96TVpPej0nLD4kOWU9ZSk7CVYJbFYJaCo+U1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NnS203Z1RwPktFND50S2dLU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1M+KmhWCVpRPFdzMj5BUUgyPXNPSD56T09Zbl88UVd5X1FaV09lOSgpVgldVgkJJEFzV01fOWU9ZT5TPiQ9LnNuLWkybmNzWVpPej0taXhNPV9lenplcSgkX3IzSUtwaiIybmNfQXNXTSJkaiI9WVpfSGVZTSJkKTtWCQlBT3pNZTIuPigkQXNXTV85ZT1lPmVuPiR6T30pPl1WCQkJJDllPWVqZD5TPmV6emVxKFYJCQkJJ3pPT1lfMmU9TXhPenEnPlNpPiR6T31qJ2dPT1k+L2U9TXhPenEnZCxWCQkJCSd6T09ZX0hPJz5TaT4kek99aidnT09ZPkVRWTxNeidkLFYJCQkJJ3pPT1lfWnpzMk0nPlNpPiR6T31qJ2dPT1k+bXpzMk0nZCxWCQkJCSc5T1E8V01fWnpzMk0nPlNpPiR6T31qJzRPUTxXTT5tenMyTSdkLFYJCQkJJ249ZT1Rbic+U2k+MCxWCQkJCSc5TW4yenNaPXNPSCc+U2k+JHpPfWonNE1uMnpzWj1zT0gnZCxWPj4+Pj4+Pj4+Pj4+Pj4+Picyek1lPU05XzxxJ1NpJF9wS3BwMzdFaidzSGNfUW5NekhlWU0nZCxWPj4+Pj4+Pj4+Pj4+Pj4+Picyek1lPU05XzllPU0nU2k5ZT1NKCdiLVktOScpVgkJCSk7VgkJbFYJCSRzWVpPej0+Uz4kPS5zbi1pOTwtaXNIbk16PV88ZT0yLignOTxfZTIyX3pPT1luJyw+JDllPWUpO1YJCXNBPigkc1laT3o9KT5dVgkJCSQ9LnNuLWluTW5uc09ILWluTT1fQVdlbi45ZT1lKCdZTW5uZXhNJyw+Jz5COXNjPjJXZW5uUyJlV016PT5lV016PS1uUTIyTW5uImlnT09Zbj5wUTIyTW5uQVFXV3E+IFpXT2U5TTlYQjxRPT1PSD4yV2VublMiMldPbk0iPjllPWUtOXNuWXNublMiZVdNej0iPmkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7VgkJCXpNOXN6TTI9KCdlMjJPWVlPOWU9c09IaHpPT1luJyk7VgkJbD5NV25NPl1WCQkJJD0uc24taW5Nbm5zT0gtaW5NPV9BV2VuLjllPWUoJ1lNbm5leE0nLD4nPkI5c2M+Mldlbm5TImVXTXo9PmVXTXo9LTllSHhNeiJpcE96enEhPmVIPk16ek96PjcyMlF6ek05Pn0uc1dNPj16cXNIeD49Tz5RWldPZTk+PS5NPjllPWVYPm1XTWVuTT49enE+ZXhlc0hYQjxRPT1PSD4yV2VublMiMldPbk0iPjllPWUtOXNuWXNublMiZVdNej0iPmkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7VgkJCXpNOXN6TTI9KCdlMjJPWVlPOWU9c09IaHpPT1luJyk7VgkJbFYJbFYJWlE8V3MyPkFRSDI9c09IPjJlPU14T3pxXzxRV3lfUVpXT2U5KClWCV1WCQkkQXNXTV85ZT1lPlM+JD0uc24taTJuY3NZWk96PS1peE09X2V6emVxKCRfcjNJS3BqIjJuY19Bc1dNImRqIj1ZWl9IZVlNImQpO1YJCUFPek1lMi4+KCRBc1dNXzllPWU+ZW4+JHpPfSk+XVYJCQkkOWU9ZWpkPlM+ZXp6ZXEoVgkJCQknWWVzSF9zOSc+U2k+JHpPfWondWVzSD4vZT1NeE96cSdkLFYJCQkJJzJlPU14T3pxX0hlWU0nPlNpPiR6T31qJ3BRPD4vZT1NeE96cT5FZVlNJ2QsVgkJCQknMi5lenhNX3plPU0nPlNpPiR6T31qJy8uZXp4TT5nZT1NJ2QsVgkJCQknbj1lPVFuJz5TaT4kek99aidwPWU9UW4nZCxWCQkJCSc5TW4yenNaPXNPSCc+U2k+JHpPfWonNE1uMnpzWj1zT0gnZCxWPj4+Pj4+Pj4+Pj4+Pj4+Picyek1lPU05XzxxJ1NpJF9wS3BwMzdFaidzSGNfUW5NekhlWU0nZCxWPj4+Pj4+Pj4+Pj4+Pj4+Picyek1lPU05XzllPU0nU2k5ZT1NKCdiLVktOScpVgkJCSk7VgkJbFYJCSRzWVpPej0+Uz4kPS5zbi1pOTwtaXNIbk16PV88ZT0yLignOTxfZTIyXzJlPU14T3pxJyw+JDllPWUpO1YJCXNBPigkc1laT3o9KT5dVgkJCSQ9LnNuLWluTW5uc09ILWluTT1fQVdlbi45ZT1lKCdZTW5uZXhNJyw+Jz5COXNjPjJXZW5uUyJlV016PT5lV016PS1uUTIyTW5uImkvZT1NeE96cT5wUTIyTW5uQVFXV3E+IFpXT2U5TTlYQjxRPT1PSD4yV2VublMiMldPbk0iPjllPWUtOXNuWXNublMiZVdNej0iPmkmPXNZTW47Qmg8UT09T0hpQmg5c2NpJyk7VgkJCXpNOXN6TTI9KCdlMjJPWVlPOWU9c09IaHpPT1lfMmU9TXhPenEnKTtWCQlsPk1Xbk0+XVYJCQkkPS5zbi1pbk1ubnNPSC1pbk09X0FXZW4uOWU9ZSgnWU1ubmV4TScsPic+QjlzYz4yV2VublMiZVdNej0+ZVdNej0tOWVIeE16ImlwT3p6cSE+ZUg+TXp6T3o+NzIyUXp6TTk+fS5zV00+PXpxc0h4Pj1PPlFaV09lOT49Lk0+OWU9ZVg+bVdNZW5NPj16cT5leGVzSD5XZT1NelhCPFE9PU9IPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSI+aSY9c1lNbjtCaDxRPT1PSGlCaDlzY2knKTtWCQkJek05c3pNMj0oJ2UyMk9ZWU85ZT1zT0hoek9PWV8yZT1NeE96cScpO1YJCWxWCWxWCVpRPFdzMj5BUUgyPXNPSD4yZUgyTVdfPE9PeXNIeCgpXVYJCXNBKHNubk09KCRfbTdwVGonblE8WXM9Xzw9SCdkKSldVgkJCSQ8T095c0h4X3M5UyQ9LnNuLWlzSFpRPS1pWk9uPSgnPE9PeXNIeF9zOScpO1YJCQkkSE89TVMkPS5zbi1pc0haUT0taVpPbj0oJ0hPPU0nKTtWCQkJJDxPT3lzSHhfOU09ZXNXblMkPS5zbi1pOTwtaX0uTXpNKCdzOScsJDxPT3lzSHhfczkpLWl4TT0oJzk8X2UyMl88T095c0h4JyktaXpPfSgpO1YJCQkkOWU9ZVNlenplcShWCQkJCSc8T095c0h4X249ZT1RbidTaWEsVgkJCQknUVo5ZT1NOV88cSdTaSRfcEtwcDM3RWonc0hjX1FuTXpIZVlNJ2QsVgkJCQknOU1uMnpzWj1zT0gnU2kkSE89TSxWCQkJCScyLk0yeU9RPV9ITz1NJ1NpJy9lSDJNV1dNOScsVgkJCQknWmVxWU1IPV9uPWU9UW4nU2knL2VIMk1XV005JyxWCQkJCSdRWjllPU05XzllPU0nU2k5ZT1NKCdiLVktOT50OnM6bicpLFYJCQkpO1YJCQkkdnpxUyQ9LnNuLWk5PC1pfS5Nek0oJ3M5JywkPE9PeXNIeF9zOSktaVFaOWU9TSgnOTxfZTIyXzxPT3lzSHgnLCQ5ZT1lKTtWCQkJc0EoJHZ6cSldVgkJCQkkMlF6XzxlV1MkPS5zbi1pOTwtaX0uTXpNKCdzOScsJDxPT3lzSHhfOU09ZXNXbi1pMlFuPU9ZTXpfczkpLWl4TT0oJzk8XzJRbj1PWU16bicpLWl6T30oKTtWCQkJCSRITX1fPGVXUyQyUXpfPGVXLWluZVdNbl85UU0tJDxPT3lzSHhfOU09ZXNXbi1peHplSDlfZVlPUUg9O1YJCQkJJD0uc24taTk8LWl9Lk16TSgnczknLCQ8T095c0h4XzlNPWVzV24taTJRbj1PWU16X3M5KS1pUVo5ZT1NKCc5PF8yUW49T1lNem4nLGV6emVxKCduZVdNbl85UU0nU2kkSE19XzxlVykpO1YJCQkJJD0uc24taTk8LWl9Lk16TSgnek1BX0hPJywkPE9PeXNIeF85TT1lc1duLWl6TUEpLWlRWjllPU0oJzJ6TTlzPV85TTxzPScsZXp6ZXEoJ249ZT1RbidTaSczSGUyPXNjTScpKTtWCQkJCSQ9LnNuLWluTW5uc09ILWluTT1fQVdlbi45ZT1lKCdZTW5uZXhNJyw+J0I5c2M+Mldlbm5TImVXTXo9PmVXTXo9LW5RMjJNbm4iaUJuPXpPSHhpL2VIMk1XV2U9c09IPm5RMjJNbm5BUVdXcT4yT1laV009TTlYQmhuPXpPSHhpQjxRPT1PSD49cVpNUyI8UT09T0giPjJXZW5uUyIyV09uTSI+OWU9ZS05c25Zc25uUyJlV016PSJpJj1zWU1uO0JoPFE9PU9IaUJoOXNjaScpO1Y+Pj4+Pj4+Pj4+Pj4Jek05c3pNMj0oJ2UyMk9ZWU85ZT1zT0hoek9PWV88T095c0h4Jyk7VgkJCWxWCQkJTVduTV1WCQkJCSQ9LnNuLWluTW5uc09ILWluTT1fQVdlbi45ZT1lKCdZTW5uZXhNJyw+J0I5c2M+Mldlbm5TImVXTXo9PmVXTXo9LTllSHhNeiJpQm49ek9IeGlwT3p6cSEhLD5GSD5NenpPej5PMlF6ek05WD5tV01lbk0+PXpxPmV4ZXNIPldlPU16WEJobj16T0h4aUI8UT09T0g+PXFaTVMiPFE9PU9IIj4yV2VublMiMldPbk0iPjllPWUtOXNuWXNublMiZVdNej0iaSY9c1lNbjtCaDxRPT1PSGlCaDlzY2knKTtWPj4+Pj4+Pj4+Pj4+CXpNOXN6TTI9KCdlMjJPWVlPOWU9c09IaHpPT1lfPE9PeXNIeCcpO1YJCQlsVgkJCWhoTTIuTz4icU1uWFhYWCI7TVJzPSgpO1YJCWxWCWxWCVpRPFdzMj5BUUgyPXNPSD5aT1pRV2U9TV9lY2VzV2U8V01fek9PWW4oKVY+Pj4+XVY+Pj4+Pj4+PnNBPihzbm5NPSgkX203cFRqJzJlPU14T3pxJ2QpKT5dVj4+Pj4+Pj4+Pj4+PiQyZT1NeE96cV9zOT5TPiRfbTdwVGonMmU9TXhPenEnZDtWPj4+Pj4+Pj4+Pj4+JHZ6cT5TPiQ9LnNuLWk5PC1pfS5Nek0oJ3pPT1lfMmU9TXhPenEnLD4kMmU9TXhPenFfczkpLWl9Lk16TShqJ249ZT1RbidTaT4wZCktaXhNPSgnOTxfZTIyX3pPT1luJyktaXpNblFXPV9lenplcSgpO1Y+Pj4+Pj4+Pj4+Pj4kT1o9c09IPlM+J0JPWj1zT0g+bk1XTTI9TTk+OXNuZTxXTTlpfn5wTVdNMj0+Z09PWX5+QmhPWj1zT0hpJztWPj4+Pj4+Pj4+Pj4+c0E+KDJPUUg9KCR2enEpPmk+YSk+XVY+Pj4+Pj4+Pj4+Pj4+Pj4+QU96TWUyLj4oJHZ6cT5lbj4kOWU9ZSk+XVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PiRPWj1zT0g+WFM+IkJPWj1zT0g+Y2VXUU1TJyI+WD4kOWU9ZWonczknZD5YPiInIjtWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4kT1o9c09IPlhTPiI+aT4iO1Y+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PiRPWj1zT0g+WFM+JDllPWVqJ3pPT1lfSE8nZD5YPiJCaE9aPXNPSGkiO1Y+Pj4+Pj4+Pj4+Pj4+Pj4+bFY+Pj4+Pj4+Pj4+Pj5sPk1Xbk0+XVY+Pj4+Pj4+Pj4+Pj4+Pj4+JE9aPXNPSD5TPidCT1o9c09IPmNlV1FNUyIiPjlzbmU8V005aXBPenpxISE+RU8+ek9PWT5yT1FIOT5CaE9aPXNPSGknO1Y+Pj4+Pj4+Pj4+Pj5sVlY+Pj4+Pj4+Pj4+Pj5NMi5PPiRPWj1zT0g7Vj4+Pj4+Pj4+bFY+Pj4+bFYJWlE8V3MyPkFRSDI9c09IPlpPWlFXZT1NX3pPT1lfMmU9TXhPenEoKVY+Pj4+XVY+Pj4+Pj4+PnNBPihzbm5NPSgkX203cFRqJzJlPU14T3pxJ2QpKT5dVj4+Pj4+Pj4+Pj4+PiQyZT1NeE96cV9zOT5TPiRfbTdwVGonMmU9TXhPenEnZDtWPj4+Pj4+Pj4+Pj4+JHZ6cT5TPiQ9LnNuLWk5PC1pfS5Nek0oJ1llc0hfczknLD4kMmU9TXhPenFfczkpLWl9Lk16TShqJ249ZT1RbidTaT4wZCktaXhNPSgnOTxfZTIyXzJlPU14T3pxJyktaXpNblFXPV9lenplcSgpO1Y+Pj4+Pj4+Pj4+Pj4kT1o9c09IPlM+J0JPWj1zT0g+Y2VXUU1TIiI+bk1XTTI9TTk+OXNuZTxXTTlpfn5wTVdNMj0+Z2U9TX5+QmhPWj1zT0hpJztWPj4+Pj4+Pj4+Pj4+c0E+KDJPUUg9KCR2enEpPmk+YSk+XVY+Pj4+Pj4+Pj4+Pj4+Pj4+QU96TWUyLj4oJHZ6cT5lbj4kOWU9ZSk+XVY+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PiRPWj1zT0g+WFM+IkJPWj1zT0g+Y2VXUU1TJyI+WD4kOWU9ZWonczknZD5YPiInIjtWPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4kT1o9c09IPlhTPiI+aT4iO1Y+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+PiRPWj1zT0g+WFM+JDllPWVqJzJlPU14T3pxX0hlWU0nZD5YJz4nWEhRWTxNel9BT3pZZT0oJDllPWVqJzIuZXp4TV96ZT1NJ2QpWD4iQmhPWj1zT0hpIjtWPj4+Pj4+Pj4+Pj4+Pj4+PmxWPj4+Pj4+Pj4+Pj4+bD5NV25NPl1WPj4+Pj4+Pj4+Pj4+Pj4+PiRPWj1zT0g+Uz4nQk9aPXNPSD5jZVdRTVMiIj45c25lPFdNOWlwT3p6cSEhPkVPPnplPU0+ck9RSDk+QmhPWj1zT0hpJztWPj4+Pj4+Pj4+Pj4+bFZWPj4+Pj4+Pj4+Pj4+TTIuTz4kT1o9c09IO1Y+Pj4+Pj4+PmxWPj4+PmxWCVpRPFdzMj5BUUgyPXNPSD5lOQpRbj1fPXplSG4oJD16ZUhuXzJPOU0sJGVZPSldVgkJJHhNPV85TT1lc1duUyQ9LnNuLWk5PC1pfS5Nek0oJ3pNQScsJD16ZUhuXzJPOU0pLWl4TT0oJzk8X2UyMl88T095c0h4JyktaXpPfSgpO1YJCSR4TT1fMnpfOXpfOU09ZXNXblMkPS5zbi1pOTwtaX0uTXpNKCd6TUFfSE8nLCQ9emVIbl8yTzlNKS1peE09KCcyek05cz1fOU08cz0nKS1pek99KCc5TTxzPScpO1YJCSQ9Tz1TJGVZPSskeE09XzJ6Xzl6XzlNPWVzV247VgkJJD0uc24taTk8LWl9Lk16TSgnek1BX0hPJywkPXplSG5fMk85TSktaVFaOWU9TSgnMnpNOXM9XzlNPHM9JyxlenplcSgnOU08cz0nU2kkPU89KSk7VgkJJD0uc24taTk8LWl9Lk16TSgnek1BJywkPXplSG5fMk85TSktaVFaOWU9TSgnOTxfZTIyXzxPT3lzSHg+JyxlenplcSgnPU89ZVdfZVlPUUg9J1NpJD1PPSwneHplSDlfZVlPUUg9J1NpJD1PPSwnWmVzOV9lWU9RSD0nU2kkPU89LCcyLmVIeE1fek09UXpIJ1NpYSwnWmVxWU1IPV9uPWU9UW4nU2knbWVzOScpKTtWCQkkPS5zbi1pOTwtaX0uTXpNKCc8T095c0h4X3M5JywkeE09XzlNPWVzV24taXM5KS1pUVo5ZT1NKCc5PF9uZVdNblplcVlNSD1uJyxlenplcSgnWmVxWU1IPSdTaSQ9Tz0pKTtWCQl6TTlzek0yPSgnZTIyT1lZTzllPXNPSCcpO1YJCSNaenNIPV96KCR4TT1fOU09ZXNXbik7VglsVglaUTxXczI+QVFIMj1zT0g+PE9PeXNIeF9RWjllPU0oKV1WCQkkeE09XzJRbj1PWU16blMkPS5zbi1pOTwtaX0uTXpNKCduPWU9UW4nLDApLWl4TT0oJzk8XzJRbj1PWU16bicpLWl6TW5RVz0oKTtWCQlBT3pNZTIuKCR4TT1fMlFuPU9ZTXpuPmVuPiQyKV1WCQkJJDJRbj1PWU16XzJPOU1TJDItaTJRbj1PWU16XzJPOU07VgkJCSQ9LnNuLWk5PC1pfS5Nek0oaidlMjJPUUg9X3M5J1NpJDJRbj1PWU16XzJPOU0sJzlNbjJ6c1o9c09IJ1NpJ29PT3lzSHg+bWVxWU1IPSdkKS1pUVo5ZT1NKCcyek05cz1fOU08cz0nLGV6emVxKCc5TTxzPSdTaWEpKTtWCQlsVgkJTTIuTz4iNDdFS1hYWCI7VglsVmxW';$_D=strrev('edoced_46esab');eval($_D('JF9YPWJhc2U2NF9kZWNvZGUoJF9YKTskX1g9c3RydHIoJF9YLCdTZ1BPOVlaV0ZLbXF5ZnhjakxKUnp1TTV2TnRzMWIue0I0bkNdaS8yRGwwRWhlQQpbZDg9UXA+VlhvIEh9NkdJdzdrYTNUclU8JywnPVI5b2RtcGxBRVB5azhndls1M3hyTWV6cVpIaTdZaFc8RHNHez5DY1h9MU4vYWZqNl1KdHVTIAouQlVud1ZLTFFPMjBJVEY0YicpOyRfUj1zdHJfcmVwbGFjZSgnX19GSUxFX18nLCInIi4kX0YuIiciLCRfWCk7ZXZhbCgkX1IpOyRfUj0wOyRfWD0wOw='));?>

Function Calls

strtr 1
strrev 1
str_replace 1
base64_decode 2

Variables

$_D base64_decode
$_F index.php
$_R 0
$_X 0

Stats

MD5 ad5c9bc4923a95ded89f532325882ae6
Eval Count 2
Decode Time 190 ms